讓我們一起來做安全測(cè)試吧~

今天梯皿,很多軟件并沒有經(jīng)過專門的安全測(cè)試便運(yùn)行在互聯(lián)網(wǎng)上邮辽,它們攜帶著各類安全漏洞直接暴露在公眾面前,其中一些漏洞甚至直指軟件所承載的核心敏感信息或業(yè)務(wù)邏輯。這些漏洞一旦被不懷好意者利用斟薇,很可能會(huì)給企業(yè)造成經(jīng)濟(jì)損失萄金,帶來負(fù)面聲譽(yù)影響的同時(shí)预愤,還可能被起訴遭到罰款等等钾虐,細(xì)思極恐。其中的一部分原因是企業(yè)本身安全意識(shí)不強(qiáng)吏廉,但是很多時(shí)候雖然軟件企業(yè)已經(jīng)開始意識(shí)到這些問題蠢络,卻苦于缺少專業(yè)的安全測(cè)試人員,他們不得不冒著極大的風(fēng)險(xiǎn)先上線賭一把運(yùn)氣再說迟蜜。

既然如此刹孔,我們測(cè)試人員作為質(zhì)量代言人怎能對(duì)此置之不理呢?

你也許會(huì)抱怨,安全測(cè)試水太深了髓霞,不知道從何下手卦睹。

安全測(cè)試并不遙遠(yuǎn)

? ? ? ? ? ? ? ? ? ? ? ? ? 是的,安全測(cè)試在軟件測(cè)試?yán)锩媸且粋€(gè)很特別的科目(或作“工種”)方库,每次一碰到這個(gè)科目结序,很多人都覺得這個(gè)科目應(yīng)該全權(quán)交給神秘的安全測(cè)試人員來管。這一個(gè)觀念導(dǎo)致很多測(cè)試人員徘徊在安全測(cè)試的門口卻遲遲不進(jìn)去纵潦,包括我自己徐鹤。

? ? ? ? ? ? ? ? ? ? ? ? ? 直到后來,我非常有幸能夠在不同規(guī)模的軟件開發(fā)項(xiàng)目上跟“神秘的安全測(cè)試人員”學(xué)習(xí)如何進(jìn)行安全測(cè)試邀层,發(fā)現(xiàn)“神秘的安全測(cè)試人員”不光是名字跟我們一樣都有“測(cè)試”二字返敬,所做的事情在本質(zhì)上也是跟我們測(cè)試人員有很多相通。

? ? ? ? ? ? ? ? ? ? ? ? ? 想想看我們都做過什么:

我們修改過url的參數(shù)寥院,對(duì)不對(duì)劲赠?他們也是!

? ? ? ? ? ? ? ? ? ? ? ? ? 我們?cè)跀?shù)據(jù)輸入處提供過不合法的數(shù)據(jù)秸谢,對(duì)不對(duì)凛澎?他們也是!

? ? ? ? ? ? ? ? ? ? ? ? ? 我們嘗試過修改只讀數(shù)據(jù)估蹄,對(duì)不對(duì)塑煎?他們也是!

? ? ? ? ? ? ? ? ? ? ? ? ? 我們也測(cè)過用戶會(huì)話是否如期timeout臭蚁,對(duì)不對(duì)最铁?他們也是!

Ok刊棕,這還不是全部。知道嗎待逞?他們也做測(cè)試計(jì)劃甥角、測(cè)試用例設(shè)計(jì)、bug分析與管理等等识樱。所以嗤无,安全測(cè)試離我們并沒有那么遙遠(yuǎn)。

? ? ? ? ? ? ? ? ? ? ? ? ? 當(dāng)然怜庸,我必須承認(rèn)当犯,安全測(cè)試是非常復(fù)雜的。一個(gè)專業(yè)的安全測(cè)試專家在某種程度上來說是一個(gè)全棧工程師割疾。所以嚎卫,想要在安全測(cè)試上一夜成才不太容易。不過好消息是宏榕,作為測(cè)試人員的我們卻有得天獨(dú)厚的優(yōu)勢(shì)拓诸,使我們能夠在安全測(cè)試上快速起步侵佃,幫助團(tuán)隊(duì)盡快展開預(yù)防并檢測(cè)安全漏洞的工作。

? ? ? ? ? ? ? ? ? ? ? ? ? 在這里我想要跟大家分享一下在敏捷開發(fā)團(tuán)隊(duì)中如何利用我們的測(cè)試經(jīng)驗(yàn)開展安全測(cè)試奠支。

安全測(cè)試和普通測(cè)試的相似性

? ? ? ? ? ? ? ? ? ? ? ? ? 首先馋辈,讓我們先來了解什么是安全測(cè)試,我們作為測(cè)試人員有什么可以直接用上的技能和經(jīng)驗(yàn)倍谜。

? ? ? ? ? ? ? ? ? ? ? ? ? 簡(jiǎn)單來說迈螟,安全測(cè)試其實(shí)就是一個(gè)發(fā)現(xiàn)軟件安全漏洞的過程,旨在保護(hù)軟件系統(tǒng)的數(shù)據(jù)與功能尔崔。它跟常規(guī)測(cè)試相似的地方至少有以下幾點(diǎn):

1. 目標(biāo)類似

不管是常規(guī)測(cè)試還是安全測(cè)試答毫,都有一個(gè)原則:預(yù)防勝于檢測(cè)。這個(gè)比較容易理解您旁,不管是常規(guī)測(cè)試的缺陷也好烙常,還是安全測(cè)試的漏洞也好,如果能預(yù)防使它不發(fā)生鹤盒,就省了后期的修復(fù)與驗(yàn)證工作蚕脏。如果不能成功的預(yù)防缺陷,能早一些發(fā)現(xiàn)的話侦锯,肯定比晚發(fā)現(xiàn)的修復(fù)的成本低驼鞭。

2. 在軟件生命周期中的過程類似

以敏捷開發(fā)團(tuán)隊(duì)為例,常規(guī)測(cè)試人員在各個(gè)階段的事情尺碰,安全測(cè)試人員也要做:

了解業(yè)務(wù)的需求挣棕,以避免混亂的測(cè)試優(yōu)先級(jí);

? ? ? ? ? ? ? ? ? ? ? ? ? 針對(duì)業(yè)務(wù)與系統(tǒng)功能設(shè)計(jì)用例:常規(guī)測(cè)試需要關(guān)注系統(tǒng)功能亲桥,安全測(cè)試同樣也不能脫離系統(tǒng)功能洛心;

? ? ? ? ? ? ? ? ? ? ? ? ? 與其他角色一起啟動(dòng)需求的開發(fā):溝通測(cè)試用例,避免因?yàn)闇贤ú蛔阍斐煞倒ぃ?/p>

? ? ? ? ? ? ? ? ? ? ? ? ? 與其他角色一起在開發(fā)環(huán)境驗(yàn)收需求:盡早提供反饋题篷,發(fā)現(xiàn)缺陷了開發(fā)可以馬上修正

? ? ? ? ? ? ? ? ? ? ? ? ? 在測(cè)試環(huán)境進(jìn)行全面測(cè)試:針對(duì)端到端的場(chǎng)景進(jìn)行測(cè)試词身,盡可能把第三方系統(tǒng)(如果有的話)也包括進(jìn)來;

? ? ? ? ? ? ? ? ? ? ? ? ? 分析并總結(jié)測(cè)試結(jié)果:整理問題清單法严,排列優(yōu)先級(jí);

? ? ? ? ? ? ? ? ? ? ? ? ? 反饋測(cè)試結(jié)果:把測(cè)試結(jié)果反饋給團(tuán)隊(duì)等干系人葫笼。

3. 測(cè)試用例很多重合

在面向終端用戶的測(cè)試場(chǎng)景上深啤,常規(guī)測(cè)試的用例與安全測(cè)試的用例是非常類似的。比如對(duì)于登錄系統(tǒng)的功能路星,不管是常規(guī)測(cè)試還是安全測(cè)試溯街,我們都會(huì)測(cè)試用戶輸入正確的用戶名是否可以登錄,輸入錯(cuò)誤的用戶名或密碼是否系統(tǒng)會(huì)如何反應(yīng)。

? ? ? ? ? ? ? ? ? ? ? ? ? 比如我曾經(jīng)工作的一個(gè)搜集報(bào)稅人信息的系統(tǒng)苫幢,不管是常規(guī)測(cè)試還是安全測(cè)試访诱,常規(guī)測(cè)試會(huì)測(cè)試系統(tǒng)的登錄,系統(tǒng)信息的錄入與編輯韩肝,文件的上傳等等触菜,安全測(cè)試也會(huì)測(cè)試這些業(yè)務(wù)場(chǎng)景。

? ? ? ? ? ? ? ? ? ? ? ? ? 因?yàn)樵诿恳粋€(gè)終端用戶可以操作的場(chǎng)景上哀峻,都可能會(huì)有安全漏洞存在涡相。所以,有了常規(guī)測(cè)試的經(jīng)驗(yàn)剩蟀,我們就相當(dāng)于有了不少安全測(cè)試用例的儲(chǔ)備催蝗。

4. 都需要有探索的過程

測(cè)試是一個(gè)了解軟件系統(tǒng)是否完成我們預(yù)期的過程,也是探索系統(tǒng)還有哪些我們沒有預(yù)期的行為的過程育特。安全測(cè)試的過程需要把探索的目標(biāo)轉(zhuǎn)向安全漏洞丙号。當(dāng)我們這么做時(shí),我們同樣會(huì)得到很多探索的樂趣缰冤。

5. 都要有測(cè)試人員必備的“懷疑態(tài)度”

相信咱們測(cè)試人員都非常熟悉一個(gè)場(chǎng)景--開發(fā)人員說:“我只做了一個(gè)很小的代碼改動(dòng)犬缨。”然后我們帶著友好而警惕的態(tài)度棉浸,發(fā)現(xiàn)這個(gè)“很小的改動(dòng)”引發(fā)了很大的問題怀薛。不管是在安全測(cè)試還是非安全測(cè)試,這個(gè)警惕性是我們都需要保持的良好傳統(tǒng)迷郑。

? ? ? ? ? ? ? ? ? ? ? ? ? 那么枝恋,有了這么多類似的地方,還缺什么呢嗡害?如果想要做專家焚碌,還差很多。但是如果想馬上安全測(cè)試上起步霸妹,我們可以先做下面的改變十电。

安全測(cè)試的三步曲

? ? ? ? ? ? ? ? ? ? ? ? ? 第一,轉(zhuǎn)換視角

在我看來抑堡,不管是帶著全棧的經(jīng)驗(yàn)摆出,還是只有部分技術(shù)知識(shí)朗徊,想要做好安全測(cè)試必須先轉(zhuǎn)換我們觀察軟件的視角首妖。舉個(gè)例子,讓我們看看下這幅畫:

同樣一幅畫爷恳,有人一眼看過去看到的是兩個(gè)人臉有缆,而有人看到的是一個(gè)花瓶。這就是觀察的視角不同造成的。

? ? ? ? ? ? ? ? ? ? ? ? ? 在我剛開始接觸安全測(cè)試時(shí)就很深的體會(huì)到了這一點(diǎn)棚壁。當(dāng)時(shí)我在測(cè)試一個(gè)Web應(yīng)用的用戶登錄功能杯矩。當(dāng)我輸入錯(cuò)誤的用戶名來試著登陸時(shí),瀏覽器上的提示信息為“該用戶名不存在”袖外。當(dāng)我嘗試正確的用戶名而錯(cuò)誤的密碼時(shí)史隆,提示信息變成“密碼輸入錯(cuò)誤÷椋”對(duì)于這個(gè)清晰的錯(cuò)誤提示我非常滿意泌射。試想我若是一個(gè)真實(shí)的終端用戶,這個(gè)信息有效的幫助我縮小我所要糾錯(cuò)的范圍鬓照,提高效率熔酷,非常好。

? ? ? ? ? ? ? ? ? ? ? ? ? 可是豺裆,就在我身邊坐著的安全測(cè)試人員馬上跳了出來:“這個(gè)提示信息需要改拒秘!敏感信息暴露了!”看著我一臉茫然臭猜,這位安全測(cè)試人員告訴我躺酒,通過我們的提示信息,惡意的系統(tǒng)使用者可以推測(cè)出哪些用戶名已經(jīng)存在于系統(tǒng)中获讳,然后利用這些用戶名可以再進(jìn)行密碼的暴力破解阴颖,縮小破解的范圍。所以丐膝,這個(gè)信息雖然為合法用戶提供了便利量愧,也為不懷好意的系統(tǒng)使用者提供了? ? ? ? ? ? ? ? ? ? ? ? ? 便利。而往往這種便利為惡意的系統(tǒng)使用者帶來的好處遠(yuǎn)大于給合法用戶帶來的好處帅矗。

? ? ? ? ? ? ? ? ? ? ? ? ? 這個(gè)經(jīng)歷讓我受震動(dòng)的同時(shí)偎肃,也意識(shí)到以前可能很多安全漏洞已經(jīng)擺在我的面前,我卻沒有看出來浑此,因?yàn)槲野阉鼈冞^濾了累颂。事實(shí)證明,在后來經(jīng)歷的不同項(xiàng)目中凛俱,而當(dāng)我轉(zhuǎn)換了視角紊馏,有些安全漏洞不需要我去找,而是自己跑到我眼前來的蒲犬。真是得來全不費(fèi)功夫朱监。

第二,改變測(cè)試中模擬的對(duì)象

為了能以不同的視角來觀察軟件原叮,我們必須改變我們所模擬的對(duì)象赫编。這也是一個(gè)讓我們刻意練習(xí)轉(zhuǎn)換視角的有效方法巡蘸。

? ? ? ? ? ? ? ? ? ? ? ? ? 我們?cè)谧龇前踩珳y(cè)試的時(shí)候通常把自己想象成一個(gè)合法用戶,然后開始驗(yàn)證系統(tǒng)是否能完成預(yù)設(shè)的目標(biāo)擂送。比如對(duì)于一個(gè)網(wǎng)上商城悦荒,我們會(huì)驗(yàn)證系統(tǒng)是否能讓用戶完成商品的瀏覽與購(gòu)買,我們也會(huì)測(cè)試一些異常的行為嘹吨,比如購(gòu)買的商品數(shù)量不是數(shù)字而是一串無意義的字母時(shí)搬味,目的是看系統(tǒng)是否能比較優(yōu)雅的做出回應(yīng)。我們這么測(cè)試的目的往往是為了確保用戶誤操作以后還能夠繼續(xù)他們的購(gòu)買蟀拷,或者說不要給系統(tǒng)造成什么嚴(yán)重的傷害身腻。

? ? ? ? ? ? ? ? ? ? ? ? ? 如果要做安全測(cè)試,我們則必須去模擬系統(tǒng)的另一類使用者-惡意用戶匹厘。他們的目的是為了尋找系統(tǒng)中可鉆的漏洞嘀趟。比如同樣是一個(gè)網(wǎng)上商城,惡意用戶的目標(biāo)之一就是要想辦法以較少的錢愈诚,甚至不付錢就能拿到商品她按。所以,如果惡意用戶進(jìn)行了“誤操作”炕柔,他們不會(huì)停留在“誤操作”酌泰,而是通過“誤操作”來看系統(tǒng)是否給自己提供更多的線索。

? ? ? ? ? ? ? ? ? ? ? ? ? 所以匕累,我們轉(zhuǎn)換我們測(cè)試時(shí)所模擬的對(duì)象陵刹,把思維從一個(gè)合法用戶的視角中拉出來,轉(zhuǎn)換成一個(gè)惡意用戶欢嘿。這需要一點(diǎn)時(shí)間衰琐,就如同之前看到的畫,如果我們一開始看到的是人臉炼蹦,要想下一次第一眼看到的是花瓶羡宙,我們需要時(shí)間來刻意練習(xí)。

第三掐隐,使用專用的測(cè)試工具

有了思維的轉(zhuǎn)換狗热,我們可以加入新的測(cè)試想法。但是虑省,在具體做安全測(cè)試的時(shí)候我們會(huì)發(fā)現(xiàn)并不是那么容易去模擬惡意用戶的行為匿刮。畢竟系統(tǒng)的前端會(huì)給我們很多的屏障。而且惡意用戶可不總都是從系統(tǒng)前門進(jìn)去的探颈。這時(shí)候熟丸,使用一些工具,比如OWASP? ? ? ? ? ? ? ? ? ? ? ? ? Zap(https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project)膝擂、Burp(https://portswigger.net/burp/)等是非常有幫助的虑啤。我們可以在系統(tǒng)界面上執(zhí)行功能測(cè)試的用例,用這些工具來獲取http請(qǐng)求架馋,篡改后發(fā)送給后臺(tái)服務(wù)器狞山。有了這些實(shí)用又比較容易上手的工具,我們就可以執(zhí)行很多惡意用戶的操作場(chǎng)景了叉寂。

? ? ? ? ? ? ? ? ? ? ? ? ? 能做到這三點(diǎn)萍启,起步就基本夠用了。

舉個(gè)例子吧

? ? ? ? ? ? ? ? ? ? ? ? ? 下面讓我們以網(wǎng)上商城的買家在商品評(píng)價(jià)中上傳圖片這個(gè)功能來講講如何實(shí)踐這“三板斧”屏鳍。假設(shè)我們從項(xiàng)目初期就加入了勘纯,那么我們大致有七件事情要做:

識(shí)別系統(tǒng)中有價(jià)值的數(shù)據(jù);

? ? ? ? ? ? ? ? ? ? ? ? ? 在需求分析階段加入惡意用戶需求钓瞭;

? ? ? ? ? ? ? ? ? ? ? ? ? 針對(duì)惡意用戶需求設(shè)計(jì)測(cè)試用例驳遵;

? ? ? ? ? ? ? ? ? ? ? ? ? 參與啟動(dòng)惡意需求的開發(fā);

? ? ? ? ? ? ? ? ? ? ? ? ? 在開發(fā)環(huán)境驗(yàn)收惡意需求的實(shí)現(xiàn)山涡;

? ? ? ? ? ? ? ? ? ? ? ? ? 在測(cè)試環(huán)境中進(jìn)行安全測(cè)試堤结;

? ? ? ? ? ? ? ? ? ? ? ? ? 向團(tuán)隊(duì)反饋所發(fā)現(xiàn)的安全漏洞。

? ? ? ? ? ? ? ? ? ? ? ? ? 不要擔(dān)心鸭丛,這不是7個(gè)全新的事情竞穷。這只是在每個(gè)需要測(cè)試人員出現(xiàn)的地方增加了安全的工作而已。

1. 識(shí)別系統(tǒng)中有價(jià)值的數(shù)據(jù)

很多人認(rèn)為執(zhí)行測(cè)試才是測(cè)試鳞溉,而我們的安全測(cè)試從這里就開始了瘾带。

? ? ? ? ? ? ? ? ? ? ? ? ? 了解了業(yè)務(wù)以后,我們需要考慮系統(tǒng)中會(huì)有什么有價(jià)值的數(shù)據(jù)熟菲。這是為下一步加入惡意用戶需求做準(zhǔn)備看政。對(duì)于一個(gè)網(wǎng)上商城,有價(jià)值的數(shù)據(jù)可以包括產(chǎn)品信息抄罕、訂單信息帽衙、用戶信息、支付贞绵,等等厉萝。

? ? ? ? ? ? ? ? ? ? ? ? ? 這個(gè)環(huán)節(jié)對(duì)我們測(cè)試人員來說并沒有太多額外的工作,畢竟我們做非安全測(cè)試的時(shí)候也是需要了解業(yè)務(wù)榨崩。不過要注意了谴垫,我們要測(cè)試的“圖片上傳功能”是一個(gè)涉及有價(jià)值數(shù)據(jù)的功能。我們需要提高警惕了母蛛。

軟件測(cè)試學(xué)習(xí)交流群:747981058

2. 在需求階段加入惡意用戶需求

惡意用戶需求是用來記錄惡意用戶想要在系統(tǒng)中達(dá)到的目的翩剪。與普通用戶需求的區(qū)別是,我們不是要去實(shí)現(xiàn)它彩郊,而是使用它幫來助我們遠(yuǎn)離對(duì)系統(tǒng)使用者“不恰當(dāng)?shù)男湃巍鼻巴洹MǔN覀冃枰槍?duì)每一個(gè)合法用戶需求來增加一個(gè)或多個(gè)相對(duì)應(yīng)的惡意用戶需求蚪缀。

? ? ? ? ? ? ? ? ? ? ? ? ? 舉個(gè)例子,如果我們這個(gè)“圖片上傳功能”的合法用戶需求為:

? ? ? ? ? ? ? ? ? ? ? ? ? 作為一個(gè)買家恕出,我想在對(duì)商品進(jìn)行評(píng)價(jià)的時(shí)候上傳圖片作為買家秀询枚,以便于參加返現(xiàn)營(yíng)銷活動(dòng)。

? ? ? ? ? ? ? ? ? ? ? ? ? 那么對(duì)應(yīng)的惡意用戶需求可以是:

? ? ? ? ? ? ? ? ? ? ? ? ? 作為一個(gè)惡意用戶浙巫,我想破壞買家秀返現(xiàn)活動(dòng)金蜀,以便破壞商城的營(yíng)銷活動(dòng)。

“破壞買家秀返現(xiàn)活動(dòng)”是一個(gè)大的目標(biāo)的畴。為了設(shè)計(jì)用例方便渊抄,它可以被細(xì)分為一系列小目標(biāo)。比如:

讓用戶無法上傳圖片

? ? ? ? ? ? ? ? ? ? ? ? ? 讓頁(yè)面無法正確顯示圖片

? ? ? ? ? ? ? ? ? ? ? ? ? 等等

? ? ? ? ? ? ? ? ? ? ? ? ? 有了惡意用戶需求的主干信息丧裁,我們就可以開始下一步設(shè)計(jì)安全測(cè)試用例了护桦。

3. 針對(duì)“惡意用戶需求”設(shè)計(jì)測(cè)試用例

現(xiàn)在我們需要做的是努力把自己限制在“惡意用戶”的角度做頭腦風(fēng)暴:“到底有什么方法可以使買家無法上傳圖片信息呢?”煎娇,? ? ? ? ? ? ? ? ? ? ? ? ? ? “讓頁(yè)面無法正確顯示買家秀圖片又怎么做到嘶炭?”嗯,也許最直接的辦法就是讓服務(wù)器所在的機(jī)房斷電逊桦、斷網(wǎng)之類的眨猎。這是些不錯(cuò)的想法,雖然執(zhí)行難度有點(diǎn)大强经。沒關(guān)系睡陪,記錄下來。除此之外匿情,我們還可以有其他測(cè)試用例兰迫,比如:

使存儲(chǔ)圖片的磁盤空間被占滿而無法接受新的圖片;

? ? ? ? ? ? ? ? ? ? ? ? ? 使處理上傳圖片的進(jìn)程繁忙而無法接受新的上傳任務(wù)炬称;

? ? ? ? ? ? ? ? ? ? ? ? ? 上傳特別大的圖片使用戶的客戶端需要很長(zhǎng)時(shí)間才能下載完

? ? ? ? ? ? ? ? ? ? ? ? ? 上傳偽裝成圖片的惡意代碼汁果,進(jìn)一步獲取服務(wù)器權(quán)限,刪除所有的買家秀圖片玲躯;

等等

? ? ? ? ? ? ? ? ? ? ? ? ? 如果這個(gè)時(shí)候想到新的測(cè)試用例也同樣記錄下來据德,比如“我想不購(gòu)買也上傳買家秀圖片以獲得返現(xiàn)”之類的。

? ? ? ? ? ? ? ? ? ? ? ? ? 不用太擔(dān)心這個(gè)階段的測(cè)試用例過于“瘋狂”或者不夠完整跷车,畢竟我們對(duì)于系統(tǒng)的實(shí)現(xiàn)還不是很了解棘利。我們會(huì)在接下來的環(huán)節(jié)中完善具體的步驟。

4. 參與啟動(dòng)惡意需求的開發(fā)(evil story kickoff)

在開發(fā)人員開始開發(fā)合法用戶需求之前朽缴,我們需要跟業(yè)務(wù)分析人員善玫、開發(fā)人員一起溝通需求的內(nèi)容。在敏捷軟件開發(fā)項(xiàng)目中我們叫它story? ? ? ? ? ? ? ? ? ? ? ? ? kickoff密强,即用戶故事啟動(dòng)茅郎。當(dāng)有了對(duì)應(yīng)的惡意用戶需求時(shí)蜗元,我們必然也要把它也加到啟動(dòng)的范圍里。目的是把我們頭腦風(fēng)暴出來的測(cè)試用例跟所有的角色來溝通系冗。預(yù)防勝于檢測(cè)奕扣。

5. 在開發(fā)環(huán)境驗(yàn)收惡意需求的實(shí)現(xiàn)

100%預(yù)防軟件的缺陷與漏洞是不太可能的,所以這個(gè)環(huán)節(jié)的存在是為了提早反饋毕谴。

? ? ? ? ? ? ? ? ? ? ? ? ? 我曾經(jīng)經(jīng)歷過一個(gè)項(xiàng)目,都快上線了才決定做安全測(cè)試距芬,結(jié)果測(cè)出來的問題之一是用戶會(huì)話(user session)不能正確過期的問題涝开,經(jīng)過一番研究,發(fā)現(xiàn)需要對(duì)系統(tǒng)設(shè)計(jì)的架構(gòu)進(jìn)行比較大的修改框仔,只能做個(gè)臨時(shí)的修復(fù)讓系統(tǒng)先上線舀武,然后再把系統(tǒng)的架構(gòu)給改了,重寫這部分功能离斩,重新測(cè)試银舱。代價(jià)非常高。所以不管是安全測(cè)試還是非安全測(cè)試跛梗,”在開發(fā)環(huán)境驗(yàn)收惡意需求的實(shí)現(xiàn)“這個(gè)步驟都不能缺少寻馏。

? ? ? ? ? ? ? ? ? ? ? ? ? 而這個(gè)環(huán)節(jié)存在的第二個(gè)目的是讓我們可以從開發(fā)人員那里得到支持-具體實(shí)施的細(xì)節(jié),幫助我們完善具體的測(cè)試用例核偿。比如在這個(gè)時(shí)間點(diǎn)我們?nèi)魪拈_發(fā)人員那里得知系統(tǒng)的后臺(tái)沒有對(duì)圖片上傳者做身份驗(yàn)證诚欠,我們就可以至少增加一個(gè)測(cè)試的用例:“惡意用戶以其他用戶的身份上傳一個(gè)風(fēng)馬牛不相及的圖片”。有時(shí)候錯(cuò)誤的圖片比沒有圖片更具有殺傷力漾岳。

6. 在測(cè)試環(huán)境中進(jìn)行安全測(cè)試

終于到了運(yùn)行測(cè)試的階段轰绵。可能這個(gè)時(shí)候我們之前想到的測(cè)試用例已經(jīng)被開發(fā)人員給解決尼荆。如果是這樣那就太好了左腔。但是,事實(shí)并非有這么美好捅儒。第一液样,可能這些用例只是在開發(fā)環(huán)境上成功通過了,但是在理想的測(cè)試環(huán)境里巧还,也就是類產(chǎn)品環(huán)境里蓄愁,這些用例可能并不能完全通過;第二狞悲,肯定還有其他需要探索的地方撮抓。這時(shí)我們就可以用OWASP? ? ? ? ? ? ? ? ? ? ? ? ? Zap、Burp這樣的工具來輔助我們把之前的安全測(cè)試用例執(zhí)行一次摇锋,同時(shí)還再可以對(duì)系統(tǒng)的安全性做一下探索測(cè)試丹拯。

7. 向團(tuán)隊(duì)反饋所發(fā)現(xiàn)的安全漏洞

都測(cè)得差不多的時(shí)候站超,我們就可以向團(tuán)隊(duì)以及相關(guān)干系人匯報(bào)安全測(cè)試的結(jié)果了。跟非安全測(cè)試不同的地方是乖酬,當(dāng)我們反饋安全漏洞的時(shí)候死相,要考慮是否不同漏洞結(jié)合起來會(huì)增加系統(tǒng)的安全風(fēng)險(xiǎn)。舉個(gè)例子:如果有兩個(gè)安全漏洞咬像,一個(gè)是系統(tǒng)沒有很強(qiáng)的用戶賬戶密碼規(guī)規(guī)則算撮,另一個(gè)是系統(tǒng)沒有對(duì)上傳圖片的大小做限制,那么惡意

用戶把這兩個(gè)漏洞一結(jié)合起來县昂,事情就比原來風(fēng)險(xiǎn)大很多肮柜。那么我們就必須建議提高這兩個(gè)漏洞中任意一個(gè)的優(yōu)先級(jí)。

當(dāng)我們用“三板斧”走完這七步以后倒彰,我們已經(jīng)可以把很多安全漏洞都挖出來了审洞。是不是沒有想象中的難?所以待讳,測(cè)試同仁們芒澜,讓我們做安全測(cè)試吧!

如果對(duì)軟件測(cè)試有興趣创淡,想了解更多的測(cè)試知識(shí)痴晦,解決測(cè)試問題,以及入門指導(dǎo),幫你解決測(cè)試中遇到的困惑琳彩,我們這里有技術(shù)高手阅酪。如果你正在找工作或者剛剛學(xué)校出來,又或者已經(jīng)工作但是經(jīng)常覺得難點(diǎn)很多汁针,覺得自己測(cè)試方面學(xué)的不夠精想要繼續(xù)學(xué)習(xí)的术辐,想轉(zhuǎn)行怕學(xué)不會(huì)的,可以加入我的QQ群測(cè)試學(xué)習(xí)大家庭:747981058

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末施无,一起剝皮案震驚了整個(gè)濱河市辉词,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌猾骡,老刑警劉巖瑞躺,帶你破解...
    沈念sama閱讀 211,948評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異兴想,居然都是意外死亡幢哨,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門嫂便,熙熙樓的掌柜王于貴愁眉苦臉地迎上來捞镰,“玉大人,你說我怎么就攤上這事“妒郏” “怎么了践樱?”我有些...
    開封第一講書人閱讀 157,490評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)凸丸。 經(jīng)常有香客問我拷邢,道長(zhǎng),這世上最難降的妖魔是什么屎慢? 我笑而不...
    開封第一講書人閱讀 56,521評(píng)論 1 284
  • 正文 為了忘掉前任瞭稼,我火速辦了婚禮,結(jié)果婚禮上腻惠,老公的妹妹穿的比我還像新娘环肘。我一直安慰自己,他們只是感情好妖枚,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評(píng)論 6 386
  • 文/花漫 我一把揭開白布廷臼。 她就那樣靜靜地躺著苍在,像睡著了一般绝页。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上寂恬,一...
    開封第一講書人閱讀 49,842評(píng)論 1 290
  • 那天续誉,我揣著相機(jī)與錄音,去河邊找鬼初肉。 笑死酷鸦,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的牙咏。 我是一名探鬼主播臼隔,決...
    沈念sama閱讀 38,997評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼妄壶!你這毒婦竟也來了摔握?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,741評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤丁寄,失蹤者是張志新(化名)和其女友劉穎氨淌,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體伊磺,經(jīng)...
    沈念sama閱讀 44,203評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡盛正,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了屑埋。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片豪筝。...
    茶點(diǎn)故事閱讀 38,673評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出壤蚜,到底是詐尸還是另有隱情即寡,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評(píng)論 4 330
  • 正文 年R本政府宣布袜刷,位于F島的核電站聪富,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏著蟹。R本人自食惡果不足惜墩蔓,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望萧豆。 院中可真熱鬧奸披,春花似錦、人聲如沸涮雷。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)洪鸭。三九已至样刷,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間览爵,已是汗流浹背置鼻。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蜓竹,地道東北人箕母。 一個(gè)月前我還...
    沈念sama閱讀 46,394評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像俱济,于是被迫代替她去往敵國(guó)和親嘶是。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • 今天,很多的軟件并沒有經(jīng)過專門的安全測(cè)試就被放到互聯(lián)網(wǎng)上左医,它們攜帶著各類安全漏洞暴露在公眾面前授帕,其中一些漏洞甚至直...
    ThoughtWorks閱讀 1,455評(píng)論 3 38
  • 文章來自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鵬閱讀 9,189評(píng)論 2 126
  • 1****、問:你在測(cè)試中發(fā)現(xiàn)了一個(gè)bug****浮梢,但是開發(fā)經(jīng)理認(rèn)為這不是一個(gè)bug****跛十,你應(yīng)該怎樣解決? 首...
    蛋炒飯_By閱讀 5,291評(píng)論 1 94
  • 1.測(cè)試與軟件模型 軟件開發(fā)生命周期模型指的是軟件開發(fā)全過程秕硝、活動(dòng)和任務(wù)的結(jié)構(gòu)性框架芥映。軟件項(xiàng)目的開發(fā)包括:需求、設(shè)...
    Mr希靈閱讀 21,949評(píng)論 7 278
  • 原來的努力換來今天的相聚!
    銀河劇場(chǎng)閱讀 179評(píng)論 0 0