版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2026年网络安全工程师CTF夺旗赛解题技巧入门培训试卷及答案第一部分:单项选择题(共10题,每题2分)1.在CTF夺旗赛的Web安全方向中,攻击者试图通过操纵输入参数来改变数据库查询逻辑,从而绕过认证或提取数据的攻击方式被称为?A.跨站脚本攻击(XSS)B.跨站请求伪造(CSRF)C.SQL注入D.远程文件包含(RFI)2.以下哪个HTTP状态码通常表示服务器拒绝了请求,但未说明具体原因,常用于CTF中需要修改HTTP头绕过的场景?A.200B.403C.404D.5003.在Linux系统中,若要查看一个二进制文件是32位还是64位,以及它是动态链接还是静态链接,最常用的命令是?A.psB.netstatC.fileD.strings4.在进行CTFMisc(杂项)题目时,经常需要查看文件的十六进制内容。在Linux命令行中,用于以十六进制和ASCII码对照显示文件内容的命令是?A.catB.hexdumpC.grepD.wget5.针对Python代码审计题目,以下哪个函数在处理用户输入时最可能存在反序列化漏洞,从而导致远程代码执行?A.json.loadsB.pickle.loadsC.base64.b64decodeD.urllib.parse.unquote6.在CTF密码学题目中,古典密码“凯撒密码”是一种替换加密技术。若明文“CTF”向后偏移3位,得到的密文是?A.FWHB.DUGC.EUGD.FWI7.以下哪种编码方式会将“M”转换为“TQ==”,并且常用于在HTTP环境中传输二进制数据?A.URL编码B.Hex编码C.Base64编码D.ASCII编码8.在CTFPwn方向中,利用栈溢出漏洞时,通常需要覆盖的关键寄存器是用于控制程序执行流返回地址的?A.EAX/RAXB.EBX/RBXC.ECX/RCXD.EIP/RIP9.BurpSuite是CTF比赛中不可或缺的工具,其“Repeater”模块的主要功能是?A.自动扫描网站漏洞B.拦截并修改HTTP请求C.手动发送并重放HTTP请求,分析响应D.暴力破解密码10.在CTF隐写术中,图片的高度和宽度信息通常存储在文件头的特定位置。如果修改了PNG图片的IHDR块中的高度值,通常会导致图片?A.颜色反转B.无法正常显示(显示破损或只显示部分)C.变成黑白D.文件大小变为0第二部分:多项选择题(共5题,每题4分,多选、少选、错选均不得分)1.在CTFWeb方向中,关于SQL注入漏洞的利用,以下哪些说法是正确的?A.布尔盲注通常不返回报错信息,而是通过页面真伪的差异性来判断。B.Union联合查询注入要求前后两个查询的列数必须相同。C.在MySQL中,注释符可以使用`#`或`-`(注意空格)。D.报错注入通常使用`extractvalue()`或`updatexml()`函数。2.以下哪些工具常用于CTF逆向工程题目中,用于静态分析二进制文件?A.IDAProB.GhidraC.WinDbgD.OllyDbg3.在CTF密码学中,关于RSA算法,以下哪些数学公式或关系是正确的?A.N=p×q,其中B.ϕ(C.公钥(e,N)和私钥D.密文C和明文M的关系为M≡4.在进行CTF流量分析题目时,Wireshark过滤器非常重要。以下哪些过滤器语法是正确的?A.`http.request.method=="POST"`:筛选所有HTTPPOST请求。B.`ip.addr==`:筛选源或目标IP为的数据包。C.`tcp.flags.syn==1`:筛选TCP握手中的SYN包。D.`datacontains"flag"`:筛选数据包负载中包含字符串"flag"的内容。5.关于PHP伪协议在CTF文件包含漏洞中的应用,以下描述正确的有?A.`php://filter`可以用来读取文件内容,常配合`convert.base64-encode`使用。B.`data://`协议可以直接传递数据作为输入流。C.`file://`协议用于访问本地文件系统。D.`expect://`协议用于处理系统命令执行。第三部分:填空题(共10题,每题2分)1.在CTF中,Flag的格式通常为`flag{...}`,但有时也会使用`CTF{...}`或其他格式。假设题目提示Flag为MD5值,且明文为“hello”,则其常见的32位MD5值的前4位是________。(提示:5d4140)2.在ASCII码表中,字符'A'的十进制数值是65,那么字符'a'的十进制数值是________。3.在Linux权限系统中,`rwxr-xr-x`对应的八进制数值表示为________。4.异或(XOR)运算在CTF密码学中非常常见,具有可逆性。若A⊕B=5.在Web安全中,若要绕过前端JS验证直接发包,除了使用BurpSuite,还可以使用浏览器插件,例如________。6.Python中,`eval()`函数可以将字符串当作代码执行。若题目代码为`eval(input())`,为了读取文件,可以输入`________("flag.txt").read()`(填入内置函数名)。7.在CTF隐写术中,LSB(LeastSignificantBit)算法的全称是________,通常利用图像像素最低位的不可见性来隐藏数据。8.DNS请求的默认端口号是________,而HTTPS的默认端口号是443。9.在CTFPwn题目中,为了获取远程Shell,攻击者通常需要调用系统函数`system()`或`execve()`,并传入参数`/bin/________`。10.在Wireshark中,若要导出HTTP对象(如图片、js文件),应选择菜单栏中的File->ExportObjects->________。第四部分:简答题(共4题,每题10分)1.请简述在CTFWeb安全题目中,SQL盲注与Union联合注入的区别,并列举两种常见的判断盲注条件的方法。2.在CTF逆向工程中,什么是“壳”?简要说明脱壳的基本步骤或思路。3.解释XSS(跨站脚本攻击)的三种主要类型:反射型、存储型和DOM型,并说明DOM型XSS与前两者的主要区别。4.在CTFMisc(杂项)题目中,如果你得到一个看起来像乱码的文本文件,且题目提示为“编码”,你会按什么顺序尝试哪些常见的编码方式来还原明文?请列举至少4种。第五部分:综合应用题(共4题,每题15分)1.Web应用题:SQL注入与绕过题目源代码片段如下(PHP环境):```php<?phpid//过滤空格和unionididsqreif(!$result){die(mysql_error());}else{roecho"ID:".$row['id']."<br>";echo"Username:".$row['username'];}?>```请分析代码中的漏洞,构造一个Payload(攻击载荷)来绕过过滤并注入,目的是获取`users`表中第一条数据的`username`字段。假设已知列数为3。2.密码学应用题:RSA解密在一道CTF密码学题目中,你获得了以下信息:模数N公钥指数e密文C=提示:N可以被分解为两个较小的质数p和q。假设经过分解得到p=3000000007和q=请写出计算私钥d的详细步骤(包括计算ϕ(N)3.逆向分析题:逻辑还原给出一段C语言伪代码,对应了一个简单的验证逻辑:```cinclude<stdio.h>include<string.h>intmain(){charinput[24];charkey[]="CTF{X0r_1s_Fun}";printf("Enterflag:");scanf("%23s",input);for(inti=0;i<strlen(input);i++){if(i%2==0){input[i]=input[i]^0x55;//偶数位异或0x55}else{input[i]=input[i]^0xAA;//奇数位异或0xAA}}if(strcmp(input,key)==0){printf("Success!\n");}else{printf("Wrong!\n");}return0;}```请分析该程序的逻辑,计算出正确的输入Flag(即输入`input`应该是什么才能通过验证)。4.流量分析题:隐写传输你下载了一个`capture.pcapng`文件。题目描述:“攻击者通过ICMP协议隐藏传输了一个Flag”。请描述你在Wireshark中的操作步骤,以及如何从ICMP数据包中提取出Flag。假设ICMP包的Data部分(Payload)看起来是连续的字符。参考答案与解析第一部分:单项选择题1.C解析:SQL注入(SQLInjection)是通过操纵输入影响数据库查询的攻击方式。XSS是脚本注入,CSRF是伪造请求,RFI是文件包含。2.B解析:403Forbidden表示服务器理解请求但拒绝执行。在CTF中常通过添加`X-Forwarded-For:`或修改`User-Agent`来绕过。3.C解析:`file`命令用于识别文件类型,包括架构(32/64位)和链接方式。4.B解析:`hexdump`(或`xxd`)是标准的十六进制查看器。`cat`仅查看文本,`grep`搜索文本,`wget`下载。5.B解析:Python的`pickle`模块在反序列化时可以执行任意代码,是PythonCTF中常见的漏洞点。`json`通常是安全的。6.A解析:C->F,T->W,F->H。位移3位。7.C解析:Base64编码将3字节转换为4字符。M的ASCII是77,Base64编码后为TQ==。8.D解析:EIP(32位)或RIP(64位)存储下一条指令的地址,覆盖它可以控制程序执行流(劫持控制流)。9.C解析:Repeater用于手动重放请求,测试不同参数。Intruder用于暴力破解,Scanner用于扫描。10.B解析:修改图片的高度或宽度可能导致图片查看器解析错误,或者显示拉伸、破损,但有时通过这种方式可以隐藏在图片底部不可见区域的Flag。第二部分:多项选择题1.ABCD解析:四个选项均为SQL注入的正确描述。报错注入利用MySQL的XPath报错函数。2.AB解析:IDAPro和Ghidra是强大的静态分析工具。WinDbg和OllyDbg主要用于动态调试。3.ABCD解析:这四个公式完整描述了RSA算法的密钥生成、加密和解密过程。4.ABCD解析:这些都是Wireshark中常用且正确的过滤语法。5.ABCD解析:PHP伪协议在文件包含漏洞中功能强大,`php://filter`用于读,`data://`用于执行,`file://`用于本地文件,`expect://`用于命令执行(需安装expect扩展)。第三部分:填空题1.5d41解析:MD5("hello")=5d41402abc4b2a76b9719d911017c592。2.97解析:ASCII中,小写字母比大写字母大32。65+32=97。3.755解析:R=4,W=2,X=1。Owner(4+2+1=7),Group(4+0+1=5),Other(4+0+1=5)。4.B解析:异或运算性质:若A⊕B=C,则5.HackBar(或ModifyHeaders,ProxySwitcher)解析:HackBar是Firefox常用的修改POST/GET数据的插件。6.open解析:`open("flag.txt").read()`是Python读取文件的标准方式。7.最低有效位解析:LSB全称为LeastSignificantBit。8.53解析:DNS默认端口53,TCP/UDP均可。9.sh解析:LinuxShell路径通常为`/bin/sh`或`/bin/bash`。10.HTTP解析:Wireshark导出HTTP对象功能非常强大。第四部分:简答题1.答:区别:Union联合注入:通常在有回显位的情况下使用,通过`UNIONSELECT`将查询结果附加到原页面显示中。SQL盲注:页面没有回显位(不返回数据库数据),也不返回报错信息。攻击者只能通过数据库的逻辑反馈(如页面真/假、响应时间、HTTP头变化)来推断数据。判断盲注条件的方法:1.布尔盲注:构造逻辑判断(如`length(database())>1`),根据页面返回内容是否不同(例如“Success”与“Fail”文本,或页面长度差异)来判断真假。2.时间盲注:构造逻辑判断并引入延时函数(如MySQL的`SLEEP(5)`或`BENCHMARK(1000000,MD5(1))`),根据数据库响应时间长短来判断条件真假。2.答:壳:在逆向工程中,“壳”是一段特殊的代码,被附加在原始程序之前。当程序运行时,壳代码先于原始代码执行,负责解密、解压或还原原始程序代码,然后跳转到原始程序入口。壳常用于保护程序免被破解(加壳),也被恶意软件用于混淆。脱壳思路:1.手动脱壳:使用调试器(如OllyDbg,x64dbg),在程序入口处设置硬件断点或单步执行,寻找内存中权限从可读可写变为可执行(R/W->E/X)的瞬间(即OEPOriginalEntryPoint),此时内存中已解压出原始代码,Dump出内存并重建PE表。2.自动脱壳:使用专用脱壳工具(如UPX脱壳工具,或万能脱壳机如PEiD插件、ScyllaHide等)自动检测壳类型并尝试还原。3.答:反射型XSS:恶意脚本作为请求参数发送给服务器,服务器将参数反射回页面并执行,非持久化。存储型XSS:恶意脚本被服务器存储在数据库中,当其他用户访问相关页面时,脚本从数据库读取并执行,持久化攻击。DOM型XSS:恶意脚本不经过服务器,完全由客户端的JavaScript脚本修改DOM树导致代码执行。区别:DOM型XSS的Payload不会出现在HTTP请求的响应包中,它是纯前端行为。而反射型和存储型XSS的Payload通常会出现在服务器返回的HTML源码中。4.答:尝试顺序通常如下:1.Base64编码:最常见,特征是结尾有`=`,字符集包含`A-Z,a-z,0-9,+,/`。2.URL编码:特征是`%`后跟两个十六进制数字。3.Hex(十六进制)编码:全是数字0-9和字母a-f。4.Unicode编码:形式如`\uXXXX`。5.Rot13/凯撒密码:观察字母是否有位移规律。6.ASCII码/十进制:一组数字,对应ASCII表。第五部分:综合应用题1.解:漏洞分析:代码存在SQL注入,且使用了`str_replace`进行黑名单过滤,过滤了空格和`union`关键词。绕过技巧:1.空格绕过:可以使用`/**/`(注释符)或`%0a`(换行符)代替空格。2.union绕过:由于`str_replace`只替换一次,可以使用双写绕过,即`uniunionon`,替换中间的`union`后剩下的部分拼接成`union`。Payload构造:目标是获取`username`,假设列数为3,我们需要构造`SELECT*FROMusersWHEREid='...'UNIONSELECT1,2,3...'`。构造步骤:闭合单引号:`'`注入语句:`//uniunionon//select//1,username,3//from/**/users`注释掉后面的`LIMIT0,1`:使用`#`或`--+`最终Payload:```text'?id='//uniunionon//select//1,username,3//from/**/users%23```或者:```text'?id='-1//uniunionon//select//1,username,3//from/**/users%23```(注:使用`-1`或`0`等不存在的ID可以使原查询返回空,从而只显示Union查询的结果)。2.解:步骤1:计算欧拉函数ϕ已知N=ϕ代入假设值:ϕϕ步骤2:计算私钥指数dd是e在模ϕ(e使用扩展欧几里得算法计算d≡这里e=计算过程略(数值过大),但公式为:d步骤3:解密明文MRSA解密公式为:M总结:攻击者通过分解N得到p,q,进而计算ϕ(N)3.解:分析:程序要求输入`input`,经过异或处理后与`key`比较。已知`key="CTF{X0r_1s_Fun}"`。算法逻辑:索引i为偶数(0,2,4...):`input[i]^0x55=key[i]`索引i为奇数(1,3,5...):`input[i]^0xAA=key[i]`还原逻辑(异或运算的可逆性,A⊕i为偶数:`input[i]=key[i]^0x55`i为奇数:`input[i]=key[i]^0xAA`计算:Key字符及ASCII值:C(67),T(84),F(70),{(123),X(88),0(48),r(114),_(95),1(49),s(115),_(95),F(70),u(117),n(110),}(125)逐位计算:1.i=0(C):67⊕2.i=1(T):843.i=2(F):704.i=3({):1235.i=4(X):88⊕6.i=5(0):487.i=6(r):114⊕8.i=7(_):959.i=8(1):49⊕10.i=9(s):11511.i=10(_):95⊕12.i=11(F):7013.i=12(u):117⊕14.i=13(n):11015.i=14(}):125⊕最终输入:由于计算出的部分字符是不可打印字符,在实际CTF场景中,我们通常通过Python脚本来输入这些二进制数据。正确的输入序列(十六进制表示)为:`16FE13D10D9A27F564D90AEC14C428`Python脚本生成输入:```pythonkey="
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 货物保修永久责任承诺函(6篇)
- 行业工程设备检查与维护模板
- 2025 高中信息技术数据结构链表的链表节点归并排序优化算法课件
- 2025 高中信息技术数据结构的算法设计模式课件
- 食材询价比价制度
- 新零售背景下智慧物流配送模式创新方案
- 人员培训与教育投入承诺书3篇范文
- 食品安全10项制度
- 2024-2025学年度注册核安全工程师练习题含完整答案详解(各地真题)
- 顾客体验优化服务承诺书7篇范文
- 2025华夏银行郑州分行社会招聘备考题库及完整答案详解1套
- 伤口负压治疗新进展
- HIV感染者心理支持方案
- 配电箱设备防护维护技术方案
- 2025版《煤矿安全规程》解读
- 2026年安徽水利水电职业技术学院单招职业适应性考试题库及答案1套
- 采集动脉血课件
- 剧毒从业证摸拟考试及答案解析
- 隧道施工环境监测方案
- 化学微格教学讲解
- GB/T 10454-2025包装非危险货物用柔性中型散装容器
评论
0/150
提交评论