假設(shè)這個完成了(1)

假設(shè)這個完成了(1)

目錄:


引子:

在開發(fā)過程中蛛株,Boss常常跟我提的一句話就是:“假設(shè)這個東西完成了”。
一開始,沒聽懂這句話的意思征唬,只是照著去做,后來慢慢自己體會到這句話的奧妙了茁彭。

從幾個工具的開發(fā)過程來談?wù)勥@句話的奧妙吧~


poc掃描器的開發(fā):

需求的產(chǎn)生:

當(dāng)一些新的危害性很大的漏洞爆發(fā)出來后鳍鸵,由于某些原因,公司的web掃描器無法及時的添加掃描規(guī)則尉间,也就是說不具備掃描新型高危漏洞的能力偿乖。

所以問題就來了,同時也產(chǎn)生了新的需求:要在原有的基礎(chǔ)上哲嘲,寫一個能夠掃出高危漏洞的poc掃描器贪薪。


什么是poc掃描器:

科普一下,啥是poc掃描器:

poc : proof of concept翻譯過來就是概念驗證眠副,就是要找出一個方法去驗證某種東西是否存在或者它是真是假画切。

舉個例子,比如說囱怕,《木蘭詩》中有一句話說到雙兔傍地走霍弹,安能辨我是雄雌,這個時候娃弓,雄雌兩兔一起并排著跑典格,怎能辨別哪個是雄兔,哪個是雌兔呢台丛?如果你能找到一個方法耍缴,來檢驗、分辨出這兩只兔子是真是假,那么你的這個方法就是所謂的poc防嗡,概念驗證了变汪。

延伸到安全這塊的意思就是,提供一個方法蚁趁,去驗證某個漏洞是否存在裙盾。

一般情況下,一般的思路就是:

  • 往一個網(wǎng)站或一個服務(wù)器的某個地方他嫡、參數(shù)發(fā)送一個特意構(gòu)造的數(shù)據(jù)(抓起一只兔子)
  • 從返回包中的數(shù)據(jù)的一些特征闷煤,進(jìn)行判斷(看兔子有木有小jj)

poc掃描器的難點1:找兔子

如果你想判斷兔子是公是母,那你先要抓到兔子啊涮瞻,你才好使出你的判斷大法:看兔子有木有小jj鲤拿?!

也就是說署咽,你要找到漏洞環(huán)境先近顷,你才好使出你的判斷大法:從返回包中看特征

第一個難點來了宁否,去哪里找兔子呢窒升?

  • 稍微縮小目標(biāo)
    • 去動物園找、你可以專門去兔子樂園找
  • 再縮小目標(biāo):
    • 去專賣兔子的寵物店找

同樣的慕匠,在web安全中饱须,去哪里找漏洞環(huán)境呢?

  • 真實的公網(wǎng)環(huán)境上
    • 稍微縮小目標(biāo)台谊,通過zoomeye,fofa,Shodan來找
  • 離線的漏洞環(huán)境
    • 再縮小目標(biāo)蓉媳,github上有幾個提供漏洞的docker環(huán)境的,美滋滋

poc掃描器的難點2:看兔子有木有小jj

如果此時你抓到了兔子了锅铅,滿心歡喜的想要看兔子有木有小jj酪呻,可是并非每只兔子的那個特征都是那么明顯的,萬一你抓到一只怪物兔子呢盐须。萬一是雌雄同體玩荠、萬一那兔子的小jj長滿了毛。贼邓。阶冈。。真拿不準(zhǔn)你能判斷出它是公是母塑径,這個時候就考驗?zāi)愕难哿α恕?/p>

有兩種方法:

  • 比較明顯的話女坑,就直接肉眼判斷、再不行就撥開兔子肚子的毛來看
  • 不明顯的話晓勇,就采取旁門左道堂飞、比如解剖、拿一只母兔子看那只兔子有沒什么反應(yīng)绑咱。绰筛。。

同樣的描融,如果你找到了漏洞環(huán)境铝噩,那么你滿心歡喜的想構(gòu)造數(shù)據(jù)包,去看特征窿克,由于種種原因骏庸,這個時候也未必能看到你想要的特征。

有兩種方法:

  • 一般情況下年叮,有回顯的漏洞特征具被,比較好判斷,用某個特征符去匹配就行
  • 如果是無回顯的情況下只损,只能運用旁門左道來間接證明了一姿。dnslog、或者時間上的延遲來判斷跃惫。

poc掃描器的難點3:找到那只真正的兔子

如果只是雙兔傍地走的話叮叹,這個時候還好,你的眼前只有2只兔子爆存,可是蛉顽。。先较。如果是滿草原的兔子呢携冤?你該怎么辦?更何況當(dāng)中還要摻雜著別的動物闲勺,什么小松鼠噪叙、小老鼠、小貓的霉翔。睁蕾。。

有兩種方法:

  • 1债朵、全部都抓起來子眶。。序芦。這樣的好處是不會漏臭杰。。但是有點傻
  • 2谚中、先給動物分類渴杆,然后打上標(biāo)簽寥枝、按標(biāo)簽去找到你要的對應(yīng)的動物

同樣的,在真實的網(wǎng)絡(luò)環(huán)境中磁奖,你要掃描的資產(chǎn)中含有很多web組件囊拜,你要怎么判斷你要找出哪個組件來進(jìn)行漏洞證明呢?

有兩種方法:

  • 1比搭、暴力的方法:遍歷冠跷、全部、FullScan

    • 對爬取得到的所有鏈接身诺、都往對應(yīng)的位置發(fā)送構(gòu)造好的數(shù)據(jù)包
  • 2蜜托、縮小范圍、QuickScan

    • 先指紋識別霉赡、縮小范圍后橄务、再往特定的地方去打數(shù)據(jù)包

實際開發(fā)過程中:

由于以上的3個難點:

  • 找兔子
  • 看兔子有木有小jj
  • 找到那只真正的兔子

搞得我在開發(fā)這個poc掃描器的時候一頭霧水,選了一個poc后穴亏,一開始執(zhí)著于這個poc驗證率要準(zhǔn)確仪糖,要找到對應(yīng)的漏洞環(huán)境驗證后、才能用迫肖。

那些天锅劝,boss反復(fù)提了幾句話

  • 你不要執(zhí)著于某個poc的驗證率,要假設(shè)這個poc能用
  • 然后要先把整個框架寫出來
  • 一個事情要先完成個百分之80后蟆湖,再慢慢去修改細(xì)節(jié)故爵。而不是一開始就糾結(jié)于一些點
  • 再這樣糾結(jié)下去,過了一兩個星期后這個事情還是沒完成大部分的內(nèi)容隅津,就會變得棘手了

通俗點的說:

  • 你不要執(zhí)著于一開始抓到一只兔子诬垂、就一直反反復(fù)復(fù)看它有沒有小jj
  • 你要把整個框架即找兔子、抓兔子伦仍、驗證兔子的這個流程先搞定
  • 不然一兩個星期后结窘,你手里還是只有一兩只兔子,整件事情就會很棘手了

我當(dāng)時還是有點執(zhí)著于那個點:一個準(zhǔn)確的Poc才能上架
但是總的開發(fā)思路還是按照boss的說法去做的充蓝,現(xiàn)在回過頭來想隧枫,路子還是挺對的,保持著一個比較良好的開發(fā)節(jié)奏谓苟。

當(dāng)然官脓,我自己也額外加班,把自己執(zhí)著的點給完善了涝焙。


總結(jié):

良好的開發(fā)節(jié)奏:

  • 在開發(fā)一個比較大的工程卑笨、項目的時候,難免會遇到一些棘手的點仑撞。
  • 這個時候赤兴,如果這個棘手的點一時無法解決妖滔,那么可以先放一放。
  • 一些比較簡單的點桶良,花較少的時間就可以做完座舍,這個時候整個項目的進(jìn)度就會很快。
  • 當(dāng)整個項目的進(jìn)度到了八九成之后艺普,再回過頭來簸州,把難點一個個的逐步擊破鉴竭。

大局觀:

在整個項目開發(fā)的過程中歧譬,boss的整個大局觀還是比我強(qiáng)太多了。搏存。

一個概念瑰步、一個需求到的一個工程化的、可用的項目(產(chǎn)品)的整個大局觀值得去細(xì)細(xì)體會和捉摸璧眠。

這種大局觀應(yīng)該是經(jīng)驗跟思考堆起來的缩焦,目前來說不太懂。责静。袁滥。


假設(shè)這個完成了:

通常我們有個to do list


一般情況下,都是會順序的從第一點做到最后一點灾螃,如果當(dāng)中某個點卡住了题翻,我們就會在上面花費很多時間。如果不巧的是難點出在前面幾個點腰鬼,那么我們的整個進(jìn)度就會停滯不前嵌赠。

這個時候,我們要提醒自己一句熄赡。

  • 假設(shè)這個完成了

這句話很奇妙姜挺,雖然聽起來很虛,但是可以使你暫時不拘泥于小結(jié)彼硫,而是從大局的角度去看待問題炊豪,對整個大局觀有個比較好的把握,而不是順序的去逐個解決問題拧篮,而是有種倒推的感覺溜在。

  • 反過來想

就是從結(jié)果往回看,如果要達(dá)到這個結(jié)果他托,我們需要做什么掖肋,這當(dāng)中存在著一種必要性的思維,對于解決問題來說是很有益處的赏参。

  • 最后再舉個例子

比如說我們要搭一條小船志笼,如果在前期搭建過程中沿盅,我們被材料這個問題困擾著,猶豫著哪個材料是最好的纫溃,而遲遲沒有動手開始搭建小船腰涧,那很可能數(shù)天過去了,我們的小船還沒有成型紊浩。

如果我們一開始選擇跳過一些難點窖铡,先選一種較好的材料就開始著手于搭建起整個小船,很可能數(shù)天過去了坊谁,我們要的小船就基本成型了费彼,基本可以用了。

回過頭想口芍,是否選用了最好的材料可能也不是那么重要了箍铲。

整個過程是受到多因素影響的,每個因素對于最終結(jié)果的影響程度是不一樣的鬓椭。

  • 如果從某個點來說颠猴,那個點確實很重要
  • 但是從面來看,可能當(dāng)時你執(zhí)著的那個點變得沒有那么重要了小染。

inspire&more:

伴隨著近代科學(xué)理性的高揚翘瓮,人類步入了物質(zhì)財富極大豐富、技術(shù)文明高度發(fā)達(dá)的現(xiàn)代社會裤翩,黑暗時代的迷信和蒙昧被遠(yuǎn)遠(yuǎn)地拋棄到了歷史的廢墟中资盅,但是另一種“謬誤、無知岛都、盲目律姨、危難”卻悄無聲息地隱藏在科學(xué)理性的暗影中。莫蘭指出:它們“產(chǎn)生于我們認(rèn)識的一種肢解性的組織方式臼疫,無能認(rèn)識和理解現(xiàn)實的復(fù)雜性”择份,這是一種“分離/還原/單方面”的“簡單性范式

--- 《復(fù)雜性思想導(dǎo)論》埃德加·莫蘭

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末烫堤,一起剝皮案震驚了整個濱河市荣赶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌鸽斟,老刑警劉巖拔创,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異富蓄,居然都是意外死亡剩燥,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來灭红,“玉大人侣滩,你說我怎么就攤上這事”淝埽” “怎么了君珠?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長娇斑。 經(jīng)常有香客問我策添,道長,這世上最難降的妖魔是什么毫缆? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任唯竹,我火速辦了婚禮,結(jié)果婚禮上悔醋,老公的妹妹穿的比我還像新娘摩窃。我一直安慰自己兽叮,他們只是感情好芬骄,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鹦聪,像睡著了一般账阻。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上泽本,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天淘太,我揣著相機(jī)與錄音,去河邊找鬼规丽。 笑死蒲牧,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的赌莺。 我是一名探鬼主播冰抢,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼艘狭!你這毒婦竟也來了挎扰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤巢音,失蹤者是張志新(化名)和其女友劉穎遵倦,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體官撼,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡梧躺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了傲绣。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片掠哥。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡棘脐,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出龙致,到底是詐尸還是另有隱情蛀缝,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布目代,位于F島的核電站屈梁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏榛了。R本人自食惡果不足惜在讶,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望霜大。 院中可真熱鬧构哺,春花似錦、人聲如沸战坤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽途茫。三九已至碟嘴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間囊卜,已是汗流浹背娜扇。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留栅组,地道東北人雀瓢。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像玉掸,于是被迫代替她去往敵國和親刃麸。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354