![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
逆向
文章平均质量分 84
逆向入门学习
虾仁炖猪心
emmmmmm
展开
-
给EXE文件添加一个按钮,并使用DLL文件来实现对应的功能
第一步使用Restorarot打开程序根据需要添加一个按钮,设置该按钮的消息ID,注意不要和其他控件的ID一样,添加完后保存。此时这个程序上已经多出了一个按钮,点击它也会发送消息,但是程序不会对该消息做任何处理,因为我么还没有把对应的功能添加进去。第二步制作一个可以实现功能的DLL。我使用的是vs2019,编程语言为c语言。打开vs2019,创建新项目,选择桌面向导,点击创建,应用程序类型选择动态链接库,选择空项目,点击确定。我们需要创建两个文件,一个.cpp文件,一个.h文件。.c原创 2022-04-30 18:11:24 · 3555 阅读 · 1 评论 -
脱壳后的PE文件的优化
资源的重建有些软件脱壳后的资源不可查看,不能编辑或编辑后保存不了,这是因为在脱壳后资源没有完全释放。例如,ICON图标、Group icon(组图标)等在程序没有被执行时仍然会被系统读取,但他们一般是不能压缩的,因此被存放在外壳本身的代码空间中。正常脱壳后,资源段的其他数据都已恢复,但是图标等资源还留在外壳。所谓资源重建,就是把这些资源移回.rsrc区块。首先将实例程序RebPE.exe进行脱壳(该实例程序链接放在文章末尾)。脱壳后我们用Resfixer(该软件以及下main要用的软件的链接都放在文原创 2020-05-25 23:05:40 · 959 阅读 · 0 评论 -
DLL文件脱壳
博客中用到的例子和某些程序的链接在文章末尾。对DLL文件进行脱壳的原理和对普通PE文件进行脱壳的原理其实是差不多的,就是多了一个构造重定位表的步骤。因为DLL文件都是映射到其他进程的地址空间中,所以基址很有可能不是默认基址。而壳又会破坏原来的重定位表,所以我们脱壳后需要手动构造一个新的重定位表。第一步,也是需要像脱普通PE文件的壳一样,先找到OEP,然后再把镜像文件给Dump下来。但是因为重定位的关系,我们又希望脱壳后的文件尽量和脱壳前的一样,所以我们就需要找到壳中进行重定位的那一段代码,然后将其跳原创 2020-05-19 23:15:46 · 9684 阅读 · 3 评论 -
bugku逆向入门100writeup
首先下载admin.exe,然后点击运行:发现无法运行,然后用文本编辑器打开:看到开头 有一个png一个base64,所以猜想可能是base64转换成图片:发现果然是这样,然后扫描二维码:获取flag....原创 2020-04-03 21:51:11 · 174 阅读 · 0 评论 -
crackme 用户名和密码
上次破解出了第一个crapem的验证码,这次破解一下它的用户名密码,并且要知道密码生成的算法。首先运行一下程序,随便输入几个用户名和密码提交肯定错误,弹出:根据弹窗内容,中文搜索进入,然后代码分析:最后得出了密码的算法:将输入的用户名的ASCII码的二进制数字的第一个字节的数据转换成16进制后乘以16进制的29再乘以2,最后结果转换为十进制,然后再和字符串连...原创 2019-03-23 22:34:40 · 302 阅读 · 0 评论 -
crackme_04
下载完程序运行一下:出现一个弹框,但是和以往不同的是它并没有确定按钮,只有输入用户名和密码然后下面一个框框,提示说如果注册成功将会出现一张朱茵的照片。然后随便输入了一些数字,既然没有确定按钮的话,那应该和其他东西有关,但是这里我们不知道注册码的算法是怎样的,所以我们导入OD看一下。同样先搜索字符串:发现有注册成功的字符串,跳转过去:分析发现上面正好有一个跳转把我们最后...原创 2019-05-03 22:36:17 · 141 阅读 · 0 评论 -
第三个crackme之4c大法
今天做到第三crapeme,发现点开程序后总会弹出一个没用的弹窗,大概七八秒,点也点不掉,很浪费时间,所以打算去掉这个弹窗。一开一开始以为这个弹窗应该就和之前的程序一样,找到函数调用的地方然后nop掉或者跳过就可以了,但后来找来找去硬是找不到,然后在看了视频教程后才知道这个程序是用VB写的,所以和之前的有些不一样。这种烦人的弹窗叫nag,用VB写的我们一般会用4C大法来把它去掉,下面就来介...原创 2019-04-21 23:00:51 · 165 阅读 · 0 评论 -
bugku第七个题目love
首先把文件下载下来,是一个可执行文件,但是点击却无法运行:重装之后也还是一样,一开始以为题目就是这样的,但是一直也没找到办法解决,后来看网上的解答发现他们的程序是可以运行的,有点懵,但是拖到 ida 和 od 里面还是可以看代码的,所以就将就着做了。首先将程序拖入 ida :找到主函数然后进入:看到有"please enter the flag"的字样,看到这个应...原创 2019-05-05 23:03:56 · 195 阅读 · 0 评论 -
两个简单的逆向题目
刚刚注册攻防世界,做了两个新手题目第一个题目:题目打开输入flag错误,拖入OD发现单步调试直接出现flag换一种方法,拖入IDA找到main函数,F5转换为C语言代码形式第18行代码可以看到程序将我们输入的 V9与V5比较,如果我们输入的flag和真正的flag相同,则函数返回0给v3,则两个if 语句都不会执行,会去执行else语句,点进去会发现变量unk_41...原创 2019-09-21 20:26:48 · 466 阅读 · 0 评论 -
CTF逆向之isDebuggerPresent反调试函数
今天碰到一个题目,用od调试的时候总会莫名奇妙地自己退出,最后查百度才知道原来里面有个反调试函数题目是一个windows下的可执行文件先直接运行程序看一下居然直接出现了一个flag窗口,但是里面的flag却是乱码。这里猜想程序可能对真正的flag进行了加密。拖到peid中发现没有壳先拖入ida静态分析我们可以看到程序的第16行有一个MessageBoxA函...原创 2019-12-03 23:32:26 · 1034 阅读 · 0 评论