當(dāng)前位置:首頁(yè) > IT技術(shù) > 其他 > 正文

課程練習(xí) - 軟件安全
2022-05-11 11:03:28

第一單元

1.軟件是程序、()和()的集合體。

第一空:?

  文檔

第二空:?

  數(shù)據(jù)

?

2.網(wǎng)絡(luò)攻擊中,超過(guò)?????%的漏洞來(lái)自應(yīng)用程序軟件。

第一空:?

  70

?

3.移動(dòng)互聯(lián)網(wǎng)App存在安全漏洞的比例超過(guò)?????%。

第一空:?

  90

?

4.軟件面臨的安全威脅分為三類(lèi),分別為?????????、???????和???????? 。

第一空:?

  軟件漏洞

第二空:?

  惡意代碼

第三空:?

  軟件侵權(quán)

?

5.漏洞利用的過(guò)程:漏洞發(fā)現(xiàn)?????、????、漏洞驗(yàn)證、漏洞利用、實(shí)施攻擊。

第一空:?

  漏洞挖掘

第二空:?

  漏洞驗(yàn)證

?

6.軟件發(fā)布后立刻被發(fā)現(xiàn)的漏洞稱為零日漏洞.

我的答案:
  ×
?

7.下列函數(shù)的代碼在C、C++語(yǔ)言中是否有漏洞?

long foo(int x, int y)

{

long result= x * y ;

return result;

}
  • A、

  • B、

    沒(méi)有

我的答案:
  A
?

8.下列函數(shù)的代碼在Java語(yǔ)言中是否有漏洞?

long foo(int x, int y)

{

long result= x * y ;

return result;

}
  • A、

  • B、

    沒(méi)有

我的答案:
  A
?

9.下列代碼的打印結(jié)果是什么?

   int i = -3;

   unsigned short ui=i;

   printf("%u",ui);
第一空:?

  65533

?

10.下列代碼的結(jié)果是什么?

char c1='a';

char c2='b';

char c3=c1+ c2;

printf("%d,",c3);
第一空:?

  -61

?

11.上一題(填空第二題)如何修改能得到想要的結(jié)果?(提交答案填寫(xiě)修改后的完整一行語(yǔ)句,不要加多余空格)

第一空:?

  int c3 = c1 + c2

?

第二單元

1.軟件安全錯(cuò)誤一般包含六個(gè)方面,分別是? ? ?、? ??? ?、? ??? 、? ? ?、? ? ? ?和? ? ???。

第一空:?
  需求說(shuō)明錯(cuò)誤
第二空:?
  設(shè)計(jì)錯(cuò)誤
第三空:?
  編碼錯(cuò)誤
第四空:?
  測(cè)試錯(cuò)誤
第五空:?
  配置錯(cuò)誤
第六空:?
  文檔錯(cuò)誤
?

2.(? )是引發(fā)信息安全事件的根源。

第一空:?
  漏洞
?

3.補(bǔ)丁已經(jīng)發(fā)布,但是用戶未打補(bǔ)丁時(shí)的漏洞稱為(? ? )。

第一空:?
  1 day漏洞
?

4.軟件開(kāi)發(fā)過(guò)程中,人為錯(cuò)誤稱為(??),軟件中,軟件內(nèi)部的錯(cuò)誤稱為(??),軟件運(yùn)行中,不正常的狀態(tài)稱為(??)。

(答案選項(xiàng):軟件故障、軟件缺陷、軟件錯(cuò)誤)

第一空:?
  軟件錯(cuò)誤
第二空:?
  軟件缺陷
第三空:?
  軟件故障
?

5.網(wǎng)絡(luò)空間包含電子設(shè)備、基礎(chǔ)設(shè)施、應(yīng)用、數(shù)據(jù),還有(??)。

第一空:?
  人
?

6.網(wǎng)絡(luò)安全框架的核心PDRR模型中,P指(? ? )、D指(? ?)。

第一空:?
  保護(hù)
第二空:?
  檢測(cè)
?

7.零日漏洞是指沒(méi)有公開(kāi)的漏洞。

我的答案:
  ×
?

8.軟件發(fā)布后立刻被發(fā)現(xiàn)的漏洞稱為0 day漏洞。

我的答案:
  ×
?

三、第三單元

1.棧幀是系統(tǒng)為進(jìn)程中的每個(gè)()調(diào)用劃分的一個(gè)空間。

第一空:?

  函數(shù)

?

2.指向當(dāng)前棧幀的棧頂?shù)闹羔樖牵ǎ?,指向棧底的是()?/h2>
第一空:?

  ESP

第二空:?

  EBP

?

3.緩沖區(qū)溢出指向緩沖區(qū)寫(xiě)數(shù)據(jù)時(shí),沒(méi)有做()檢查,緩沖區(qū)的數(shù)據(jù)超過(guò)預(yù)先分配的(),使得一簇?cái)?shù)據(jù)覆蓋在合法數(shù)據(jù)上引起的系統(tǒng)異常。

第一空:?

  邊界

第二空:?

  邊界

?

4.數(shù)據(jù)區(qū)存儲(chǔ)()變量和()變量。

第一空:?

  全局

第二空:?

  靜態(tài)

?

5.棧增長(zhǎng)方向是從()地址到()地址;堆增長(zhǎng)方向是從()地址到()地址。

第一空:?

  高

第二空:?

  低

第三空:?

  低

第四空:?

  高

?

6.?Win32系統(tǒng)中,進(jìn)程空間按功能分為4個(gè)區(qū)域,從低地址到高地址依次為()、()、()、()。

第一空:?

  棧區(qū)

第二空:?

  堆區(qū)

第三空:?

  代碼區(qū)

第四空:?

  數(shù)據(jù)區(qū)

?

7.程序中所用的緩沖區(qū)可以是堆、棧、數(shù)據(jù)區(qū)。

我的答案:
  
?
?

8.代碼區(qū)只存放機(jī)器代碼。

我的答案:
  ×
?

9.下面的程序中,忽視了字符越界,修改第1行、第6行的代碼,進(jìn)行糾錯(cuò)。(提交答案時(shí),刪除語(yǔ)句中所有空格,不管語(yǔ)法)

1.char s1[5];

  2.char s2[]="abcde";

  3.char *p;

  4.int i;

  5.strcpy(s1,s2);

  6.p=(char *) malloc (strlen(s1));
第一空:?

  char s1[6];

第二空:?

  p=(char*)malloc(strlen(s1)+1);

?

10.下列語(yǔ)句,cin沒(méi)有考慮輸入長(zhǎng)度,在cin語(yǔ)句之前加一條語(yǔ)句,控制cin的輸入長(zhǎng)度。

  char s[10];

  cin>>s;

  cout<<s<<endl;
第一空:?

  cin.width(10)

?

11.下列程序,是否有錯(cuò)(第一空填有/無(wú)),如果有錯(cuò),在第二空進(jìn)行修改,如果沒(méi)有,第二空填無(wú)。

char * s="c language";

s[0]='C';
第一空:?

  有

第二空:?

  char s[]="c language";

?

12.在C語(yǔ)言的格式化輸出中:

表示十進(jìn)制數(shù)輸出的格式符號(hào)是%d,那么

表示寬度為6,右對(duì)齊的十進(jìn)制數(shù)輸出的格式符號(hào)是();

表示寬度為6,左補(bǔ)零右對(duì)齊的十進(jìn)制數(shù)輸出的格式符號(hào)是();

輸出16進(jìn)制數(shù)的格式符號(hào)是();

輸出字符串的格式符號(hào)是();

以小數(shù)形式輸出浮點(diǎn)數(shù)的格式符號(hào)是();

輸出十進(jìn)制無(wú)符號(hào)數(shù)的格式符號(hào)是();

輸出asc碼字符的格式符號(hào)是();

以指數(shù)形式輸出浮點(diǎn)數(shù)的格式符號(hào)是();

輸出指針地址的格式符號(hào)是();

輸出長(zhǎng)整型數(shù)的格式符號(hào)是()。

?

第一空:?

  %6d

第二空:?

  %06d

第三空:?

  %x

第四空:?

  %s

第五空:?

  %f

第六空:?

  %u

第七空:?

  %c

第八空:?

  %e

第九空:?

  %p

第十空:?

  %ld

?

四、第四單元

1.軟件生命周期由三個(gè)時(shí)期構(gòu)成,分別是()時(shí)期、()時(shí)期和()時(shí)期。

第一空:?
  軟件定義
第二空:?
  軟件開(kāi)發(fā)
第三空:?
  軟件維護(hù)
?

2.確定軟件完成總目標(biāo)的是()時(shí)期,由()負(fù)責(zé)完成。

第一空:?
  軟件定義
第二空:?
  系統(tǒng)分析員
?

3.軟件定義時(shí)期,一般分為三個(gè)階段,分別是()、()和()。

第一空:?
  問(wèn)題定義
第二空:?
  可行性研究
第三空:?
  需求分析
?

4.完成設(shè)計(jì)和實(shí)現(xiàn)任務(wù)的是()時(shí)期,其中系統(tǒng)設(shè)計(jì)分為()和()階段,系統(tǒng)實(shí)現(xiàn)分為()和()階段。

第一空:?
  軟件開(kāi)發(fā)
第二空:?
  總體設(shè)計(jì)
第三空:?
  詳細(xì)設(shè)計(jì)
第四空:?
  編碼和單元測(cè)試
第五空:?
  綜合測(cè)試
?

5.使軟件能夠滿足用戶長(zhǎng)久需求的是()階段。

第一空:?
  軟件維護(hù)
?

五、第五單元

1.威脅建??梢栽谲浖ǎ┲?,就幫助發(fā)現(xiàn)安全問(wèn)題,發(fā)現(xiàn)風(fēng)險(xiǎn)。

  • A、

    設(shè)計(jì)

  • B、

    需求分析

  • C、

    編碼

  • D、

    安全培訓(xùn)

我的答案:
  A
?

2.解決軟件產(chǎn)品自身安全實(shí)質(zhì)性的方法是()?

  • A、

    攻防

  • B、

    威脅建模

  • C、

    滲透測(cè)試

  • D、

    軟件安全需求分析

我的答案:
  B
?

3.軟件安全中,軟件安全測(cè)試和開(kāi)發(fā)過(guò)程包括:軟件安全(??)、軟件安全(??)、軟件安全(??)、軟件安全(??)、軟件安全(??)。

第一空:?
  需求分析
第二空:?
  設(shè)計(jì)
第三空:?
  編碼
第四空:?
  測(cè)試
第五空:?
  部署
?

4.威脅建模有3種,分別是以()、()和()為中心。

第一空:?
  軟件
第二空:?
  安全
第三空:?
  資產(chǎn)和風(fēng)險(xiǎn)
?

5.測(cè)試人員使用()來(lái)生成安全測(cè)試用例。

第一空:?
  威脅模型
?

6.開(kāi)發(fā)團(tuán)隊(duì)使用()來(lái)實(shí)現(xiàn)安全控制和編寫(xiě)安全的代碼。

第一空:?
  威脅模型
?

7.威脅建模的作用可以跨越軟件生命周期,一個(gè)完整的威脅建模是軟件()、()、()、()和運(yùn)營(yíng)團(tuán)隊(duì)的代表性輸入項(xiàng)。

第一空:?
  設(shè)計(jì)
第二空:?
  開(kāi)發(fā)
第三空:?
  測(cè)試
第四空:?
  部署
?

8.設(shè)計(jì)階段,由()識(shí)別威脅,建立威脅模型。

第一空:?
  軟件架構(gòu)團(tuán)隊(duì)
?
?

9.威脅建模是循環(huán)反復(fù)的過(guò)程。

我的答案:
  
?

10.軟件開(kāi)發(fā)階段,會(huì)發(fā)現(xiàn)所有的可能威脅。

我的答案:
  ×
?

本文摘自 :https://www.cnblogs.com/

開(kāi)通會(huì)員,享受整站包年服務(wù)立即開(kāi)通 >