请选择 进入手机版 | 继续访问电脑版

初试逆向题SimpleRev

[复制链接]
尊悦模具刘沛昌 发表于 2020-12-31 19:24:47 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
老样子,先把文件放进ida内里,
先找到含有flag的可疑函数Decry(字符串搜索ALT+T即可):

发现使用Decry函数的是main函数(右边函数列表可以检察到),并按空格检察图形化格式,并对main举行分析φ(* ̄0 ̄) (Ps:此题解不分析main函数实在都无伤风雅)

发现flag就藏在Decry函数中,打开此函数:
由函数得知,text最终会和str2比力。
text是由key3和v9合成而来。
str2是由输入的flag+key加密得到。
key是由key1和src合成而来。


  • src和v9均可以用脚本得到:

    得出src为“SLCDN”,v9为“wodah”。
  • key3以及key1,均可以寻地点找到值,其分别为
    key3为“kills”,key1为“ADSFK”


  • 将text和key合成,得到如下:
    text为“killshadow”,key为“ADSFKNDCLS”
    这里为什么背面是反着拼接呢?听说是根据存储和读取的方式有关系,我也是背面flag怎么都不对,才发现的,(((φ(◎ロ◎;)φ)))
  • 下面一段函数,是将key化成小写:

  • 最后一段,就是根据背面的while循环,写一段脚本。
[code]#includeusing namespace std;const int MX=1e5+9;char text[11]="killshadow";char key[11]="adsfkndcls";char s[11];int main(){    for( int i=0 ; i
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )