首頁
社區(qū)
課程
招聘
如何學(xué)習(xí)解密、破解、逆向技術(shù)?
Editor 2021-4-12 5451

對(duì)解密、破解、逆向技術(shù)非常感興趣,請(qǐng)問如何學(xué)習(xí)?

收藏
11條回答
kanxue 2021-4-12 2021-4-12編輯

很多人都想學(xué)習(xí)解密,這東西剛?cè)腴T時(shí)會(huì)讓人沉迷進(jìn)去,可以飯不吃、覺不睡。出現(xiàn)這種現(xiàn)像,也許是解密滿足了人們的獵奇心里吧。但掌握這方面技術(shù),對(duì)自身的提高確實(shí)有好處??梢酝ㄟ^跟蹤軟件,提高自己的調(diào)試技能,并且能了解他人程序思路,使自己寫出更好的程序。研究解密技術(shù)有助于掌握一些系統(tǒng)底層知識(shí),系統(tǒng)底層知識(shí)是構(gòu)造起大型軟件的堅(jiān)實(shí)基礎(chǔ)。許多程序發(fā)展,都經(jīng)歷了這一鍛煉過程的。 而大多數(shù)人可能認(rèn)為解密是一門高深的學(xué)問。造成這種原因是以前這方面的技術(shù)資料缺乏,從而將“解密”這一技能“神”化了。初學(xué)者一般不知從何下手,由于沒方向,花費(fèi)了大量時(shí)間和精力,走了不少?gòu)澛?。這里就給對(duì)這方面感興趣的讀者指明一個(gè)方向。
先了解一下計(jì)算機(jī)中的程序。高級(jí)語言編寫的程序,會(huì)編譯成機(jī)器語言在CPU中執(zhí)行,如VC等。由于機(jī)器語言與匯編語言是一一對(duì)應(yīng)的,因此就可將機(jī)器語言轉(zhuǎn)化成匯編語言,這個(gè)過程稱之為反匯編。而匯編語言可能讀性是比較好的,這樣就可分析程序流程,解析其功能了,這個(gè)過程就是解密(俗稱破解)。也就是說,解密的基礎(chǔ)是建立在匯編語言級(jí)別上的,因此想涉足這一領(lǐng)域的朋友,匯編語言一定得學(xué)好。匯編語言是大學(xué)計(jì)算機(jī)的必修課,這方面的書籍品種很多,雖然大多書本是以DOS匯編為講解平臺(tái),但對(duì)理解匯編指令功能是沒影響的。
圖片描述

 

等匯編學(xué)好了,建議再掌握Win32編程。Win32程序設(shè)計(jì)就是API方式的Windows編程,學(xué)習(xí)Windows API將使您更深入地了解Windows工作方式。此類書籍有Charles Petzold著的《Windows程序設(shè)計(jì)》(以VC來講解)

 

圖片描述

 

有了上面這些基礎(chǔ),你就可以參考《 加密與解密(第四版) 》、《c++反匯編與逆向分析技術(shù)揭秘》等書入門了。
圖片描述

 

圖片描述

 

學(xué)習(xí)解密其實(shí)很累的,需花費(fèi)大量的時(shí)間,而且經(jīng)常會(huì)碰壁,三五天毫無進(jìn)展是極為平常的事情。這時(shí)你可能有點(diǎn)想退卻,其實(shí)你不要著急,只要你認(rèn)真學(xué)習(xí),成功就在眼前。沒有人是生來就什么都會(huì)的,如果你有問題,就大膽的去問你周圍的人。學(xué)解密的秘訣就是勤奮+執(zhí)著!記住并能做到這兩點(diǎn),你會(huì)變得很優(yōu)秀的。
等你解密入門后,建議再看看Matt Pietrek、Jeffrey Ritcher等大師的專著,這些書是每個(gè)程序員都應(yīng)該閱讀的:《windows高級(jí)編程指南》,《Windows2000編程技術(shù)內(nèi)幕》,《Win32系統(tǒng)編程―Windows 2000應(yīng)用程序開發(fā)指南》等。這樣,你就對(duì)系統(tǒng)底層有一定的了解了。到了這個(gè)水平后,就可朝軟件加密這塊發(fā)展了,例如編寫自己的加殼軟件等。
軟件的加密與解密是一個(gè)迷人的研究領(lǐng)域,它幾乎可以與任意一種計(jì)算機(jī)技術(shù)緊密結(jié)合――密碼學(xué)、程序設(shè)計(jì)語言、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)。而由于這樣或者那樣的原因,對(duì)于這一領(lǐng)域的關(guān)注程度一直還處于低溫狀態(tài)。而這兩本書相信會(huì)為更多對(duì)知識(shí)懷有渴望的朋友多開辟一條走向這個(gè)領(lǐng)域的道路,并且進(jìn)而推動(dòng)這個(gè)領(lǐng)域的不斷發(fā)展。

回復(fù) 已采納
wx_不負(fù)余生^O^: 學(xué)了這幾本書該如何去檢驗(yàn)自己的學(xué)習(xí)成果?
回復(fù) 2022-5-31
mb_kyvygmxz: 誰收徒弟
回復(fù) 2022-6-5
橙子加檸檬 2023-6-24

堅(jiān)持努力 熱愛 實(shí)戰(zhàn)都很重要

回復(fù)
安工阿奇 2023-6-18

打好基礎(chǔ)很重要

回復(fù)
sfy19850407 2023-6-23

有收徒弟,拿shell嗎

回復(fù)
呆萌的小白 2021-4-24

誰收徒???我是小菜鳥

回復(fù)
下咯 2021-4-29

書籍入門,看帖子學(xué)習(xí)最新知識(shí),最后實(shí)戰(zhàn)

回復(fù)
tudousi168 2023-5-30

實(shí)戰(zhàn)最重要

回復(fù)
wdkxxyzh135 2023-8-30

ida軟件下載哪個(gè)版本,請(qǐng)教

回復(fù)
Zhevitz 2023-9-28

要學(xué)習(xí)解密破解的話,個(gè)人認(rèn)為有兩條主線:

  • 算法線:熟悉基本的密碼學(xué)概念,以及基本的數(shù)學(xué)知識(shí)(數(shù)論,線性代數(shù)等),基本的入門算法包括:RC4,TEA,AES,DES(對(duì)稱加密),RSA,ECC(非對(duì)稱加密),了解完算法的基本概念后,當(dāng)逆向得到源碼時(shí),分析起來就會(huì)很快地想得出對(duì)策,對(duì)破解幫助還是很大的,如果沒有算法基礎(chǔ)的話,有時(shí)候就算調(diào)試水平再高,要理解一個(gè)從未見過的算法還是會(huì)花很長(zhǎng)時(shí)間。
  • 操作線:在清楚高級(jí)程序語言語法的基礎(chǔ)上,了解一些入門的匯編、計(jì)算機(jī)程序?qū)崿F(xiàn)的底層原理,學(xué)會(huì)使用代碼分析工具:靜態(tài)(IDA),動(dòng)態(tài)(ollydbg,x64dbg,ce等),盡管一開始看到這些琳瑯滿目的工具的時(shí)候會(huì)感到很迷茫困惑,但是隨著代碼審計(jì)量的逐漸增長(zhǎng)(硬著頭皮看不懂也要嘗試去分析、推理),相信能力也會(huì)逐漸上漲。

在逆向分析的過程中,遇到各種各樣奇奇怪怪的問題,甚至是感到無從下手,我個(gè)人感覺都是正常的,學(xué)習(xí)過程常常是:發(fā)現(xiàn)問題、思考解決辦法->查資料->實(shí)現(xiàn)自己的想法。這樣一點(diǎn)一點(diǎn)去積累。逆向很難速成,堅(jiān)持和積累是必不可少的我認(rèn)為。

回復(fù)
老王醬排骨 2023-10-16

謝謝

回復(fù)
黑客KQ. 2024-8-2

去b站找教程,先打基礎(chǔ),也可以去看書

回復(fù)
逆向 破解
  參與學(xué)習(xí)     人
  提問次數(shù)     100 個(gè)
0
我的提問
0
我的回答
0
學(xué)習(xí)收益