脉脉里的网安公司怎么了?

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

下午闲聊看到圈子里说现在网安​​​​公司都是边大刀阔斧的评判,边吸应届生,这咱也不知道真假,赶紧翻出脉脉看看。

还确实,似乎特别是今年互联网甲方大规模招收新人,似乎让互联人普遍被称为30+的危机,似乎也给了刚毕业的年轻人新的机会,同时公司还能降低了。

传统网安厂商也不例外,据说最近网安公司产品线受到大模型的冲击,大量的评判,同时又在高新挖掘算法、大模型阵地,看看脉脉里是这样的,不知道你呆的公司现在是什么情况,来吧评论区聊聊。

不管怎么样,今年的届生来说,应该是比较难的。

也正如我前几天发的《11家公司放出3w+的岗位然而》

对于应届生来说也很不错的机会,特别是哪些学年还不错的小伙伴。珍惜大厂降本增效的机会,紧抓刷面试题抓,紧找个机会进大厂一波。

为了方便大家沟通交流25年校招的信息、面试经验,我专门在星球中拉了个校招群,进星球后扫描进就可以了(会不定期发放内推码)---去后方领劵再进哈。

今年面过大厂安全岗的应该都普及,面试官多多少少都会问你写代码相关的问题把,如果你做不了安全开发,那么这些Java代码审计的题目你一定要略知一二。这里简单给大家放几个,看看会不会。

1.Spring表达式注入(SpEL)

代码片段

@PreAuthorize("hasRole('ADMIN') || #user.id == authentication.principal.id")
public void updateUser(User user) {
    //...
}

问题:分析潜在的安全风险及利用场景,如何构造恶意参数绕过权限校验?

答案

  • 漏洞点:Spring Security的@PreAuthorize使用SpEL表达式,若攻击者控制user.id参数可构造简单表达式

  • 攻击方式:确定user.id触发T(java.lang.Runtime).getRuntime().exec('calc')RCE

  • 修复方案:避免在权限注解中直接引用用户可控参数,改用白名单校验或严格类型转换

2. MyBatis SQL 注入

代码片段

<select id="findUser" parameterType="String" resultType="User">
    SELECT * FROM users WHERE ${column} = #{value}
</select>

问题:指出漏洞原理并给出两种以上利用方式,如何安全修复?

答案

  • 漏洞原理:${column}直接拼接未过滤的列名参数

  • 攻击方式:
    1. 初二column=id; DROP TABLE users --

    2. 匿名CASE WHEN评论

  • 修复方案:使用<sql id="safeColumns">白名单机制或预定义枚举值

3. Fastjson反序列化

代码片段

String json = request.getParameter("data");
Object obj = JSON.parseObject(json, User.class);

问题:在Fastjson 1.2.24版本下,如何构造Payload实现RCE?给出修复方案

答案

  • 攻击Payload:利用@type指定恶意类如com.sun.rowset.JdbcRowSetImpl,结合JNDI注入

  • 修复方案:
    1. 升级到1.2.83+版本并开启safeMode

    2. 产品ParserConfig.getGlobalInstance().addDeny("org.apache.")

4. Shiro RememberMe 预测

代码片段

shiro.rememberMe.cipherKey=KPHbfwAAAAAAAAAA

问题:分析该配置的安全隐患,给出完整的攻击利用链

答案

  • 漏洞点:硬编码默认AES密钥,符合Shiro 1.2.4默认密钥漏洞特征

  • 攻击步骤:
    1. 使用ysoserial生成CommonsBeanutils1链的序列化数据

    2. 使用已知的密钥加密构造恶意Cookie

    3. 恶意发送RememberMe Cookie的请求触发反序列化

5. JAX-RS XML外部实体注入

代码片段

@POST
@Consumes(MediaType.APPLICATION_XML)
public Response createUser(User user) {
    //...
}

问题:如何利用XXE漏洞读取服务器文件?给出防御措施

答案

  • 攻击Payload:
    <!DOCTYPE foo [<!ENTITY xxe SYSTEM "file:///etc/passwd">]>
    <user><name>&xxe;</name></user>
    
  • 策略:
    1. 产品XMLInputFactory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false)

    2. 使用DocumentBuilderFactory时启用setExpandEntityReferences(false)

6. HQL注入

代码片段

String hql = "FROM User WHERE name = '" + name + "'";
Query query = session.createQuery(hql);

问题:说明HQL注入与SQL注入的区别,给出防御方案

答案

  • 差异点:HQL支持对象属性查询,但不直接操作表,但可通过' OR '1'='1类语句绕过

  • 策略:
    1. 使用setParameter()参数

    2. 对输入允许进行白名单校验(如仅字母数字)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值