導航:首頁 > 軟體資訊 > 如何學好app安全

如何學好app安全

發布時間:2025-04-30 00:33:57

① 如何學好網路安全

經常看到一些網友在論壇發帖問該如何學習網路安全技術,說的直接一點就是想學習黑客攻防技術,最近有網友加我qq又談到這個問題,今天就整理一下我的一些看法,希望對大家能有所幫助。

從98年開始接觸網路安全技術到現在已經10多年了,那時候的個人電腦的系統基本都是win98,伺服器基本是winnt,上網都是通過貓撥號上網,記得上網一小時4.2元。攻擊方法基本就是遠程式控制制,遠程藍屏,暴力破解密碼,拒絕服務攻擊等,還沒有出現sql注入和社工,安全書籍中的文章大多數都是對一些軟體的使用方法做介紹,用的木馬基本就兩個,美國死牛之祭組織出的bo2000和國產的冰河。冰河我用了很長一段時間,直到現在看到7626這個數字還覺得親切,因為這是冰河被控制端開啟的埠,手工刪除冰河也很簡單,找到進程中的g_server.exe關閉刪除就可以了。還有個破解win98共享文件夾的軟體印象也比較深刻,圖標是個卡通公雞頭,破解速度很快,破解原理是系統密碼認證有問題,對密碼的識別不是整個字元串識別的,而是一個字元一個字元的識別,破解軟體就可以根據系統返回的yes、no進行嘗試。
網上不少人說要學網路安全一定要會c和c++語言,我覺得完全沒必要,不是說學了沒用,而是在初學階段用處不大,甚至枯燥的學習會扼殺你的興趣,等到技術達到了一定程度再學,會事半功倍,不少從事信息安全多年的專業人士都沒有寫過一行代碼,一樣被人稱為大牛。還有人說學網路安全英語一定要好,其實你只要能認識那些常用的計算機單詞就行了,當然你要考cissp除外。還有人說學網路安全一定要會unix和linux,我覺得windows就夠學的了,人的精力總是有限的,不可能把所有的領域都搞得很精通,與其樣樣通,樣樣松,何不做精,在某一領域有所專長。

忘記unicode漏洞是哪年被發現了,感覺很震撼,沒想到通過這種方式可以控制計算機,當時有這種漏洞的伺服器到處都是,原因很簡單,伺服器管理者對系統補丁的重要性認識不足,沒有及時安裝補丁。這種漏洞的利用方式簡單的講就是通過瀏覽器就可以對目標計算機執行cmd命令,用的最多的命令就是dir、、type,用dir瀏覽伺服器的文件目錄,看到感興趣的文件到虛擬目錄下,然後通過瀏覽器下載,看到文本文件用type閱讀。也可以通過tftp上傳文件。

還有輸入法漏洞,同樣的震撼,入侵者通過遠程桌面連接到目標計算機上,調出輸入法,通過輸入法的幫助功能,執行cmd命令,盡管是老漏洞,但同樣適用於目前的一些遠程接入程序,學網路安全必須做到舉一反三,條條大路通羅馬。
印象最深刻的遠程溢出漏洞是在05年,ms05039漏洞,溢出後,用nc可以直接連上某個溢出後開啟的埠,獲得系統的shell許可權,在互聯網上成功率很高,在區域網成功率基本是99%。

沒頭沒腦說這么多,又不能混稿費,就此打住,進入正題。初學者可以在計算機上安裝vm虛擬機,vm的功能很多,需要注意的就這么幾個:製作恢復快照,通過Ctrl+Alt釋放虛擬機中的滑鼠,安裝完vm後,接著安裝VMwareTools 其他就不做詳細介紹了。在虛擬機中安裝個win2003,安裝完成後,默認設置下是可以ping通本地機的,這樣一個小的網路環境就搭建好了,如果硬體允許,可以同時運行多個虛擬機,用虛擬系統進行攻防測試,不會影響到真實系統。至於都做哪些攻防測試,我覺得可以先做系統漏洞攻防,下載使用各種漏洞掃描器,進行全面掃描,根據存在的漏洞,用各種方法做入侵測試,還可以試試各種溢出攻擊,掌握各種常用的cmd命令。接下來可以開啟系統的iis服務,在虛擬目錄中放一個漏洞百出的整站系統做web漏洞攻防,sql注入、跨站、腳本入侵等,根據獲得的webshell進行提權測試。還可以在系統中安裝各種應用軟體,對應用軟體存在的漏洞進行攻防測試。喜歡看書的朋友還可以看看《黑客x檔案》、《黑客手冊》、《黑客防線》,網上有部分電子版,前兩本相對簡單寫,《黑客防線》系統底層的文章相對多些。等到各種攻防測試都做完了,可以看看一些網路基礎方面的書籍,你會發現之前苦澀難懂的理論知識理解起來不是那麼困難了。《TCP/IP
詳解》這本書不錯,卷一詳細描述協議棧,同樣的一本書,每個階段看,收獲是完全不一樣的。《欺騙的藝術》這本書也不錯,網上有電子版,看完後你會發現,社會工程學原來是門藝術。當你掌握的技術越多,就越覺得不懂的更多。

黑客工具有成千上萬個,這里給大家介紹幾款個人感覺不錯的。x-scan,國產漏洞掃描器,優點是穩定,可擴展性強,缺點是很久沒更新了,漏洞庫不夠新;Acunetix
Web Vulnerability
Scanner,簡寫wvs,是款web掃描器,優點是web漏洞掃描全面,缺點是運行速度太慢;ssport,小巧的埠掃描器,優點是掃描速度快,可以在運行中調節掃描速度,號稱無級變速,缺點是有漏掃情況,佔用網路資源很厲害,運行後,基本不用上網了,甚至拖垮你的區域網。不少人用s掃描器,ssport的埠掃描速度不如s掃描器,但整體來說不比s掃描器差。cain,很不錯的嗅探工具,功能太多了,操作稍微有點復雜,用了cain你會發現,網路中到處都是明文密碼。

如果你的時間和精力充足,又想學學編程,可以考慮學學delphi,上手快,不是有這么一句話嗎:聰明的程序員用delphi,學編程對全面了解操作系統有一定的幫助。

當你學會了攻,也就明白怎麼防了,防比攻更難,攻是單點突破,防是系統工程。網上不少人在收徒弟,這其中不少人是騙子,前不久看過一個所謂的黑客教學視頻,製作者通過一個不帶任何參數的ping命令+web掃描,只是web掃描,就擊垮了一個SF伺服器,看完後我也被他擊垮了。最好的老師永遠是你自己,只要有興趣,多動手實踐,多思考,一定會有所收獲。路在何方?路永遠在你腳下。最後還要說一句,不要去黑別人,因為中國有句老話:善有善報,惡有惡報。更不要以為做了幾次跳板別人就找不到你了。

轉載僅供參考,版權屬於原作者

② 網路安全去應該去哪裡學習呢。

只要想學習哪裡學習都是有效果的。但需要結合自身的一些特點來調整學習方向,這樣學習起來會事半功倍,以下推薦3種學習線路,適用於不同的學習人群;

方法1:先學習編程,然後學習Web滲透及工具使用等

適用人群:有一定的代碼基礎的小夥伴

(1)基礎部分

基礎部分需要學習以下內容:

(1.1)計算機網路 :

重點學習OSI、TCP/IP模型,網路協議,網路設備工作原理等內容,其他內容快速通讀;

【推薦書籍】《網路是怎樣連接的_戶根勤》一書,簡明扼要,淺顯易懂,初學者的福音;如果覺得不夠專業,可以學習圖靈設計叢書的《HTTP權威指南》;

(1.2)Linux系統及命令 :

由於目前市面上的Web伺服器7成都是運行在Linux系統之上,如果要學習滲透Web系統,最起碼還是要對linux系統非常熟悉,常見的操作命令需要學會;

學習建議:學習常見的10%左右的命令適用於90%的工作場景,和office軟體一樣,掌握最常用的10%的功能,基本日常使用沒什麼問題,遇到不會的,再去找相關資料;常見的linux命令也就50-60個,很多小白囫圇吞棗什麼命令都學,這樣其實根本記不住。

【推薦書籍】Linux Basics for Hackers;

(1.3)Web框架 :

熟悉web框架的內容,前端HTML,JS等腳本語言了解即可,後端php語言重點學習,切記不要按照開發的思路去學習語言,php最低要求會讀懂代碼即可,當然會寫最好,但不是開發,但不是開發,但不是開發,重要的事情說三遍;

資料庫:

需要學習SQL語法,利用常見的資料庫MySQL學習對應的資料庫語法,也是一樣,SQL的一些些高級語法可以了解,如果沒有時間完全不學也不影響後續學習,畢竟大家不是做資料庫分析師,不需要學太深;

(2)Web安全

(2.1)Web滲透

掌握OWASP排名靠前的10餘種常見的Web漏洞的原理、利用、防禦等知識點,然後配以一定的靶場練習即可;有的小白可能會問,去哪裡找資料,建議可以直接買一本較為權威的書籍,配合一些網上的免費視頻系統學習,然後利用開源的靶場輔助練習即可;

【推薦書籍】白帽子講Web安全(阿里白帽子黑客大神道哥作品)

【推薦靶場】常見的靶場都可以上github平台搜索,推薦以下靶場DVWA、bWAPP、upload-labs-master、SQL-lib-master、WebBug、pikachu等,有些是綜合靶場,有些是專門針對某款漏洞的靶場;

(2.2)工具學習

Web滲透階段還是需要掌握一些必要的工具,工具的學習b站上的視頻比較多,挑選一些講解得不錯的視頻看看,不要一個工具看很多視頻,大多數視頻是重復的,且很浪費時間;

主要要掌握的工具和平台:burp、AWVS、Appscan、Nessus、sqlmap、nmap、shodan、fofa、代理工具ssrs、hydra、mesa、airspoof等,以上工具的練習完全可以利用上面的開源靶場去練習,足夠了;

練習差不多了,可以去SRC平台滲透真實的站點,看看是否有突破,如果涉及到需要繞過WAF的,需要針對繞WAF專門去學習,姿勢也不是特別多,系統性學習學習,然後多總結經驗,更上一層樓;

(2.2)自動化滲透

自動化滲透需要掌握一門語言,且需要熟練運用,可以是任何一門自己已經掌握得很熟悉的語言,都可以,如果沒有一門掌握很好的,那我推薦學習python,最主要原因是學起來簡單,模塊也比較多,寫一些腳本和工具非常方便;

雖說不懂自動化滲透不影響入門和就業,但是會影響職業的發展,學習python不需要掌握很多不需要的模塊,也不需要開發成千上萬行的代碼,僅利用它編寫一些工具和腳本,少則10幾行代碼,多則1-200行代碼,一般代碼量相對開發人員已經少得不能再少了,例如一個精簡的域名爬蟲代碼核心代碼就1-20行而已;

幾天時間學習一下python的語法,有代碼基礎的,最快可能一天就可以學習完python的語法,因為語言都是相通的,但是學習語言最快的就是寫代碼,別無他法;接下來可以開始嘗試寫一些常見的工具,如爬蟲、埠探測、數據包核心內容提取、內網活躍主機掃描等,此類代碼網上一搜一大把;然後再寫一些POC和EXP腳本,以靶場為練習即可;有的小夥伴可能又要問了,什麼是POC和EXP,自己網路去,養成動手的好習慣啦;

(2.3)代碼審計

此處內容要求代碼能力比較高,因此如果代碼能力較弱,可以先跳過此部分的學習,不影響滲透道路上的學習和發展。

但是如果希望在Web滲透上需要走得再遠一些,需要精通一門後台開發語言,推薦php,因為後台採用php開發的網站占據最大,當然你還精通python、asp、java等語言,那恭喜你,你已經具備很好的基礎了;

代碼審計顧名思義,審計別人網站或者系統的源代碼,通過審計源代碼或者代碼環境的方式去審計系統是否存在漏洞(屬於白盒測試范疇)

那具體要怎麼學習呢?學習的具體內容按照順序列舉如下 :

掌握php一些危險函數和安全配置;

熟悉代碼審計的流程和方法;

掌握1-2個代碼審計工具,如seay等;

掌握常見的功能審計法;(推薦審計一下AuditDemo,讓你產生自信)

常見CMS框架審計(難度大); 代碼審計有一本國外的書籍《代碼審計:企業級Web代碼安全架構》,當然有空的時候可以去翻翻,建議還是在b站上找一套系統介紹的課程去學習;github上找到AuditDemo,下載源碼,搭建在本地虛擬機,然後利用工具和審計方法,審計AuditDemo中存在的10個漏洞,難度分布符合正態分布,可以挑戰一下;

至於CMS框架審計,可以去一些CMS官方網站,下載一些歷史存在漏洞的版本去審計,框架的學習利用官方網站的使用手冊即可,如ThinkPHP3.2版本是存在一些漏洞,可以嘗試讀懂代碼;但是切記不要一上來就看代碼,因為CMS框架的代碼量比較大,如果不系統先學習框架,基本屬於看不懂狀態;學習框架後能夠具備寫簡單的POC,按照代碼審計方法結合工具一起審計框架;其實也沒沒想像中的那麼難,如果你是開發人員轉行的,恭喜你,你已經具備代碼審計的先天性優勢。

可能有人會問:「我代碼很差,不學習代碼審計行不行?」其實代碼審計不是學習網路安全的必要條件,能夠掌握最好,掌握不了也不影響後續的學習和就業,但你需要選擇一個階段,練習得更專業精通一些,如web滲透或者內網滲透,再或者是自動化滲透;

(3)內網安全

恭喜你,如果學到這里,你基本可以從事一份網路安全相關的工作,比如滲透測試、Web滲透、安全服務、安全分析等崗位;

如果想就業面更寬一些,技術競爭更強一些,需要再學習內網滲透相關知識;

內網的知識難度稍微偏大一些,這個和目前市面上的學習資料還有靶場有一定的關系;內網主要學習的內容主要有:內網信息收集、域滲透、代理和轉發技術、應用和系統提權、工具學習、免殺技術、APT等等;

可以購買《內網安全攻防:滲透測試實戰指南》,這本書寫得還不錯,國內為數不多講內網的書籍,以書籍目錄為主線,然後配合工具和靶場去練習即可;

那去哪裡可以下載到內網靶場?如果你能力夠強,電腦配置高,可以自己利用虛擬機搭建內網環境,一般需要3台以上的虛擬機;你也可以到國外找一些內網靶場使用,有一些需要收費的靶場還可以;

(4)滲透拓展

滲透拓展部分,和具體工作崗位聯系也比較緊密,盡量要求掌握,主要有日誌分析、安全加固、應急響應、等保測評等內容;其中重點掌握前三部分,這塊的資料網路上也不多,也沒有多少成型的書籍資料,可通過行業相關的技術群或者行業分享的資料去學習即可,能學到這一步,基本上已經算入門成功,學習日誌分析、安全加固、應急響應三部分的知識也相對較為容易。

方法2:先學習Web滲透及工具,然後再學習編程

適用人群:代碼能力很弱,或者根本沒有什麼代碼能力,其他基礎也相對較差的小夥伴

基礎需要打好,再學習Web滲透比如linux系統、計算機網路、一點點的Web框架、資料庫還是需要提前掌握;

像php語言、自動化滲透和代碼審計部分內容,可以放在最後,當學習完畢前面知識後,也相當入門後,再來學習語言,相對會容易一些;

【優先推薦】方法2,對於小白來說,代碼基礎通常較弱,很多很多小白會倒在前期學習語言上,所以推薦方法2的學習,先學習web滲透和工具,也比較有意思,容易保持一個高漲的學習動力和熱情,具體學習內容我就不說了,請小夥伴們參照方法1即可。

方法3:選擇一些適合自己的課程學習

適用人群:需要體系化學習、增強實戰能力的小夥伴

具體根據自身條件來講,如果你自學能力較差,那建議選擇課程學習,網上各大平台等都有很多各式各樣的課程,是可以更快幫助你迅速入門的,然後再根據自己自身所欠缺的方面,不斷去完善和學習,最後達到你所要的優秀水平。

學習書籍推薦如下:

【基礎階段】

Linux Basics for Hackers(中文翻譯稿)

Wireshark網路分析(完整掃描版)

精通正則表達式(中文第3版)

圖解HTTP 彩色版

[密碼學介紹].楊新.中文第二版

網路是怎樣連接的_戶根勤

[PHP與MySQL程序設計(第4版)].W.Jason.Gilmore


【web滲透階段】

web安全攻防滲透測試實戰指南

白帽子講Web安全

Web安全深度


【自動化滲透階段】

Python編程快速上手-讓繁瑣工作自動化


【代碼審計階段】

代碼審計:企業級Web代碼安全架構


【內網滲透階段】

內網安全攻防:滲透測試實戰指南

社會工程防範釣魚欺詐

閱讀全文

與如何學好app安全相關的資料

熱點內容
哪裡的電子書不加密 瀏覽:340
河南省雲伺服器雲空間 瀏覽:316
阿伯特猶太人智慧書張平編譯 瀏覽:942
如何查詢華為伺服器管理口ip 瀏覽:434
電商源碼分享 瀏覽:997
管線命令 瀏覽:572
m代碼編譯 瀏覽:882
埠通信命令 瀏覽:898
什麼app看球賽無延遲 瀏覽:739
命令行編輯器 瀏覽:230
android打譜 瀏覽:402
密室大逃脫在什麼app裡面是免費的 瀏覽:984
ecs雲伺服器ftp 瀏覽:628
郵緒生活app什麼意思 瀏覽:471
如何知曉伺服器是否更新完成 瀏覽:949
北票女程序員 瀏覽:463
戰地2槍械解壓 瀏覽:43
pdf復選框 瀏覽:343
linux用戶監控 瀏覽:35
化妝教程編譯 瀏覽:133