代码审计工程师考试试卷及答案.docVIP

  • 1
  • 0
  • 约2.45千字
  • 约 6页
  • 2026-02-15 发布于山东
  • 举报

代码审计工程师考试试卷及答案

代码审计工程师考试试卷

一、填空题(每题1分,共10分)

1.代码审计中,未过滤用户输入导致的常见漏洞是______注入。

2.常用静态代码分析工具(举例1个):______。

3.跨站脚本攻击的英文缩写是______。

4.eval()函数需重点审计的语言(举例1个):______。

5.缓冲区溢出属于______型漏洞。

6.需重点修复的硬编码信息:______。

7.开放重定向漏洞核心是未验证______合法性。

8.常用动态代码分析工具(举例1个):______。

9.命令注入涉及的危险函数(举例1个,除system()):______。

10.代码审计核心目标是发现______并降低风险。

二、单项选择题(每题2分,共20分)

1.以下不属于静态代码分析工具的是?

A.FortifyB.CheckmarxC.BurpSuiteD.SonarQube

2.输入验证缺失直接导致的漏洞是?

A.内存泄漏B.SQL注入C.逻辑错误D.编译错误

3.硬编码的主要风险是?

A.提高性能B.泄露敏感信息C.便于维护D.减少bug

4.CSRF的核心防护措施是?

A.输入过滤B.Token验证C.加密传输D.日志记录

5.需重点审计eval()函数的语言是?

A.JavaB.PythonC.C++D.Go

6.未授权访问的根源是?

A.权限控制缺失B.输入不足C.缓冲区溢出D.内存泄漏

7.属于动态代码审计的是?

A.人工逐行审B.扫描运行中代码C.扫描未运行代码D.文档审

8.用户输入ls会触发命令注入执行什么?

A.原命令+lsB.仅lsC.仅原命令D.无操作

9.代码审计不关注的敏感操作是?

A.文件读写B.网络连接C.变量声明D.系统命令执行

10.属于逻辑漏洞的是?

A.SQL注入B.XSSC.越权访问D.缓冲区溢出

三、多项选择题(每题2分,共20分)

1.需重点审计的危险函数有?

A.eval()B.system()C.print()D.exec()

2.静态代码分析的特点是?

A.不运行代码B.发现潜在漏洞C.需运行环境D.效率高

3.XSS的类型包括?

A.存储型B.反射型C.DOM型D.注入型

4.代码审计方法包括?

A.人工审B.静态工具扫C.动态工具扫D.文档审

5.未授权访问的场景是?

A.未验证身份访APIB.权限未隔离C.验证码过期D.密码硬编码

6.缓冲区溢出的危害是?

A.执行任意代码B.系统崩溃C.信息泄露D.提高性能

7.需关注的敏感信息是?

A.数据库连接串B.API密钥C.用户密码D.日志路径

8.动态代码分析工具是?

A.BurpSuiteB.OWASPZAPC.FortifyD.Checkmarx

9.逻辑漏洞类型是?

A.越权访问B.业务逻辑错C.命令注入D.时间盲注

10.代码审计目标是?

A.发现漏洞B.验证合规C.提高代码质量D.降低攻击面

四、判断题(每题2分,共20分)

1.静态代码分析无需运行代码可发现漏洞。()

2.eval()函数在任何场景都安全。()

3.硬编码密码会泄露敏感信息。()

4.CSRF漏洞不需要验证用户身份。()

5.缓冲区溢出仅存在于C/C++中。()

6.代码审计无需关注业务逻辑。()

7.BurpSuite可用于动态代码审计。()

8.SQL注入源于输入验证缺失。()

9.所有逻辑漏洞可被工具自动发现。()

10.代码审计需覆盖所有分支。()

五、简答题(每题5分,共20分)

1.简述静态与动态代码分析的区别。

2.如何审计SQL注入漏洞?

3.XSS的审计要点是什么?

4.硬编码敏感信息的风险及修复方法?

六、讨论题(每题5分,共10分)

1.讨论人工与工具审计的优缺点及结合方法。

2.如何有效发现逻辑漏洞?举例说明。

---

答案

一、填空题

1.SQL

2.Fortify(或Checkmarx、SonarQube等)

3.XSS

4.PHP(或Python、JavaScript等)

5.内存破坏

6.密码/密钥

7.跳转目标

8.BurpSuite(或OWASPZAP等)

9.exec()(或passthru()等)

10.安全漏洞

二、单项选择题

1.C2.B3.B4.B5.B

6.A7.B8.A9.C10.C

三、多项选择题

1.ABD2.ABD3.ABC4.ABCD5.AB

6.ABC7.ABC8.AB9.AB10.ABCD

四、判断题

1.√2.×3.√4.×5.×

6.×7.√8.√9.×10.√

五、简答题

1.静态(SAST):代码未运行时分析,发现潜在漏洞(如SQL注入),无需运行环境、效率高,但误报多;动态(DAST):代码运行时分析,验证漏洞真实性(如内存溢出),需运行环境,但漏报多。二者互补

文档评论(0)

1亿VIP精品文档

相关文档