第一單元
1.軟件是程序、()和()的集合體。
第一空:?
文檔
第二空:?
數(shù)據(jù)
?
2.網絡攻擊中,超過?????%的漏洞來自應用程序軟件。
第一空:?
70
?
3.移動互聯(lián)網App存在安全漏洞的比例超過?????%。
第一空:?
90
?
4.軟件面臨的安全威脅分為三類,分別為?????????、???????和???????? 。
第一空:?
軟件漏洞
第二空:?
惡意代碼
第三空:?
軟件侵權
?
5.漏洞利用的過程:漏洞發(fā)現(xiàn)?????、????、漏洞驗證、漏洞利用、實施攻擊。
第一空:?
漏洞挖掘
第二空:?
漏洞驗證
?
6.軟件發(fā)布后立刻被發(fā)現(xiàn)的漏洞稱為零日漏洞.
我的答案:
×
?
7.下列函數(shù)的代碼在C、C++語言中是否有漏洞?
long foo(int x, int y)
{
long result= x * y ;
return result;
}
我的答案:
A
?
8.下列函數(shù)的代碼在Java語言中是否有漏洞?
long foo(int x, int y)
{
long result= x * y ;
return result;
}
我的答案:
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.上一題(填空第二題)如何修改能得到想要的結果?(提交答案填寫修改后的完整一行語句,不要加多余空格)
第一空:?
2.指向當前棧幀的棧頂?shù)闹羔樖牵ǎ?,指向棧底的是()?/h2>
int c3 = c1 + c2
?
第二單元
1.軟件安全錯誤一般包含六個方面,分別是? ? ?、? ??? ?、? ??? 、? ? ?、? ? ? ?和? ? ???。
第一空:?
需求說明錯誤
第二空:?
設計錯誤
第三空:?
編碼錯誤
第四空:?
測試錯誤
第五空:?
配置錯誤
第六空:?
文檔錯誤
?
2.(? )是引發(fā)信息安全事件的根源。
3.補丁已經發(fā)布,但是用戶未打補丁時的漏洞稱為(? ? )。
第一空:?
1 day漏洞
?
4.軟件開發(fā)過程中,人為錯誤稱為(??),軟件中,軟件內部的錯誤稱為(??),軟件運行中,不正常的狀態(tài)稱為(??)。
(答案選項:軟件故障、軟件缺陷、軟件錯誤)
第一空:?
軟件錯誤
第二空:?
軟件缺陷
第三空:?
軟件故障
?
5.網絡空間包含電子設備、基礎設施、應用、數(shù)據(jù),還有(??)。
第一空:?
人
?
6.網絡安全框架的核心PDRR模型中,P指(? ? )、D指(? ?)。
第一空:?
保護
第二空:?
檢測
?
7.零日漏洞是指沒有公開的漏洞。
我的答案:
×
?
8.軟件發(fā)布后立刻被發(fā)現(xiàn)的漏洞稱為0 day漏洞。
我的答案:
×
?
三、第三單元
1.棧幀是系統(tǒng)為進程中的每個()調用劃分的一個空間。
第一空:?
函數(shù)
?
2.指向當前棧幀的棧頂?shù)闹羔樖牵ǎ?,指向棧底的是()?/h2>
第一空:?
ESP
第二空:?
EBP
?
第一空:?
ESP
第二空:?
EBP
?
3.緩沖區(qū)溢出指向緩沖區(qū)寫數(shù)據(jù)時,沒有做()檢查,緩沖區(qū)的數(shù)據(jù)超過預先分配的(),使得一簇數(shù)據(jù)覆蓋在合法數(shù)據(jù)上引起的系統(tǒng)異常。
第一空:?
邊界
第二空:?
邊界
?
4.數(shù)據(jù)區(qū)存儲()變量和()變量。
第一空:?
全局
第二空:?
靜態(tài)
?
5.棧增長方向是從()地址到()地址;堆增長方向是從()地址到()地址。
第一空:?
高
第二空:?
低
第三空:?
低
第四空:?
高
?
6.?Win32系統(tǒng)中,進程空間按功能分為4個區(qū)域,從低地址到高地址依次為()、()、()、()。
第一空:?
棧區(qū)
第二空:?
堆區(qū)
第三空:?
代碼區(qū)
第四空:?
數(shù)據(jù)區(qū)
?
7.程序中所用的緩沖區(qū)可以是堆、棧、數(shù)據(jù)區(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語言的格式化輸出中:
表示十進制數(shù)輸出的格式符號是%d,那么
表示寬度為6,右對齊的十進制數(shù)輸出的格式符號是();
表示寬度為6,左補零右對齊的十進制數(shù)輸出的格式符號是();
輸出16進制數(shù)的格式符號是();
輸出字符串的格式符號是();
以小數(shù)形式輸出浮點數(shù)的格式符號是();
輸出十進制無符號數(shù)的格式符號是();
輸出asc碼字符的格式符號是();
以指數(shù)形式輸出浮點數(shù)的格式符號是();
輸出指針地址的格式符號是();
輸出長整型數(shù)的格式符號是()。
?
第一空:?
%6d
第二空:?
%06d
第三空:?
%x
第四空:?
%s
第五空:?
%f
第六空:?
%u
第七空:?
%c
第八空:?
%e
第九空:?
%p
第十空:?
%ld
?
四、第四單元
1.軟件生命周期由三個時期構成,分別是()時期、()時期和()時期。
第一空:?
軟件定義
第二空:?
軟件開發(fā)
第三空:?
軟件維護
?
2.確定軟件完成總目標的是()時期,由()負責完成。
第一空:?
軟件定義
第二空:?
系統(tǒng)分析員
?
3.軟件定義時期,一般分為三個階段,分別是()、()和()。
第一空:?
問題定義
第二空:?
可行性研究
第三空:?
需求分析
?
4.完成設計和實現(xiàn)任務的是()時期,其中系統(tǒng)設計分為()和()階段,系統(tǒng)實現(xiàn)分為()和()階段。
第一空:?
軟件開發(fā)
第二空:?
總體設計
第三空:?
詳細設計
第四空:?
編碼和單元測試
第五空:?
綜合測試
?
5.使軟件能夠滿足用戶長久需求的是()階段。
第一空:?
軟件維護
?
五、第五單元
1.威脅建??梢栽谲浖ǎ┲?,就幫助發(fā)現(xiàn)安全問題,發(fā)現(xiàn)風險。
我的答案:
A
?
2.解決軟件產品自身安全實質性的方法是()?
我的答案:
B
?
3.軟件安全中,軟件安全測試和開發(fā)過程包括:軟件安全(??)、軟件安全(??)、軟件安全(??)、軟件安全(??)、軟件安全(??)。
第一空:?
需求分析
第二空:?
設計
第三空:?
編碼
第四空:?
測試
第五空:?
部署
?
4.威脅建模有3種,分別是以()、()和()為中心。
第一空:?
軟件
第二空:?
安全
第三空:?
資產和風險
?
5.測試人員使用()來生成安全測試用例。
第一空:?
威脅模型
?
6.開發(fā)團隊使用()來實現(xiàn)安全控制和編寫安全的代碼。
第一空:?
威脅模型
?
7.威脅建模的作用可以跨越軟件生命周期,一個完整的威脅建模是軟件()、()、()、()和運營團隊的代表性輸入項。
第一空:?
設計
第二空:?
開發(fā)
第三空:?
測試
第四空:?
部署
?
8.設計階段,由()識別威脅,建立威脅模型。
第一空:?
軟件架構團隊
?
?
9.威脅建模是循環(huán)反復的過程。
我的答案:
√
?
10.軟件開發(fā)階段,會發(fā)現(xiàn)所有的可能威脅。
我的答案:
×
?
本文摘自 :https://www.cnblogs.com/