系統安全基礎專題導航


學習系統安全,二進制安全其實涵蓋很多內容。參考任意一本成體系化的書籍就可以學到基礎骨架,后續延申細節點只能靠個人的耐心繼續夯實基礎。小時候看過一本跟程序員相關的書,想要做一件神秘而偉大的事。對於被神話的「黑客」充滿着向往。最開始就想徒手挖掘系統漏洞,畢業后沒有真正的做成一個漏洞挖掘工程師,倒是發現一個二進制安全分支路線「惡意代碼分析」。學習路線是C語言、C++、Windows文件、注冊表操作、核心編程、網絡編程、WindowsPE、匯編語言、逆向、android開發、android逆向。

二進制安全崗位在信息安全就業市場占比較小,大量的崗位還是留給了Web安全、移動安全方向。堅持學習這個技術領域需要對二進制安全十分感興趣,同時也能靜得下心來鑽研技術。因為想研究透徹需要投入大量的時間和精力。

二進制安全可以有以下的方向:

  • 病毒分析、漏洞分析
  • 漏洞挖掘、漏洞利用
  • 參與二進制層面的安全評估

這個方向的安全工作含有漏洞挖掘、維護漏洞庫規則、惡意代碼檢測、維護殺軟規則庫。移動安全、物聯網、游戲安全等新興領域的安全研究底層都會跟二進制掛鈎。漏洞挖掘、漏洞利用通常是攻擊者作為武器攻擊目標的技能,互聯網企業也會出於對業務防護的考慮主動給自家業務線產品挖漏洞、對病毒做分析,在攻擊者利用漏洞攻擊和病毒擴散影響范圍前,把可能會影響業務的威脅解決掉。樣本分析在乙方類安全公司需求多些,因為可以給產品賦能,比如給NIDS、HIDS、沙箱、蜜罐增加惡意代碼、漏洞匹配規則。

  • NIDS:網絡入侵檢測系統(network intrusion detection system,NIDS),是指對收集漏洞信息、造成拒絕訪問及獲取超出合法范圍的系統控制權等危害計算機系統安全的行為,進行檢測的軟件與硬件的組合。
  • HIDS:HIDS全稱是Host-based Intrusion Detection System,即基於主機型入侵檢測系統。作為計算機系統的監視器和分析器,監視系統全部或部分的動態行為。
  • 沙箱:沙箱是一種按照安全策略限制程序行為的虛擬執行環境。主要用於可疑軟件的網絡行為、文件釋放行為、惡意樣本特征檢測。
  • 蜜罐:一種對攻擊方進行欺騙的技術,通過布置一些作為誘餌的主機、網絡服務或者信息,誘使攻擊方對它們實施攻擊后,蜜罐可以對攻擊方發起的攻擊行為進行捕獲和分析。從而了解攻擊方所使用的工具與方法,根據行為推測攻擊方意圖和動機,能夠讓防御方清晰地了解攻擊方產生的安全威脅,並通過技術和管理手段來增強實際系統的安全防護能力。

1.初級免殺基礎理論(反病毒軟件特征碼提取介紹、免殺原理、殼)
2.免殺與特征碼、其他免殺技術、PE進階介紹
3.花指令在免殺中的應用
4.殼在免殺中的應用
5.PE格式講解
6.PE文件知識在免殺中的應用
7.x86反匯編速成
8.堆棧圖-匯編中的函數
9.寄存器、棧的存儲方式、反匯編指令、跳轉
10.反匯編-函數調用約定、Main函數查找
11.VS程序反匯編用OD找main函數
12.反匯編-if-else,三目運算符
13.反匯編-循環語句do-while、while、for
14.動態調試技巧補充-循環
15.反匯編-switch-case分支
16.加法與減法、乘法與除法優化原理
17.指針與數組
18.面向對象逆向-類、構造函數、析構函數
19.面向對象逆向-虛函數、MFC逆向
20.C++代碼逆向
21.源碼免殺、C++殼的編寫
22.裸函數(Naked函數)
23.PE文件頭中的重定位表
24.PE手動查詢導出表、相對虛擬地址(RVA)與文件偏移地址轉換(FOA)
25.脫殼技術
26.Rootkit基礎
27.Anti Rootkit
28.惡意代碼數字簽名驗證
29.單機游戲去啟動廣告
30.控制台逆向分析 Reverse004.exe 獲取密碼
31.逆向工具101editor編輯游戲快速通關

Windows編程學習
0.shellcode編寫
1.網絡編程基礎-TCP、UDP編程
2.網絡編程基礎-發送ICMP包(Ping程序)
3.網絡編程基礎-arp請求(局域網主機掃描)
4.ARP響應(ARP欺騙之中間人攻擊)
5.遠程線程DLL注入
6.注入DLL時BUG排除與調試
7.系統消息與自定義鈎子(Hook)使用
8.開機自啟動- ActiveX啟動
9.檢查進程是否存在 - CreateToolhelp32Snapshot
10.API函數創建用戶,添加到管理組
11.文件操作編程基礎-CreateFile、WriteFile、SetFilePointer
12.注冊表編程基礎-RegCreateKeyEx、RegSetValueEx
13.直接讀取修改exe文件
14.MFC將二進制文件導入資源后釋放
15.遍歷進程的幾種方式
16.無導入表編譯原理
17.IPC$橫向滲透代碼實現
18.配置器編寫-讀取修改exe文件
18.反調試-除0異常-編程與逆向
19.滲透測試MySQL擴展UDF后門原理與代碼編寫

Android

Android常用逆向工具+單機游戲破解

惡意代碼分析學習

1.一份通過IPC$和lpk.dll感染方式的病毒分析報告
2.調試腳本病毒
3.惡意PDF文檔分析記錄
4.Virut.ce-感染型病毒分析報告
5.用命令行與Python使用YARA規則
6.腳本病毒分析掃描專題1-VBA代碼閱讀掃盲、宏病毒分析
7.腳本病毒分析掃描專題2-Powershell代碼閱讀掃盲
8.Linux XOR.DDoS樣本取證特征與清除
9.Wannacry樣本取證特征與清除
10.逆向服務器提權開啟3389遠程連接工具
11.確認EXE什么時候編譯的
12.PIMAGE_FILE_HEADER中TimeDateStamp的時間戳與標准時間轉換
13.PE資源提取
14.啟動一個惡意的DLL
15.PE ASLR
16.分析樣本獲取來源
17.某APT組織樣本混淆技巧解密與實現-compressed壓縮轉換成base64

逆向工具學習

惡意代碼分析-工具收集
開發WinDBG擴展DLL
OD工具使用-逆向TraceMe.exe
使用x64dbg+spy去除WinRAR5.40(64位)廣告彈框

IDA使用-VS2015版本debug查找Main函數,加載符號文件
IDA使用-VS2015版本release查找main函數入口,局部變量
IDA使用-全局變量、數組、結構體
IDA使用-(string、圖形化與視圖的切換、圖形化顯示反匯編地址、自動注釋、標簽使用)
IDA使用-簽名文件制作
IDA Python安裝與使用
IDA判斷PE文件是32位還是64位、選項卡介紹
IDA 進制的基礎知識、搜索功能的使用
IDA 寄存器知識


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM