http://www.freebuf.com/news/others/12323.htmlphp
0x01 我先分享下,怎麼買書吧。
一、書店購買,能夠慢慢尋找內容合適本身的,選中拿着結帳走人,這種感受是網購沒法代替的。但價格很貴, 通常不建議新華書店買,原價不打折,打折也幾乎沒太多是計算機書,VIP會員也不打折。
二、網上購買,能夠書店選好了網上買。
三、電子書,買個Kindle,價格也就在800左右,800塊錢對計算機書來講,也可能就幾本而已。而後就是網上下載PDF看,有些書的PDF不必定能夠下載到,下載不到的能夠去買盜版的PDF,估計不少人不知道吧,你到www.szdnet.org.cn(深圳文獻港)去搜索你想看的書,若是有「試讀」連接,你就能夠去淘寶找人幫你下載(就搜索「深圳文獻港」),也就2塊錢一本吧(有些店家會按頁數算錢,這個瞎扯的)。通常來講,出版了半年以上的書均可如下載到,是掃描版的哈。
0x02 預備書籍
《如何閱讀一本書》:這本書我沒看紙質書,是下載的,因此沒照片。若是要買紙質版本的,去搜索吧,做者是莫提默•J.艾德勒。不要被書名雷到,裏面講了閱讀各類書的方法,其中提到一點:看懂了,並不表示你會了,你能把你的理解口述一遍出來嗎?想一想,學習操做系統原理或者一個漏洞的時候,看完別人的書或者文章,能夠再閉書口述出本身的理解嗎?或者看完一本語言書,你能寫個爬蟲之類的東西出來嗎。
《專一力》:這本我也看的電子版,看這本書是由於看《暗時間》裏提到的,做者是埃倫•蘭格。這本書不是講如何提升專一力的,而是講人們爲什麼失去了專一力,當你學會了一個知識,卻不能靈活使用。
《暗時間》:仍是看的電子書,一本前半部分心理學,中間夾點數學,後面講點算法的書。
《番茄時鐘工做法》:
簡單好用的時間管理方法,我本身看書的時候,就喜歡用番茄時鐘法來看書。當你看完這本書的時候,你會發現,裏面全部講的跟操做系統裏進程管理機制相差不大:)
《集異壁》:藝術,數學,計算機爲一體的神書,我推薦你們看,但不推薦不想深刻理解計算機和數學中一些思想的人看:)
0x03 基礎書籍
來吧,英語,《個人第一本英語語法書》:
惡補下英語是很必要的,關於它好處,就很少說了,這本書講得很細,網上有pdf版。
《程序員的數學》
裏面涉及的數學點基本上是中學的內容,不過做者是從程序員角度去寫的,對曾經成績很差的的夥伴來講能夠好好補下。
《離散數學及其應用》:
一口氣看完不太可能,裏面的集合、邏輯、條件命題、算法等等頗有必要好好看看,做者寫得很易懂,而且例題不少,例題的答案能夠去網上下(原做者只提供了題號是奇數的答案,不過網上已經能下載到奇偶中文版的答案了)
不過在讀這些的時候,最好有點代數基礎,代數基礎能夠去網易公開課裏看可汗學院的代數內容,可汗學院的公益學習視頻很贊,不只免費,並且講得特別細,數學是從1+1開始講的!絕對不要認爲做者侮辱廣大的智商,看完以後能夠把你學校的東西忘記了。
0x04 計算機基礎書
掌握兩三門程序語言吧,必備的C語言,再學一門腳本語言,我推薦python。不懂C語言,很難觸摸到系統底層或者偏向底層的東西;掌握Python嘛,平常工做就很方便了,搞安全的,不管是調試漏洞,仍是寫exp。
《C語言編程:一本全面的C語言入門教程》:
http://dwz.cn/QJY9o
什麼?C語言看譚浩強的C語言書?呵呵,那本只會你寫代碼,還不會編程,而且水平還很通常。這本書是我高一的時候看的,如今市面上已經有不少比較好的C書了,而且這本書已經絕版了,不過網上能夠下載到PDF。
《C程序設計語言》:這本書我看的電子版的,做者是克尼漢,不是譚浩強。這本書的文字很是精煉,沒有廢話,但卻切中了關鍵知識點,入門的話,估計看這本有點吃力,稍微有點點基礎再看吧。
《Python學習手冊》:最新版的第四版已經出了,我看的第三版,第四版比第三版厚太多了。。這本書是細緻剖析python語言,幫助讀者真正理解透Python,而不是講標準庫的,想學習庫,能夠看《Python核心編程》,也是很讚的。我想說的是,這本書裏講面向對象講得很是好,講了Python面向對象的工做方式,好比繼承類的工做原理之類的,比那些瞎扯淡的面向對象書好多了——什麼人是一個類,男人是一個對象,女人也是一個對象這些高度抽象的。
若是你習慣了Python寫點代碼,《python參考手冊》能夠說是手頭必備的。兩本python書一塊兒學習後,作作知道創宇的面試題,爬蟲 http://dwz.cn/QJY9u,強烈推薦你們作:)
嗯,不過想提升編程技藝的,繼續往下看:
《程序設計方法》:網上流傳着電子版的,中文名《如何設計程序 程序設計和計算引論》,建議下電子版來看,書的英文名是《how to design programs》,我是下載後打印看的
這本書介紹了程序設計的不少思想,剛入門的童鞋想提升編程能力能夠看看,不過做者用的Scheme語言描述的(lisp的一種),其實這本書就是Scheme的入門書了。。。
《代碼整潔之道》:你還在寫屎同樣的代碼嗎?過兩天就看不懂了?或者一個函數完成了全部功能?或者還在跟着你大學老師用a、b、c作變量名?看看吧。這本書我是大學時在圖書館借來看的,因此沒有照片。最瘋狂的是,我當時在寫一個webapp,看完以後,就把寫了一半的代碼所有刪了重頭寫的,由於我沒法忍受本身糟糕的代碼風格:)
固然,若是當時我看了這本書——《重構》,我可能不會刪掉,而是用《重構》中的思想,努力把代碼變漂亮:)
雖然《重構》是用java描述的,而且版本還很老,卻思想不過期,不須要java基礎,一樣能夠用到php之類的語言上:)
《編程匠藝》:這本我仍是看的pdf,你還老在寫容易出錯的代碼嗎?或者你對某個cms寫的exp,老出錯,url不打 http://開頭程序要崩潰;網絡不通暢程序也要崩潰;少給程序帶個參數,也崩潰了。推薦好好看看吧,學習下防護編程的思想。
《正則指引》:想學會繞過WAF規則之類的同窗能夠看看,正則表達式入門的書,書中正則主要以python來示範的
《深刻PHP 面向對象、模式與實踐》:想以php爲主,學習下設計模式和入門面向對象,或者源碼審計的時候,想摸清楚人家代碼的總體架構,絕對要看看啊。
PHP,我以爲就看看官方文檔,再看看這本書,就夠了:)
《彙編語言》:王爽的,嗯,雖然不是講32位的,想學彙編的仍是看看吧。
《數據結構C語言版》:這本書很老了,早就買不到了。裏面對每一個數據結構都有完整的代碼,雖然裏面部分C語方面的有錯誤,但做爲入門書仍是值得看一看,網上搜索「《數據結構C語言版》中國鐵道出版社」能夠下載到。
還想更進一步提升的,來學算法吧:)
《程序語言的奧妙:算法解讀》:這本書表面看上去真像小學生的讀本。。。呵呵。。。但適合沒基礎的人看。若是以爲買這本面子上過不去,就下pdf吧,網上有。
《算法概論》:說學算法,看《算法導論》?仍是《計算機程序設計的藝術》?呵呵呵。。你能看懂,估計我推薦的不少書你也不用參考了,反正我是看不懂的,而且這兩本書的行文風格徹底是參考書風格,不少地方不太好讀懂,看看算法概論吧。《算法之道》也是本相似的書,看上去有點zip(《算法概論》+《算法導論》)(壓縮)的感受,而且加入了一些哲學方面的,而我文化程度不高,並沒領悟到裏面不少哲學的含義
0x05 網絡入門
若是你還不會劃分ip網段,不能區分路由器和交換機,不知道家用的「路由器」是交換機+路由器爲一體的,不知道爲什麼開通2M的寬帶,下載速度卻沒有2M,能夠看看這些書,做爲一名網管出身的程序員,推薦幾本網絡方面的書仍是能夠的。
《TCP/IP指南》:學TCP/IP協議,不少人直接就說《tcp/ip詳解》三卷看完了就能夠了,我以爲這是瞎扯:一、第一卷還好,不是特別難,只是沒ipv6,固然最新版的《tcp ip詳解》已經有ipv6內容了,不過還沒出中文版;二、卷2是講tcp/ip棧的源碼實現,你又不作協議方面的專家,看這本幹嗎?我到如今都沒看完,一個是太厚了,二個是看完了也對我目前用處不大,看看理論,理解下就好了:)三、卷3主要是應用層上的協議,這本書不少東西比較老啦:)
因此推薦看看《TCP IP指南》,純理論的,估計要看懂,得花大半年的時間了,我看完第一卷花了四個月,當時剛上大一,再加上哥打小就沒聽課的習慣,因此基本上從早看到晚,由於當時感受理解不太透徹,書很大部分看了兩遍,基本上大一上學期完了,纔看完:)大一下學期的時候,開設了CCNA課程,一直開設到大二上期,感受很通常,由於自認爲對TCP/IP協議棧理論方面掌握不錯了,就沒聽過課,上課就啃其餘書去了,基本上當時思科在線考試都90+的分數,還不錯,而後我覺得這輩子註定當網管了,就買了本《CCNA學習指南》,準備先過了CCNA去當網管,搞點windows/linux安全維護還不錯的,當時由於有了比較紮實的理論基礎,這本書我兩週就拿下了,以後又在圖書館借了《堆棧攻擊 八層網絡安全防護》,還看了《黑客大曝光》等等,tcp ip協議安全方面的過了一遍吧,真的就準備投身網管了,直到知道創宇在成都有了公司,汗,果斷放棄網管,半路出家當起了python碼農,因此就有了上面推薦一大堆編程書。
因此網絡方面想入門的,能夠看看《CCNA學習指南》和tcp ip指南。
0x06 Windows方面的
Windows我就只推薦《深刻解析Windows操做系統》、潘愛民的《Windows內核原理與實現》和《軟件調試》了,這三本書對Windows底層學習都很好的,我當時的學習曲線是,看《深刻解析Windows操做系統》,某些知識點想細緻的就看的《Windows內核原理與實現》,想跟接近系統點的,就跟着《軟件調試》走。不少年不搞windows了,就很少說了,已經沒那個資格了。。。。
另外,我就看過《rootkits》、《天書夜讀》、《windows系統編程》、《惡意軟件分析訣竅與工具箱》之類的,還有一些就不想說了,Windows的說多了一把淚啊。。。。
0x07 Linux方面的
當時學校白天要斷電,而個人筆記本裝Linux,它的電源管理沒Windows那麼好,加上用的Ubuntu,沒有作過內核方面的單獨編譯以及優化的,耗電很是快,因此學習Linux就買了本《鳥哥的私房菜》
其實Linux看在線的電子書就能夠了,鳥哥私房菜也有pdf的,並且相對書來講可能更新一點:)
shell編程推薦《LINUX SHELL腳本攻略》,我看的pdf,就沒圖了。
===========ps:後面的我真的不想再上傳圖了,累死了,早飯都沒吃,很餓。
0x08 補充點底層知識
《深刻理解計算機系統》:這本國外經典的教材,真心推薦看一遍,看了前200多頁,也能算反彙編入門了:)
《操做系統精髓》:學操做系統原理,多看這本書吧,裏面對比了多個操做系統的各方面實現機制,好比Linux和Windows。
若是想實際學下操做系統,能夠看:
《linux內核設計藝術》:用的linux0.11版的內核,92年版的,但那時候linux已經有了操做系統各方面了,這本書我還沒看完,但圖文並茂,理解起來也很輕鬆。這本書最近纔出了新版本。
《30天自制操做系統》:去年夏天出的本書,小日本寫的,沒有傳統的那些亂七八糟操做系統理論,很隨性的實現,並且還實現了圖形界面。做者講解也是從一步步解決問題入手的,值得一看
《理解Unix進程》:關於進程方面的編程能夠看看,書很薄,圖靈社區有pdf賣,做者用的ruby語言描述的。
0x09 終於到安全方面的書了
我以爲安全方面的書不用買太多,特別是那些啥黑客入門的千萬不要買,國內網絡安全已經發展了10多年了,網上有不少不錯的社區和資訊站常常更新新東西,好比freebuf,買幾本墊底下基礎知識就ok了:)
想學習偏向緩存溢出和應用安全的,除了要學習系統底層方面的,以前已經介紹了部分書了,下來來實際操做的:
《黑客之道》:主要是Linux平臺的溢出吧,這本書仍是老了,但內容依舊值得學習,本身下載pdf吧:)
《0day安全》:王清寫的初版陪我度過了512地震。。。這本書真的被我翻爛了。。第二版修復了初版不少錯誤,而且加入了許多繞過保護機制的內容。
《0day》:愛無言兄弟寫的,我的以爲這就是你之前雜誌稿子的合集,不過仍是值得學習應用層,仍是值得看:)
《安全漏洞追蹤》:書很老,但這本書對我影響蠻大的,看了這書,才真正把安全意識帶入到實際開發中,這書是我在圖書館借的,當時手抄了絕大部分精華內容:)
黑客方面綜合的書:
《灰帽黑客》:去年出了新版,老版本時,我但是餓了很久肚子,用生活費買的:)書裏面涉及不少,滲透到漏洞分析
《黑客大曝光》:真正值得看的就這一本了,夥伴們:)最近出了新版了。
《web前端黑客》:餘弦的書,國內第一本專一前端方面的書,必須贊一個,我我的比較喜歡看專一某一個方面的書。
《白帽子講Web安全》:刺的書,web安全方面涉及不少,不過整體有點偏向企業級的
《黑客攻防技術寶典:Web實戰篇》:書名太難聽了,裏面羅列的不少讓我反而更以爲這書給搞安全開發的人看更合適:)
《sql注入攻擊與防護》:一本專一講sql注入的,又是一本專一的書,如今看來都仍是很不錯,有不少技巧:)
web方面看看《web前端黑客》、《白帽子講Web安全》和《黑客攻防技術寶典:Web實戰篇》做爲基礎知識墊底就夠啦,網上天天處處都是漏洞公佈的,多看看那些,多分析下效果更好的:)
以上書的圖就不上了,我以爲來張合照也不錯,下面,來張我半年前的書的合照吧(如今還要再多一列),而後結束本次的推薦,寫那麼多真的很累,今天就隨便寫了幾本,之後有機會再寫吧。。。
傳送門: http://dwz.cn/QJYabhtml