閱讀下列說明,回答問題 1 至問題 4 ,將解答寫在答題紙的對 應(yīng)欄內(nèi)。 
【說明】 
基于 Windows32 位系統(tǒng)分析下列代碼,回答相關(guān)問題 。 
void Challenge(char *str) 
{ 
char temp[9]={0}; 
strncpy(temp,str,8); 
printf("temp=%s\n",temp); 
if(strcmp(temp"Please!@")==0){ 
printf("KEY: ****"); 
} 
} 
int main(int argc,char *argv[ ]) 
{ 
Char buf2[16] 
Int check=1; 
Char buf[8] 
Strcpy (buf2, "give me key! !"); 
strcpy(buf,argv[1]); 
if(check==65) { 
Challenge(buf); 
} 
else { 
printf("Check is not 65 (%d) \n Program terminated!!\n",check); 
} 
Return 0; 
} 
【問題 1】(3 分) 
main 函數(shù)內(nèi)的三個本地變量所在的內(nèi)存區(qū)域稱為什么?它的兩個最基本操作是什么? 
【問題 2】(3分) 
畫出buf,check,buf2 三個變量在內(nèi)存的布局圖。 

【問題 3】(2分) 
應(yīng)該給程序提供什么樣的命令行參數(shù)值(通過argv變量傳遞)才能使程序執(zhí)行流程進(jìn)入判斷語句 If(check=65)....然后調(diào)用challenge( )函數(shù)。 
【問題4】(4分) 
上述代碼所存在的漏洞名字是什么,針對本例代碼,請簡要說明如何修正上述代碼以修補(bǔ)次漏洞。
			
查看答案
參考答案:
參考解析:www.tent-cn.com/st/327636549.html
信管網(wǎng)考友試題答案分享:
					信管網(wǎng)北京市電信考友: 
1、緩存區(qū),出棧和入棧
2、buf 8,2格
check  65
buf2   16
3、argv=65
4、緩存溢出
				
					信管網(wǎng)jackdong: 
1、堆棧,push(壓棧)或者pop(彈棧)操作。
2、buf8字節(jié) check4字節(jié) buf2 16字節(jié)。
3、覆蓋超過buf數(shù)組個字節(jié),也就是輸入?yún)?shù),例如:********a,注意大小端。前面8個任意的非零字符都可以,后跟一個大寫a字符,因?yàn)閍字符的ascⅱ碼值等于65。
4、緩存溢出或者棧溢出 對輸入?yún)?shù)的長度進(jìn)行檢查。
				
					信管網(wǎng)jackdong: 
1、堆棧,push(壓棧)或者pop(彈棧)操作。
2、buf8字節(jié) check4字節(jié) buf2 16字節(jié)。
3、覆蓋超過buf數(shù)組個字節(jié),也就是輸入?yún)?shù),例如:********a,注意大小端。前面8個任意的非零字符都可以,后跟一個大寫a字符,因?yàn)閍字符的ascⅱ碼值等于65。
4、緩存溢出或者棧溢出 對輸入?yún)?shù)的長度進(jìn)行檢查。
				
					信管網(wǎng)chenyuntao: 
問題1:堆棧。入棧和出棧。<br>問題2:從低地址到高地址,buf占兩行,check占1行,buf2占4行。<br>問題3:輸入的字符串長度大于8個,且第9個字符為大寫字母a。<br>問題4:緩沖區(qū)溢出漏洞。加入檢查輸入字符串長度的代碼,使其不超過8個,可以修補(bǔ)此漏洞。
				
					信管網(wǎng)cnitpm28151895373: 
1.堆棧,push和pop<br>2. buff2<br>    check<br>    buf<br>3前8個字符為任意值,第九個字符為阿斯克碼為65值的字符即為a。<br>4.緩沖區(qū)溢出<br>使用授權(quán)的工具開發(fā)正確的程序。禁用不安全的函數(shù),使用輸入驗(yàn)證。靜態(tài)分析驗(yàn)證指針的完整性
				
 掃碼關(guān)注公眾號
掃碼關(guān)注公眾號
									
								 溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請以權(quán)威部門公布的內(nèi)容為準(zhǔn)!
										溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請以權(quán)威部門公布的內(nèi)容為準(zhǔn)!
信管網(wǎng)致力于為廣大信管從業(yè)人員、愛好者、大學(xué)生提供專業(yè)、高質(zhì)量的課程和服務(wù),解決其考試證書、技能提升和就業(yè)的需求。
信管網(wǎng)軟考課程由信管網(wǎng)依托10年專業(yè)軟考教研傾力打造,官方教材參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點(diǎn),為學(xué)員考試保駕護(hù)航。面授、直播&錄播,多種班型靈活學(xué)習(xí),滿足不同學(xué)員考證需求,降低課程學(xué)習(xí)難度,使學(xué)習(xí)效果事半功倍。
| 發(fā)表評論 查看完整評論 | |