逆向
文章平均质量分 67
Siphre
在C++和Android逆向之间摇摆不定的入门小菜鸡
展开
-
NCTF 2019 Re Writeup(四题)
reverse一、DEBUGELF动态调试,flag长度24字节,用户输入的字符串跟经过处理后的字符串s做校验。因为变量s是经过处理的,得在cmp dl,al下断看eax寄存器的值,可以看到最终比较的时候s的值。手抄s的值出来,再python翻译成字符串即可。flag=[0x4E,0x43,0x54,0x46,0x7b,0x6a,0x75,0x73,0x74,0x5f,0x6...原创 2019-11-25 23:54:17 · 955 阅读 · 0 评论 -
Linux /proc目录下和ELF反调试有关的文件
wchan/proc/[pid]/wchan显示进程sleep时,kernel当前运行的函数。调试状态下,wchan文件会显示ptrace_stop。cmdline/proc/[pid]/cmdline文件存放进程的命令内容。使用GDB这类的调试器时,调试会fork一个子进程,然后执行ELF程序。此时,ELF文件就可以通过getppid()获取父进程pid,然后检测cmdline...原创 2019-11-05 14:50:54 · 911 阅读 · 0 评论 -
Android逆向工程-基础概念:Arm、Art、Dalvik、Smali、dex、NDK、JNI之间的关系
Android逆向工程-基础概念:Arm、Art、Dalvik、Smali、dex、NDK、JNI之间的关系 接触逆向以来遇到过Smali、dex几个概念,接触脱壳的时候又遇到ART、Dalvik、的概念,.so文件逆向的时候接触到Arm汇编、NDK、JNI的概念,今天简单梳理下这几者的关系。一、Dalvik虚拟机 安卓(Android)是google收购的...原创 2019-10-31 10:15:31 · 1284 阅读 · 0 评论 -
用2048游戏练习smali修改与重打包
看完了《游戏安全-手游安全技术入门》,里面的样例破解了一个2048,遂上网挑了个简单的2048的APP,开始尝试。挑选的APP是无壳、无反调试,且代码量非常少的一款2048。破解的目标定为直接生成一个2048。首先为了能方便的查看源代码,使用jadx这款工具进行反编译。搜索score关键字,发现生成逻辑在com.cloudy.game.logic.world。...原创 2019-08-07 14:15:01 · 438 阅读 · 0 评论 -
2019SCTF crackme复现
比赛没做出来,参考SU战队WP复现。exeinfope查无壳有反调试运行程序显示:welcome to 2019 sctfplease input your ticket:需要输入特定的ticketShift+F12查找字符串,跟踪到主函数sub_402540sub_402540内部伪代码开头调用两个可疑函数:sub_402320、sub_402...原创 2019-07-04 16:49:45 · 631 阅读 · 0 评论 -
DDCTF 2019 逆向题writeup re1-3
Re1 windows reverse 1Upx壳,用工具脱壳。静态分析:主流程很简单,用户输入input经过sub_401000函数处理后与DDCTF{reverseME}进行比较。Sub_401000:看汇编,函数逻辑就是,根据用户输入的字符的ascii码,读取byte_402FF8对应下标的字符。byte_402FF8是一个倒序的Ascii码可见字符表。004030...原创 2019-04-19 11:06:21 · 827 阅读 · 0 评论 -
C++实现一秒扫雷
调试分析阶段:在内存中寻找行、列、雷区数据(具体可看参考文章2) 分析雷区数据格式雷区一行为32byte,正常区域由0x0f(无雷)、0x8f(雷)组成,不可点击区域由0x10围成雷区大小为3*16*16byte,处理时要把不可点击区域删去。 编程阶段:代码流程和关键API函数:1.根据pid打开进程OpenProcess2.检测内存是否可读VirtualQ...原创 2019-02-25 20:20:39 · 814 阅读 · 1 评论 -
2019安恒杯一月月赛Re部分wp
Re:1来玩蛇吧 题目给了两个文件AnhengRe.exe和AnhengRe.pyc。Notepad++打开发现是python3.6编译的直接走python逆向的流程 .exe反编译成.pyc。使用的工具是pyinstxtractor或archive_viewer(官方),得到的文件缺少了12字节文件头,下载一个python3.6,用010editor扒一个python...原创 2019-01-29 11:12:24 · 1530 阅读 · 2 评论 -
frida脱二代数字壳全流程
闲谈drizzleDumper只能整体脱一代数字壳,原理是DEX整体脱壳,一代壳市面上较少见。二代数字壳可能是分段式Dex,据说frida和Xposed能脱,Xposed的环境搭建条件苛刻,似乎要真机、root、Android低版本,不知道是不是真的,反正我是怕了,先Frida走一波。(frida是一款基于python + javascript 的hook框架,可运行在android、io...原创 2019-01-05 15:20:53 · 2782 阅读 · 1 评论 -
NCTF2018RE部分题WP(some boxes、Our 16bit wars、签到)
签到 64位 PE文件,x64dbg动态调试到flag打印处,寄存器窗口可以看到flag明文。 ASM16bitre(Our 16bit wars) 16位汇编,一开始装了dosbox准备动态调试,后来发现直接IDA静态分析也能解。看了16位汇编的一些语法参考文章: Int 指令https://blog.csdn.net/SysProgram/article...原创 2018-11-26 11:23:49 · 999 阅读 · 0 评论 -
自己收集的一些逆向工程的入门概念——壳、注册机、算法求逆、反病毒、免杀
一、软件逆向工程大多数时候都会被简称为逆向工程(Reverse engineering)或直接将其称为逆向(Reverse)。软件逆向工程的基本思路是将二进制代码按照一定格式进行正确有效的反汇编,并通过分析反汇编代码再配合其调用的外部函数或系统API等,对其代码逻辑进行理解,而在这个过程中最重要的就是推理出该二进制代码使用的数据结构。二、加壳与脱壳壳是程序免杀的手段之一,也起到干扰逆向...原创 2018-10-08 00:02:14 · 1124 阅读 · 0 评论 -
IDA运行加密算法识别插件findcrypt-yara报错‘module’ object has no attribute’set_name’
10月12日findcrypt下载的是github项目, 负责人似乎没维护好,插件源码findcrypt3.py里的195行出错 idc.set_name(value[0], name + "_" + hex(self.toVirtualA...原创 2018-10-12 21:46:30 · 2556 阅读 · 0 评论