信管网每日一练
信息安全工程师 - 每日一练 导航

信息安全工程师案例分析每日一练试题(2017/7/1)

2017年07月04日来源:信管网 作者:cnitpm

信息安全工程师案例分析当天每日一练试题地址:http://www.cnitpm.com/exam/ExamDayAL.aspx?t1=6

往期信息安全工程师每日一练试题汇总:http://www.cnitpm.com/class27-6-1.aspx

信息安全工程师案例分析每日一练试题(2017/7/1)在线测试:http://www.cnitpm.com/exam/ExamDayAL.aspx?t1=6&day=2017/7/1

信息安全工程师案例分析每日一练试题内容(2017/7/1)

阅读下列说明,回答问题 1 至问题 4 ,将解答写在答题纸的对 应栏内。 
【说明】 
基于 Windows32 位系统分析下列代码,回答相关问题 。 
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 函数内的三个本地变量所在的内存区域称为什么?它的两个最基本操作是什么? 
【问题 2】(3分) 
画出buf,check,buf2 三个变量在内存的布局图。 

【问题 3】(2分) 
应该给程序提供什么样的命令行参数值(通过argv变量传递)才能使程序执行流程进入判断语句 If(check=65)....然后调用challenge( )函数。 
【问题4】(4分) 
上述代码所存在的漏洞名字是什么,针对本例代码,请简要说明如何修正上述代码以修补次漏洞。
信管网试题答案与解析:http://www.cnitpm.com/st/327636549.html

信管网考友试题答案分享:

信管网试题答案与解析:http://www.cnitpm.com/st/327636549.html

温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

分享至:

信管网 - 信息系统项目管理专业网站

下载APP-在线学习