zoukankan      html  css  js  c++  java
  • 逆向-攻防世界-no-strings-attached

    看题目就知道查找不到关键字符串,为防止踩坑,strings命令查看,没有找到有用的字符串。IDA载入程序查找入口函数,

     main函数中有4个函数,经过分析判断authenticate()为关键函数,跟进其中,

    很明显,decrypt是关键处,接下来我们使用gdb调试,当然直接分析decrypt也很容易得出flag,但在此我们学习gdb-peda的使用,我也是第一次使用。。。。

    找到这个函数的地址0x08048658,然后下断点运行,运行的的命令是r。下断点:b *0x08048658。然后使用n运行,n是单步步过,s是单步步进。来到此处:

    我们发现ebx的值是9,正好是flag的开头,然后再看eax,0x39存在0x804cfd0。然后我们直接断点到这个函数后,跳过此函数,再查看0x804cfd0地址处:

    写python脚本,拿到flag。

    strings = [57, 52, 52, 55, 123, 121, 111, 117, 95, 97, 114, 101, 95, 97,
    110, 95, 105, 110, 116, 101, 114, 110, 97, 116, 105, 111, 110,
    97, 108, 95, 109, 121, 115, 116, 101, 114, 121, 125]
    tmp = ''
    for i in range(len(strings)):
    s = chr(strings[i])
    tmp += s
    print(tmp)
  • 相关阅读:
    C++调用web服务(java事例供参考)
    ASP.NET1.1与2.0如何引入MagicAjax (转载自http://hi.baidu.com/zzticzh)
    爱,在世界末日时
    Why Google Chrome is Multiprocess Architecture
    Chrome
    Code Reuse in Google Chrome
    Google V8 JavaScrit 研究(1)
    第一篇文章
    User Experience
    WPF
  • 原文地址:https://www.cnblogs.com/whitehawk/p/10753486.html
Copyright © 2011-2022 走看看