各种工具
文章平均质量分 62
奈沙夜影
这个作者很懒,什么都没留下…
展开
-
180206 逆向-C++多线程调用PinTools
1625-5 王子昂 总结《2018年2月6日》 【连续第494天总结】 A. C++多线程调用Pintools B. 为了更进一步提高效率,转向C++的编写 虽然对于逆向手而言C必须扎实,但是实际上Python太方便已经很久没有写C程序了……查了一下C++11标准中引入了thread类来方便的调用多线程,另一方面为了规避效率较低的管道,所以使用CreateProcess来调用Pinto原创 2018-02-08 20:00:44 · 558 阅读 · 0 评论 -
180901 逆向-qira配置
qria是一个timeless的debugger,即一个可以在时间中任意穿梭的动态调试器实质上是一个trace工具,将程序整个执行流全部记录下来,然后给予用户回溯、查看命中断点的所有指令(即交叉引用)等安装方法: cd ~/ && wget -qO- https://github.com/BinaryAnalysisPlatform/qira/archive/v1.2.t...原创 2018-09-03 00:38:57 · 2189 阅读 · 0 评论 -
180727 安卓-Xposed使用笔记(1)
这几天也用了不少Xposed了,记录一下常用的一些方法和遇到的问题当做笔记~MultiDex的Hook需要通过Application.class中的attach方法来实现 如果再三确认类名和包名无误后,仍然报ClassNotFound异常,并且该APK是MultiDex的,那么就可以试着Hook一下attach方法XposedHelpers.findAndHookMethod(A...原创 2018-07-31 01:01:46 · 815 阅读 · 0 评论 -
180627 逆向-pyc还原脚本
针对suctf的Python大法好一题,通过解析内容还原pyc的脚本对于不同的解析内容需要另加修改,但原理一致–将元素按照 格式标识符-len-内容的形式递归填入即可值得说明的一点是脚本无法还原出原来一模一样的pyc,但可以还原出相同的py文件 这是因为python在编译pyc的时候,会将一些同样的字符串,通过引用来使用,即格式标识符“R”;另外还有一些字符串使用的是Interend,格...原创 2018-06-28 14:25:12 · 2621 阅读 · 2 评论 -
180531 逆向-SUCTF(Enigma)
Enigma 恩尼格码是一个由德国人亚瑟·斯雪比尤斯发明的密码机,开创了自动化加密的先河。简单来说,恩尼格码密码机利用三个转子对字母顺序进行偏移,相当于三重维吉尼亚。除此以外还有一块可以改变字母对应顺序的连接板。恩尼格码这个密码机也算比较出名了,做题之前先去回忆了一下恩尼格码的原理。(后来发现完全没用orz 打开main函数,跳过字符画后的流程很简单 接受输入-校验长度-...原创 2018-05-31 22:35:34 · 1173 阅读 · 0 评论 -
180318 开发-QQ资料爬虫
1625-5 王子昂 总结《2018年3月18日》 【连续第533天总结】 A. QQ资料爬虫 B. 通过接口爬取指定QQ的信息 接了个单子,要求获取表格中的指定QQ的相关信息最先想到的思路是HookQQ的资料窗口相关的函数,通过注入Dll来调用,然后直接找到内存中的数据,获取即可后来查了一下发现更简便的思路:通过上古时期手Q/webQQ遗留下的接口来post数据获取 为什么...原创 2018-04-03 17:36:20 · 1152 阅读 · 3 评论 -
180205 逆向-PinTools的Trace级别理解和练习
1625-5 王子昂 总结《2018年2月5日》 【连续第493天总结】 A. PinTools的Trace练习 B. 又查询了一下,大概明白Trace是路径,即从每个入口到函数结束/call子函数算作一个Trace再次查了一下API,虽然确实跟Img->Sec->Rtn->Ins不属于同一个路径,但是有Trace_Rtn这个API可以取得当前Trace所在的Rtn,进而通过Rtn_Name原创 2018-02-08 02:00:42 · 1110 阅读 · 0 评论 -
180204 逆向-Py多线程调用PinTools
1625-5 王子昂 总结《2018年2月4日》 【连续第492天总结】 A. Python多线程调用PinTools B. 前言本文初衷是为了拟补PinTools在爆破中效率较低的问题,而非PinTools针对多线程程序的相关描述 为了不引起期望获得后者的读者们的误会先行提出思路结果读取之前参照Invicsfate一步一步修改来的爆破脚本原理是将待输入字符写入一个文件中,然后通过重定向来节原创 2018-02-07 17:58:12 · 438 阅读 · 0 评论 -
180122 逆向-Frida在Windows下的使用
1625-5 王子昂 总结《2018年1月22日》 【连续第479天总结】 A. Frida-windows B.Frida是相比Xposed更加轻量级的Hook框架 具体介绍就不赘述了使用方法大体为其他语言脚本(如Python)将js脚本发送给运行在另一端的frida服务端,服务端上的js引擎老师之前给出了Hook脚本,但是在windows上怎么都跑不起来: 问题出在该python脚本中原创 2018-01-23 01:01:10 · 11686 阅读 · 0 评论 -
180131 逆向-Angr入门(2)
1625-5 王子昂 总结《2018年1月29日》 【连续第486天总结】 A. 蓝鲸whale-angr学习 B. 今天尝试了通过参数来传递输入的形式 之前没有控制参数,实际上是可以通过import claripyclaripy.BVS('arg1', n*8)的形式制造n字节参数的entry_state方法的参数有一个args来控制输入参数例如一个很简单的程序原创 2018-02-03 20:51:04 · 1418 阅读 · 0 评论 -
180130 逆向-Angr入门(1)
1625-5 王子昂 总结《2018年1月29日》 【连续第486天总结】 A. 蓝鲸whale-angr学习 B. Angr是一个多架构的动态符号执行的框架符号执行就是将输入抽象成一个符号(而不是具体值),分析这个符号的变化,来对应程序的路径早期符号执行是静态的,依靠分析程序代码来进行工作 后来发展出了动态的符号执行,模拟执行该程序来工作Angr载入二进制文件后,会将其转换为中间语言(字节原创 2018-02-03 11:31:51 · 1821 阅读 · 0 评论 -
180203 逆向-Win下PinTools编写
1625-5 王子昂 总结《2018年2月3日》 【连续第491天总结】 A. PinTools编写、win32程序的适配 B. 之前编译好了ManualExamples中的inscount,但是0、1、2的计算都很不准确,高达几百万且波动极大,所以没法通过例程的指令计数来爆破于是只好自己参照API来修改 感觉很久没有从零开始查文档写程序啦~ 官方的例程真的很充分,文档也特别详细基础介绍原创 2018-02-07 01:54:38 · 1502 阅读 · 1 评论 -
180209 逆向-Frida-python on win多进程BUG(曲线救国)
1625-5 王子昂 总结《2018年2月9日》 【连续第497天总结】 A. Frida-python on windows问题排查 B. 昨天脚本跑了二十遍以后就会内存读取错误而崩溃今天继续研究了一下这个问题首先精简脚本发现import fridafor i in range(20): frida.attach('notepad.exe')也会报错,说明跟注入的js脚本无关,原创 2018-02-11 19:53:42 · 1117 阅读 · 0 评论 -
180208 逆向-Frida入门(2)
1625-5 王子昂 总结《2018年2月8日》 【连续第496天总结】 A. Frida入门 B. 参照一些例程学习了Frida的API其实还是挺简单的首先外部进行注入: attach进程以后create_script创建发送给服务器的脚本,再load加载即可def hook(): session = frida.get_local_device().attach("Crac原创 2018-02-11 00:02:43 · 1126 阅读 · 0 评论 -
180207 逆向-Frida入门(1)
1625-5 王子昂 总结《2018年2月7日》 【连续第495天总结】 A. Frida入门 B. 在Windows下的Hook框架似乎没什么出名的,仅有的一些例如EasyHook、微软提供的API和detour库都是API级别的而对于当前目的以做题为主的我来说,INS指令级别的Hook才是更需要的—毕竟拿到的程序很大可能关键部分都是自写的函数、甚至只是一个结构块于是想起了已经在Andr原创 2018-02-10 03:13:15 · 3186 阅读 · 0 评论 -
181203 逆向-基于Frida的VM_log工具
做CTF中的VM题一直都是在python中手写一遍所有的handler来模拟执行VM,然后打log并结合代码来猜测逻辑然后慢慢地产生一个想法、本身程序也有在执行这个VM,何苦还要再手写VM呢,反正大多数情况下需要的只是log–再具体说的话就只是程序的reg和data而已通过在VM的每次loop之间插桩拿到data,也同样可以打出log由于CTF中的VM大多数情况下都不会很复杂,因此完全可以通...原创 2018-12-03 19:36:06 · 1559 阅读 · 0 评论