Hello, CTF
用idea打开,
找命令行输入的please input
点击F5跳转
看网上说,这一段的意思是:大致逻辑为将用户输入的字符单个与v13字串单个进行比对,然后判断是否输入正确,v13对应的字串是16进制,直接用python转换过来即可
于是我从他们写的writeup的python脚本复制了过来(没办法,我还没有学python,什么都看不懂)
s=bytes.fromhex("437261636b4d654a757374466f7246756e") print(s)
CrackMeJustForFun
最后的答案是CrackMeJustForFun
我随便改成了txt后缀,看到了
然后复制了过去9447{This_is_a_flag}
居然对了!
amazing
这里需要用到一个pyc文件反编译的工具,可以使用在线python 反编译
听说kali可以下载安装,用命令pip install uncompyle,用空自己去试试
得到这个XlNkVmtUI1MgXWBZXCFeKY+AaXNt
听他们说要反过来执行,搞了半天我也打不出代码,暂时放弃。
用idea打开
按F5进入伪代码
点击红框的,按确认键
按如图步骤进行,转换为ascill码。
得到解码,去试试DUTCTF{We1c0met0DUTCTF}
这个题目奇奇怪怪
先用idea打开试试
找flag一脸茫然
好了,先不写,下次写,现在没空,然后小结一下:
第一次写逆向的题目,感受是(1)每次打开都是这种命令行,可以检验你找的flag是否正确
(2)打开idea,找到main或者题目给的需要你输入什么,然后按F5进入到伪代码,看这个代码是如何得到flag的,可能falg就藏匿在里面的某个变量,然后你就开始找,在string里面搜索,或者什么样,感觉这个经常会用到python才可以看懂
(3)一般来说他的flag,不是什么falg{}这样子的格式,所以说找不到flag格式的也正正常,多做做说不定就可以碰巧蒙对,像我第二个直接用txt打开,有一个长一点的又比较像信息的直接正确了。
(4)感觉一般比较常用到的工具是idea(还好上课用过),python,好像说olldybge也能用,下次试试。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)