當前位置:首頁 > IT技術 > 其他 > 正文

課程練習 - 軟件安全
2022-05-11 11:03:28

第一單元

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

第一空:?

  文檔

第二空:?

  數據

?

2.網絡攻擊中,超過?????%的漏洞來自應用程序軟件。

第一空:?

  70

?

3.移動互聯網App存在安全漏洞的比例超過?????%。

第一空:?

  90

?

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

第一空:?

  軟件漏洞

第二空:?

  惡意代碼

第三空:?

  軟件侵權

?

5.漏洞利用的過程:漏洞發(fā)現?????、????、漏洞驗證、漏洞利用、實施攻擊。

第一空:?

  漏洞挖掘

第二空:?

  漏洞驗證

?

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

我的答案:
  ×
?

7.下列函數的代碼在C、C++語言中是否有漏洞?

long foo(int x, int y)

{

long result= x * y ;

return result;

}
  • A、

  • B、

    沒有

我的答案:
  A
?

8.下列函數的代碼在Java語言中是否有漏洞?

long foo(int x, int y)

{

long result= x * y ;

return result;

}
  • A、

  • B、

    沒有

我的答案:
  A
?

9.下列代碼的打印結果是什么?

   int i = -3;

   unsigned short ui=i;

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

  65533

?

10.下列代碼的結果是什么?

char c1='a';

char c2='b';

char c3=c1+ c2;

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

  -61

?

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

第一空:?

  int c3 = c1 + c2

?

第二單元

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

第一空:?
  需求說明錯誤
第二空:?
  設計錯誤
第三空:?
  編碼錯誤
第四空:?
  測試錯誤
第五空:?
  配置錯誤
第六空:?
  文檔錯誤
?

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

第一空:?
  漏洞
?

3.補丁已經發(fā)布,但是用戶未打補丁時的漏洞稱為(? ? )。

第一空:?
  1 day漏洞
?

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

(答案選項:軟件故障、軟件缺陷、軟件錯誤)

第一空:?
  軟件錯誤
第二空:?
  軟件缺陷
第三空:?
  軟件故障
?

5.網絡空間包含電子設備、基礎設施、應用、數據,還有(??)。

第一空:?
  人
?

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

第一空:?
  保護
第二空:?
  檢測
?

7.零日漏洞是指沒有公開的漏洞。

我的答案:
  ×
?

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

我的答案:
  ×
?

三、第三單元

1.棧幀是系統(tǒng)為進程中的每個()調用劃分的一個空間。

第一空:?

  函數

?

2.指向當前棧幀的棧頂的指針是(),指向棧底的是()。

第一空:?

  ESP

第二空:?

  EBP

?

3.緩沖區(qū)溢出指向緩沖區(qū)寫數據時,沒有做()檢查,緩沖區(qū)的數據超過預先分配的(),使得一簇數據覆蓋在合法數據上引起的系統(tǒng)異常。

第一空:?

  邊界

第二空:?

  邊界

?

4.數據區(qū)存儲()變量和()變量。

第一空:?

  全局

第二空:?

  靜態(tài)

?

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

第一空:?

  高

第二空:?

  低

第三空:?

  低

第四空:?

  高

?

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

第一空:?

  棧區(qū)

第二空:?

  堆區(qū)

第三空:?

  代碼區(qū)

第四空:?

  數據區(qū)

?

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

我的答案:
  
?
?

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

我的答案:
  ×
?

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

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.下列語句,cin沒有考慮輸入長度,在cin語句之前加一條語句,控制cin的輸入長度。

  char s[10];

  cin>>s;

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

  cin.width(10)

?

11.下列程序,是否有錯(第一空填有/無),如果有錯,在第二空進行修改,如果沒有,第二空填無。

char * s="c language";

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

  有

第二空:?

  char s[]="c language";

?

12.在C語言的格式化輸出中:

表示十進制數輸出的格式符號是%d,那么

表示寬度為6,右對齊的十進制數輸出的格式符號是();

表示寬度為6,左補零右對齊的十進制數輸出的格式符號是();

輸出16進制數的格式符號是();

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

以小數形式輸出浮點數的格式符號是();

輸出十進制無符號數的格式符號是();

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

以指數形式輸出浮點數的格式符號是();

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

輸出長整型數的格式符號是()。

?

第一空:?

  %6d

第二空:?

  %06d

第三空:?

  %x

第四空:?

  %s

第五空:?

  %f

第六空:?

  %u

第七空:?

  %c

第八空:?

  %e

第九空:?

  %p

第十空:?

  %ld

?

四、第四單元

1.軟件生命周期由三個時期構成,分別是()時期、()時期和()時期。

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

2.確定軟件完成總目標的是()時期,由()負責完成。

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

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

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

4.完成設計和實現任務的是()時期,其中系統(tǒng)設計分為()和()階段,系統(tǒng)實現分為()和()階段。

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

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

第一空:?
  軟件維護
?

五、第五單元

1.威脅建模可以在軟件()之初,就幫助發(fā)現安全問題,發(fā)現風險。

  • A、

    設計

  • B、

    需求分析

  • C、

    編碼

  • D、

    安全培訓

我的答案:
  A
?

2.解決軟件產品自身安全實質性的方法是()?

  • A、

    攻防

  • B、

    威脅建模

  • C、

    滲透測試

  • D、

    軟件安全需求分析

我的答案:
  B
?

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

第一空:?
  需求分析
第二空:?
  設計
第三空:?
  編碼
第四空:?
  測試
第五空:?
  部署
?

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

第一空:?
  軟件
第二空:?
  安全
第三空:?
  資產和風險
?

5.測試人員使用()來生成安全測試用例。

第一空:?
  威脅模型
?

6.開發(fā)團隊使用()來實現安全控制和編寫安全的代碼。

第一空:?
  威脅模型
?

7.威脅建模的作用可以跨越軟件生命周期,一個完整的威脅建模是軟件()、()、()、()和運營團隊的代表性輸入項。

第一空:?
  設計
第二空:?
  開發(fā)
第三空:?
  測試
第四空:?
  部署
?

8.設計階段,由()識別威脅,建立威脅模型。

第一空:?
  軟件架構團隊
?
?

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

我的答案:
  
?

10.軟件開發(fā)階段,會發(fā)現所有的可能威脅。

我的答案:
  ×
?

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

開通會員,享受整站包年服務立即開通 >