Web 安全入門-書籍及建議

(本文源于轉(zhuǎn)載或摘抄整理)

2016-06-12 Fooying 優(yōu)主張
最近比較忙,靈感稍微有點(diǎn)缺乏,本著寧缺毋濫的想法,所以一直也沒憋出一篇文章來,希望大家見諒,想了想,整理了一篇關(guān)于 Web學(xué)習(xí)的文章,因?yàn)榭傆腥藭?huì)問類似的問題,所以想著直接整理下以前回答以及自己的一些經(jīng)驗(yàn),我想對(duì)大家的學(xué)習(xí)應(yīng)該有一些參考價(jià)值!這是該系列的第一篇,后續(xù)應(yīng)該還有有工具等其他篇。

我接觸安全行業(yè)有8年了,在高中的時(shí)候開始感興趣并且學(xué)習(xí)安全的,啟蒙老師是《黑客X檔案》以及《黑客防線》,后來才看到的《非安全手冊(cè)》,基本剛開始的時(shí)候,很多人學(xué)的估計(jì)都是網(wǎng)吧黑客(萬象之類的)、黑站(很多人估計(jì)第一個(gè)黑的就自己學(xué)校的),我也不例外,反正在網(wǎng)吧免費(fèi)上網(wǎng)的那段日子是快樂的,至今還印象很深刻,挺懷念那段日子的,那時(shí)候留校,每周的生活費(fèi)基本就花在買書上了,雖然生活周邊找不到志同道合者,不過在網(wǎng)絡(luò)上有一堆朋友。

其實(shí)在我接觸安全之前,我最早接觸的是編程,我記得最早學(xué)的是我姐他們上課的書,是譚浩強(qiáng)的《C語言》,再后來參加信息奧賽,學(xué)的 Pascal,以及后面自學(xué)了 VB、Delphi(這個(gè)還是受啊D注入工具影響的)、C#、Python等,甚至于易語言我也學(xué)了,還用了挺長一段時(shí)間。

所以首先要推薦的是編程,我覺得學(xué)習(xí)安全必須得掌握一定的編程,本質(zhì)上,Web 開發(fā)與 Web 安全是不分家的,所以說要求掌握一定的 Web 開發(fā)能力,順帶一些腳本開發(fā)、數(shù)據(jù)庫查詢能力:
1、基本的HTML/CSS/JavaScript
前兩者就不說了,JS 推薦書籍《JavaScript DOM 編程藝術(shù) 》
2、Pyhton
我覺得 Python 是身為黑客必備的編程語言,推薦書籍《Python 核心編程》,現(xiàn)在中文版最新應(yīng)該是第三版,至于有同學(xué)會(huì)問學(xué)2.x好還是學(xué)3.x,我的建議是學(xué)3.x,雖然現(xiàn)在很多老的代碼是2.x,不過3.x是趨勢(shì),另外其實(shí)不管是3.x還是2.x,掌握一個(gè),再切換都很容易
3、結(jié)構(gòu)化查詢語言 SQL
SQL 的學(xué)習(xí)是必要的,比如說 SQL 注入,就要求前提掌握 SQL,因?yàn)槲覜]有專門的去買書學(xué)過 SQL,大部分是通過網(wǎng)上資料自學(xué),因?yàn)闆]看過,所以沒什么書籍可以推薦,推薦下w3school的教程,http://www.w3school.com.cn/sql/

編程方面就推薦這三部分把,我覺得是基本的必須要學(xué)的,其他的比如 PHP,我覺得也很有必要,比如 PHP注入、PHP代碼審計(jì)等,還有 Web 漏洞里常見的有 Struts 漏洞、Java反序列漏洞,是否 Java 也需要學(xué)下?我覺得精力有限,因人而異,也看自己的方向,更多的看自己在學(xué)習(xí)、研究過程中的需求,碰到不懂的就加強(qiáng)下,就針對(duì)性的去學(xué)習(xí),但不可能說追求所有都精通之類的。

后來的話,陸續(xù)也看了一些 Web 安全方面的書籍,相關(guān)的書籍比較多,我就不一一列舉了,就推薦一些我覺得不錯(cuò)的中文書籍(因?yàn)槲矣⑽牟缓?,雖然也看了幾本英文書,但是還是不好意思推薦):
1、《Web 前端黑客技術(shù)與揭秘》 前端黑客必備,cos 和 xisigr 出的書
2、《白帽子講Web安全》道哥出的書
3、《黑客攻防技術(shù)寶典-Web實(shí)戰(zhàn)篇》
4、《Web之困》
5、《Web應(yīng)用安全權(quán)威指南》
6、《SQL注入攻擊與防御》
7、《XSS跨站腳本-攻擊剖析與防御》

這里同樣不展開,在細(xì)分領(lǐng)域也有不同的書,具體的我也不多做推薦了,這里關(guān)于 XSS 特別推薦下 PKAV 團(tuán)隊(duì)整理的思維導(dǎo)圖 (http://pkav.net/XSS.png), (http://pkav.net/XSS2.png), 關(guān)于PHP 方面推薦下 80vul,也就是黑哥他們團(tuán)隊(duì)的成果:https://code.google.com/archive/p/pasc2at/wikis/SimplifiedChinese.wiki

其他的一些我覺得需要學(xué)習(xí)或者了解的:
1、需要掌握 OWasp Top 10,包含原理、測(cè)試方法、防護(hù)方法(https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project)
2、需要了解掌握網(wǎng)絡(luò)請(qǐng)求
3、掌握使用一些安全工具(后續(xù)文章)
4、學(xué)會(huì)關(guān)注、分析漏洞和編寫 PoC
5、關(guān)注一些網(wǎng)站,關(guān)注最新的安全/漏洞動(dòng)態(tài)、技術(shù)(后續(xù)文章)
6、關(guān)注一些安全圈微信公眾號(hào)/專欄等
7、Twitter 是一個(gè)獲取最新漏洞、最新技術(shù)點(diǎn)的好地方,前提是你要關(guān)注些大牛(這個(gè)后續(xù)考慮單獨(dú)文章來講)
8、安全公司/甲方公司安全團(tuán)隊(duì)除了人品之外,更多時(shí)候看中的是個(gè)人的實(shí)戰(zhàn)能力,以及做過的一些事,所以建議可以適當(dāng)?shù)乃⒁恍?SRC(后續(xù)整理列表)、寫一些漏洞分析、PoC等
9、雖然我不想承認(rèn),但是適當(dāng)?shù)膮⒓右恍?CTF 也是不錯(cuò)的
10、融入這個(gè)圈子,比如參加一些安全會(huì)議等

接下來,推薦幾個(gè)我覺得可以作為參考的技能表、知識(shí)整理和問答:
1、http://blog.knownsec.com/Knownsec_RD_Checklist/index.html 來自我們團(tuán)隊(duì)的知道創(chuàng)宇技能表,當(dāng)前最新版本 3.1(點(diǎn)擊『閱讀原文』訪問)
2、零基礎(chǔ)如何學(xué)習(xí) Web 安全? https://www.zhihu.com/question/21606800/answer/22268855
3、西電信安協(xié)會(huì)-技能時(shí)間軸 http://file.anquanquan.info/tuijian/jinengzhou.pdf
4、i 春秋學(xué)習(xí)規(guī)劃圖 http://www.ichunqiu.com/main/#study-plan

整理來說,如果一定要讓我給一個(gè)路線的話,我覺得按照我從上到下的路線去學(xué)習(xí),以及最后的建議去掌握這些技能即可,當(dāng)然,文章中可能還欠缺一些內(nèi)容,比如工具的掌握等,后續(xù)會(huì)繼續(xù)寫,大家可以關(guān)注我后續(xù)的文章。

然后,最重要的,更多時(shí)候,我覺得光看不練是沒有用的,用黑哥的話『做』,所以不止是學(xué)習(xí),更多的時(shí)候去動(dòng)手操作,去實(shí)踐。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容