软件逆向 一

##初识 软件逆向 ##
软件逆向之逆向工具包

前置基础 
	1.C语言基础(慕课,C语言基础入门)
	2.汇编语言
常用工具
	IDA (逆向分析基本工具)
	JeB (收费软件,比较全面)
	OD	(新手入门使用工具 ,针对Windows下的动态调试使用,只能调试Windows 32位的程序)
	windbg (调试操作内核、驱动)
	GDB (Linux下自带的程序,与OD类似)

逆向工程的介绍

逆向的难点一是绕过软件保护(过保护层):软件保护-编译器静态链接、优化
加壳、加密、混淆、花指令公”-反虚拟机、反调试、虚拟化…
逆向的难点二是理解各种目标(语言进阶):代码复杂-指令集:x86、x64、arm、arm64、mips ……-
操作系统: windows、linux、ios、android-语言:c、pascal、haskell、c++、Go -………
编译器:vc、gcc、lcc、llvm 、易语言……库与框架:stl、mfc、qt、 boost、易语言库……-脚本: Java、c#、perl、 php、 python、ruby、lua…….-脚本编译打包:pyc、pyinstaller
逆向的难点三是解决算法难题(算法进阶):算法难题-密码算法变形
矩阵求解

逆向基本流程

1.程序预处理,去混淆和过反调试
2.代码逆向,找到验证函数
3.验证函数逆向,找到验证算法
4.破解验证算法,得到f1ag

软件逆向常用函数

strlen  	字符串长度
str

你可能感兴趣的:(软件逆向,1024程序员节)