第三届“华为杯”XMan冬令营选拔赛

factor2base

题目文件

  • 打开后发现flag无法输入,使用apktool解包,在AndroidManifest.xml文件中的android:debuggable="true"并重新打包,签名。
  • 关键代码:
    在这里插入图片描述
  • check函数在库文件中,使用ida打开.so文件:
    第三届“华为杯”XMan冬令营选拔赛_第1张图片
  • 两个关键函数,分别判断password和flag是否正确;
  • factor函数用来判断password,是一个因数分解的问题,使用yafu对3191754164302148184239进行因数分解,得到两个质因数58663443281和54407889919,password任选其一即可。
    在这里插入图片描述
  • sub_8A0函数用来判断flag,是一个更改过码表的base64编码,M和N换了位置,0和9换了位置,将eG1hbntmYWM9NmJhczM0按照更改后的base64码表解码即可得到flag:xman{fact2bas3}。

ShellMaster

  • nc之后发现输入的命令中所有字母都被替换成了大写字母,没法进行任何操作。
  • 输入$0,表示使用当前shell,即可查看flag文件:
    第三届“华为杯”XMan冬令营选拔赛_第2张图片
    第三届“华为杯”XMan冬令营选拔赛_第3张图片

你可能感兴趣的:(CTF)