存档

‘逆向调试’ 分类的存档

0ops CTF/0CTF writeup

2014年3月4日 18 条评论

0×00 0CTF
『第一届0ops信息安全技术挑战赛,即0ops Capture The Flag,以下简称0CTF。 0CTF由上海交通大学网络信息中心和上海市信息安全行业协会指导,由上海交通大学信息网络安全协会承办,是2014信息安全技能竞赛校园赛首站。0CTF注册与参赛地址为http://ctf.0ops.net。 比赛时间为北京时间2014年3月1日至2日,每天7时至23时,共32小时。』
看官方微博,这个比赛本来是面向上交校内的,就是校外可以做题但是不发奖,后来也给校外发奖[......]

继续阅读

分类: CTF, 逆向调试 标签: , , ,

[HDUSEC CTF]逆向分析彩蛋 Crack Hide

2013年11月26日 没有评论

这是HDUSEC CTF决赛的一道逆向题,最开始是不可见的,后来才公布。运行程序后需要在编辑框输入一个key,然后就是点击按钮了,界面很简陋,没有多看就用IDA分析了。
首先需要找到WinMain函数,这个不多说了。发现这是通过调用DialogBoxParam创建的对话框,那么可以去看窗口过程函数,稍微看一下发现字符串都是加密的,这个跟踪一下发现是通过XOR加密了(0×23),分析一下按钮点击的逻辑为:先获取用户的输入,然后经过3个函数的处理分别设置3个flag,只有都通过的时候才会弹[......]

继续阅读

[HDUSEC CTF]逆向分析Final

2013年11月12日 16 条评论

这是杭州电子科技大学信息安全竞赛(HDUSEC CTF)一个比较坑爹的题目,运行程序之后电脑就自动关了,如果直接在真机测试,那丢点数据也在所难免了,呵呵~ (注:本文是在比赛结束后发的
这个时候,你很可能拿起你的OD准备动手了,可是当你刚载入OD的那一瞬间,屏幕又黑了,看了看主机箱,擦,灯灭了,电脑有关了,这尼玛不是坑爹么!
别哭,开机继续搞!把程序载入PEiD,看,有TLS呢!当然啦,大概就猜TLS里面有坑爹的代码。这个TLS可以看也可以不看的,但是出于好奇心,我还是忍不住看了下。那还是用I[......]

继续阅读

逆向分析中快速定位Delphi TThread线程函数代码

2012年7月12日 2 条评论

Delphi中对线程的操作封装了一个TThread类,没接触过Delphi的人来说跟踪线程函数毫无头绪,即便是对CreateThread函数下断点,依然会遇到层层包装。

TThread是个抽象类,有个Execute的抽象方法。使用时需要自己派生出一个新类,并重载Execute方法,也就是Delphi的线程函数了。网上似乎也没有文章介绍如何跟踪Delphi线程函数,本人经过测试找到了一个看上去似乎很不错的快速定位方法。下面介绍本人的方法:

(1)在IDA的Functions Window中单击标题栏Function Name对函数名进行排序,然后就可以快速找到Classes::TThread:DoTerminate(void),双击来到函数;[......]

编译器对switch case结构的优化

2012年5月17日 12 条评论

在使用IDA分析Crack Me的时候,发现IDA对switch case结构的分析很是清晰,还发现了一个jump table for switch statement,也就是所谓的跳转表了,是编译器优化的结果。对于case分支的值是连续的那种,所有分支的跳转地址都会存入一个数组之中,然后通过case的值来寻址,如果值超出边界则直接跳到default分支所在地址。

如果case分支的值之间有一定的间隔,但是差距又不是很大,则会先生成一个数组(可能比较大),先通过switch的变量当做下标在一个数组中取得对应的值,然后把这个值当做下标再在跳转地址表中取得对应的地址。

如果case分支的部分值之间有一定的间隔,而又有一些分支的值没有规律,比如很大,且分布不均匀等。那么分布均匀的那一部分将采用两级跳转表的形式,而其他分支则采用简单的比较判断方式。

如果case分支值没有规律,则会采用二叉树查找的方式进行优化。
[......]

一个简单的CrackMe分析

2012年5月16日 没有评论

好久没有接触CrackMe,水平也一直很菜,汇编懂一点点,就是静不下心来看东西。这是crackmes.de上面找到的一个简单CrackMe程序,不过原始下载链接已经忘了,下载地址稍后随IDB文件一起给出。这个CrackMe比较有意思,不是通常的Username / Serial的检查,而是直接给出的两个文本框控件,当然具体填什么就需要自己逆向了。

程序名称:MyCrackIt.exe By DevAstatoR
加密信息:无花无壳,Win32 SDK编写
容易程度:★☆☆☆☆

大概分析:根据IDA对程序的反汇编信息,可以知道第一个框需要填入一个数字,通过SendMessage发送WM_GETTEXT的形式获取这个字符串并通过StrToInt()函数转化为数字,获取第二个文本框的信息同样是通过WM_GETTEXT来实现的,但是这个消息的值是通过第一个框的数字计算出来的,可以推出第一个框的字符串为131313(WM_消息的值参考WinUser.h头文件)。[......]

分类: 逆向调试 标签:

[转]CrackMe技术等级自测3级一个CrackMe分析

2012年3月10日 4 条评论

几天前EvilKnight在看雪发了一个CrackMe技术等级自测系统(http://bbs.pediy.com/showthread.php?t=147054),正好当时候我也看到了就下下来玩了下;说过了三级推荐6K的工作,不过由于我技术太菜,第三关完全不知道如何分析。其实我也一直想玩玩CrackMe(正好最近Crackmes.de)重新开放了,但还是感觉太浮躁了,另外业余时间也很少了,所以依旧很菜。今天看到论坛上有人发了分析报告,觉得分析得很不错,所以转了过来。

原帖地址:http://bbs.pediy.com/showthread.php?p=1052032
作者:cpfive
1. 用到的工具
peid 查壳, depends 查看导入函数, ida (idapython)静态分析[......]

PDF Password Remover v3.1绿色破解版

2012年3月9日 22 条评论

PDF Password Remover v3.1是一款用来破解PDF文件密码以及相关权限的软件。PDF文档以其完整的排版及显示特性,早已成为事实标准。很多资料保存为PDF 格式,便于分享,也利于保护版权,因为 PDF有一套完整的体系。PDF Password Remover v3.1就是PDF密码破解工具,针对那些设定用户密码,无法编辑或更改、打印、复制文字或图片,增加注释等等方面,它可以轻松的解除这些限制。
下载地址:PDF Password Remover v3.1.zip
解压密码:ww[......]

继续阅读

Win7下安装Metasploit

2012年2月26日 没有评论

如果在中文版本的Windows7上安装Metasploit,有可能会提示如下错误:
There has been an error.
Error running C:\metasploit/postgresql/bin/psql.exe -U postgres
-p 7337 -h localhost -c “ALERT USER postgres PASSWORD ‘*****’”
:psql: could not connect to server: Connection refused
(0x00002740D/10061)
Is the server running on host “localhost” and accepting
TCP/IP connections on port 7337?
据说是因为PostgreSQL的语言问题,通过将“控制面板->区域和语言->格式”设置为“英语(美国)”即可解决问题。Metasploit安装完成后可以改成原来的中文。[......]

分类: 逆向调试 标签: , ,

使用Windbg寻找高CPU占用线程

2012年2月17日 没有评论

在一个任务中使用多线程编程,程序运行一段时间后就占满了CPU,严重拖慢系统运行速度。这里所说的高CPU,意思就是一个线程占用了一个CPU的大部分运行时间,如果是单核的CPU,表现为CPU占用近100%;相应的双核的话一个线程会占到50%的CPU。
我的电脑是双核四线程的CPU,所以当一个线程死循环的时候会占用掉25%的CPU时间。具体表现为:运行程序的最开始表现正常,随后会看到CPU占用上升至25%、50%、75%等。在这样的情况下我用Windbg Attach到目标进程,并通过!runaway[......]

继续阅读

分类: 逆向调试 标签: , , ,