1. 程式人生 > >2017總結與2018規劃

2017總結與2018規劃

時間如白駒過隙,回想起過去的2017年彷彿就在昨天,元旦做了幾天鹹魚,沒有能夠及時更新自己的年終總結,在此補上

回望2017

回望2017,在4月份我換了一份工作,之前的工作實在太閒了,我感覺這樣不利於自己的進步,於是在3月份的時候正式提出離職,在4月份進入新公司。

工作感悟

新公司主要是做Web安全的,而我主要負責一款掃描器外掛的開發於掃描器本身的維護工作。
這份工作經常給我帶來驚喜,就比如說sql注入,正常人的思維是輸入一個值,然後在資料庫中查詢,但是sql注入就不是,它會在輸入的查詢條件中帶上sql語句,這與傳統的方式不同,它給我一種耳目一新的感覺。我第一次學習到sql注入的原理時是那樣的興奮,感慨於它的不同尋常。同時也對安全從業者產生了一定的崇拜,他們一定是一些思維活躍的人,是一群打破常規的人,這些都是我決定從事安全行業,努力融入安全圈內。
這一年收穫很多,在這一年中學習了一些常見漏洞的原理,攻擊與防禦的相關知識,通過閱讀公司掃描器的原始碼,學習了一些閱讀原始碼的方法,雖說還沒有總結出一整套的方法論,但是也有一些思路。並根據這些方法我找到對應的程式碼並進行了一些修改。
另外,在這一年中學會了一些指令碼語言,比如Python、JavaScript。我自己感覺雖然掃描器是使用VC++語言編寫的,但是我在這一年中本身使用最多的反而是Python。在剛入職時使用Python開發了掃描器對於ajax部分的支援,使其能夠正常爬取到使用JavaScript動態生成的指令碼。後來又使用Python開發了大量的漏洞掃描外掛。現在又在使用Python開發一款網站監控軟體。可以說這一年如果不是自己一直在自學VC的內容,可能現在C的東西都忘乾淨了^_^
由於需要與Web程式打交道,所以一些理論方面的內容必定會涉及到,這一年主要詳細瞭解了http協議,但是主要是在資料包層面上的,比如http的協議頭、協議體等等,對於網路底層的東西仍然不是太明白,這也是目前的一個短板。後來為了方便,使用Python傳送網路包的時候主要使用的requests庫。知道了使用requests庫定製協議頭、判斷響應包等等操作。但是反而對原生的urllib庫不太瞭解。
總結這一年我感覺最有用處的專案就是當時我使用Python + webkit寫的一個web2.0的爬蟲以及現在的一個web監控系統。web監控目前沒有完成,所以暫時不提它,這裡主要說說web2.0爬蟲

專案

web2.0爬蟲參考書籍《白帽子將web掃描》一書,基本程式碼都是按照書中的思路來的。這個專案使我詳細瞭解了http協議,正則表示式、xpath表示式等等。
為了使用webkit,專案主體是一個qt的任務排程部分負責排程由掃描器傳過來的需要解析的url,每當有一個url過來的時候,都會觸發一個自定義的事件,然後由qt呼叫對應的槽函式。
其實我原本打算使用Python的執行緒池,來進行排程,但是由於使用的是webkit的Python封裝——ghost庫,這個庫有一個好處就是能夠捕捉到所有的網路請求,這樣我可以很方便的得到ajax非同步載入時請求的URL,從而得到一些額外的url,當時ghost庫使用的是全域性的app類物件,qt又不允許跨執行緒訪問物件,所以沒辦法取消了多執行緒。後來經過我的測試在效能上雖然有一些損失但是損失在能接受的範圍內。
在解析url時候主要解析下面幾種:
1. 在一些常規標籤中的url,對於這種採用的是常規的xpath表示式
2. 出現在文字內容中的連結,或者JavaScript指令碼中的連結,這種採用的是正則表示式
3. 需要進行非同步請求的連結,這種連結主要出現在一些JavaScript註冊的事件中。這種連結主要使用ghost庫,獲取所有網路請求,然後解析其中的url
4. 還有就是一些需要進行渲染之後才能出現的連結,對於這種連結,採用的是ghost庫中的webkit進行渲染然後解析生成的HTML

其餘事項

我在國慶期間去了一趟深圳,見了一下之前的大學同學,雖然很遺憾,不少人都回去了,但是我見到了當年的室友,以及領我上安全這條路的大牛同學。在於大牛同學的一些交談中,我發現自己進步的沒有想象中那麼大,這些都激勵著我繼續努力

不足

2017雖然有進步,但是也有許多的不足:
1. 生活過於懶散:最大的毛病在於生活過於懶散,沒有規律。經常週五熬夜做自己感興趣的事,一旦這件事做完了或者碰到瓶頸沒法解決的時候,後面幾天就成了一無是處的鹹魚。
2. 手機佔據了大量的業餘時間,在這一年中,公司很多時候沒有什麼大事,加班比較少,我雖然回來的早,但是大量的時間用在玩手機上,根據我自己的觀察,差不多從7點到8點半的時間很多時候都是在玩手機。而且有時候在學習的時候集中不了精力,時不時會看看手機,這樣極大的影響了注意力。
3. 缺少鍛鍊:要說這一年什麼收穫最大,那應該是我身上的30斤肥肉T_T,從年初的100多斤漲到現在快130斤,在加上自己經常久坐,導致現在有時候稍微活動一下就渾身不舒服,渾身痠痛。18年需要改變這一現狀
4. 讀書太少:這一條與玩手機太多有很大的關係,長時間玩手機,使讀書的時間壓縮了,有時候200多頁的書需要看個把月,總體算下來,今年一年加上在kindle上的書共有6本,明年可能要花更多時間在讀書上

展望2018

生活習慣

針對上述出現的問題2018年決定做如下改變:
1. 多鍛鍊:目前計劃在3月份房子到期找到新地方後就近找一個健身房辦張卡,經常去鍛鍊身體,並且強迫自己每個星期必須出去走走
2. 按時休息:每天按時休息不再分週末和平時,到點了放下手機或者手中的事睡覺,週末白天儘量在8點前起來,保證每天早上出去吃個早餐
3. 嘗試自己做飯,少點外賣

學習計劃

  1. 詳細學習網路原理
  2. 系統學習滲透測試,一些常見漏洞的攻擊與防禦
  3. 學習一些逆向的知識
  4. 學習一些Windows驅動程式設計的東西
  5. 看完之前的一套VC高階程式設計的視訊,並針對每個知識點編寫相應的程式碼
  6. 多寫部落格,做到每週一篇技術部落格,嘗試寫一些讀書筆記、雞湯、專案總結類的文章
  7. 將CSDN部落格中之前寫的VC反彙編系列、VC高階程式設計系列的內容慢慢轉到自己在GitHub的部落格上我的部落格
  8. 合理利用週末,週末做到每天玩手機時間不超過2小時,平時不超過半小時

2018書單

2018年計劃讀如下書目:
1.《白帽子講Web安全》
2.《TCP\IP協議》
3.《數學之美》
4.《人類簡史》
5.《未來簡史》
6.《騰訊傳》
7.《古龍全集》(利用坐地鐵的時間)
8.《球狀閃電》
最後祝我與所有朋友2018越來越好
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述