赞
踩
逆向工程是网络安全行业里面一项很重要的技术。
逆向是一个相对正向而言的解释,相对正向来说,对一个程序来讲,正向就是开发的过程,从0到1。
就是在一个软件诞生的整个生命周期中的一个过程, 也就是按照需求通过编码把需求实现,产生一个程序,当然这个程序可能是web在正向开发之后,这个程序经过编译,程序被封装成了只有计算机才能识别的0和1这种字节码二进制文件,如果此时我们想对该开发的程序进行渗透或者去分析运行轨迹,又或者说去对该程序做一定的修改时,那么就需要对该程序进行逆向分析(当然不建议对其他人的软件做修改哦)。
那么说到这我们更通俗的来表达一下,正向就像工厂生产一个产品,而逆向了就像你小时候败家的样子,总喜欢把一些玩具或者电子电器拆开研究一下他里面有啥,他是怎么运行的,当然绝大多数情况下,你一定挨了不少骂,说不定还逃脱不了一顿打,但是用我常讲的话来说攻击即防御,先正向后逆向,你得明白正向的过程,你才可能站在逆向的脚度去考虑程序的设计结构,或者我们说得有逆向思维,又或者讲为反推。
再来看Web逆向、软件逆向、安卓逆向、移动APP逆向分别是什么,以及他们的差别是什么。
web逆向是因为动态语言开发运行后不像静态语言会把源代码通过http请求给传输给客户端,客户端往往只能看到web程序的运行结果,当然这个阶段还会伴随着js加密,ajax同异步数据传输等情况,那对这些加密的过程进行解密的过程就属于web逆向。
软件逆向是四者中间更大的一个词汇,软件逆向里面可以包含移动逆向、苹果IOS逆向以及安卓APK文件的逆向。即后者与前者属于包含关系。
软件逆向工程是指从程序系统出发,通过运用解密、反汇编、系统分析、程序理解等多种计算机网络安全技术,对软件的结构、流程、算法、代码等进行逆向的拆解分析,从而推出软件产品的源代码、设计原理、结构、算法、处理过程、运行方法及相关文档等的过程。
整个过程被称为软件逆向工程,过程中采用的技术被称之为软件逆向工程技术。
逆向常用的软件:
OllyDbg:主用于调试程序,无法调试内核,UI功能强大。
SoftICE:工作在ring0态的调试器,常用于调试驱动程序,功能强大的命令行工具。
WinDbg:介于上两者之间的调试器,可视化图形界面,主要通过命令来进行调试。
IDA Pro:反汇编软件,用于静态反汇编,附带有较弱的动态调试功能。
UltraEdit:16进制编辑器,可直接修改可执行文件,也可用于常见语言的变成工作。
dex2jar:一款用于Android平台程序逆向分析的工具,从名字中可以看出,通过它,可以将Android的APK包中的可执行程序dex文件转换成jar包
逆向工程属于软件安全中的硬功夫,值得深入研究,但学习者通常也会觉得枯燥,难度大。
但是掌握这门技术,有助于网络安全从业者对未知事物的掌握,随着对系统底层、恶意代码、各种程序实现的分析掌握,在看待任何计算机事物的过程中,就可以具备跟别人不一样的视角,而不断接近事物真相的过程,是解决重大网络安全难题必不可少的基础。
从业者在学习过程中,需要积累对目标程序足够多的知识。如果没有这些基础知识的支撑,那距离实际应用会差非常远。
从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。
因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。
干货主要有:
①1000+CTF历届题库(主流和经典的应该都有了)
②CTF技术文档(最全中文版)
③项目源码(四五十个有趣且经典的练手项目及源码)
④ CTF大赛、web安全、渗透测试方面的视频(适合小白学习)
⑤ 网络安全学习路线图(告别不入流的学习)
⑥ CTF/渗透测试工具镜像文件大全
⑦ 2023密码学/隐身术/PWN技术手册大全
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。