Webshell(网页后门)
创始人
2024-05-19 20:21:14
0

数据来源

        本文仅用于信息安全的学习,请遵守相关法律法规,严禁用于非法途径。若观众因此作出任何危害网络安全的行为,后果自负,与本人无关。  

一、Webshell简介 

01 什么是 Webshell

        webshell是以 asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境 · 也可以得其称做为种网页木马后门。

        攻击者可通过这种网页后门获得网站服务器作权限 · 控制网站服务器以进行上传下载文件、查看数据库、执行命令等...

02 什么是木马 

        木马:全称“特洛伊木马( Trojan Horse)” · 指寄宿在计算机里的一种非授权的远程控制程序 · 它可以在计算机管理员未发觉的情况下 · 开放系统权限 · 泄露用户信息给攻击者 · 是黑客常用的工具之。

03 什么是后门

        后门:一台计算机上有65535个端口 · 每个端口是计算机与外界连接所开的“门” · 每个门都有计算机提供的一些服务 · 攻击者利用这些服务·获取服务器的权限 · 给自己进入计算机留下一个后门

04 Webshell的分类

1. 根据文件大小分类:

  • 一句话木马:代码简短 · 通常只有一行代码 · 使用方便
  • 小马:只包含文件上传功能 · 体积小
  • 大马:体积大 · 包含很多功能 · 代码通常会进行加密隐藏

2. 根据脚本类型分类:

  • jsp
  • asp
  • aspx
  • php

05 Webshelt特点

  • 1. webshell大多以动态脚本形式出现
  • 2. webshel就是一个asp或php木马后门
  • 3. webshello可以穿越服务器防火墙 · 攻击者与被控服务器交换数据都是通过80端口传递
  • 4. webshe一般不会在系统日志中留下记录 · 只会在web日志中留下数据传递记录 

06 webshell攻击流程

  1. 利用web漏洞获取web权限
  2. 上传小马
  3. 上传大马
  4. 远程调用 webshell 执行命令 

07 常见 Webshell

eval函数:把字符串当成代码执行

$_POST[ ]:以POST的形式传递数据给PHP页面

1. $_GET:

用来获取由浏览器通过GET方法提交的数据。

GET方法他是通过把参数数加在提交表单的 action 属性所指的URL中,值和表单内每个字一一对应,然后在URL中可以看到,但是有如下缺点:

  1. 安全性不好,在URL中可以看得到
  2. 传送数量较小,不得大于2KB

2. $_POST

用来获取由浏览器通过POST方法提交的数据

POST方法他是通过HTTP POST机制,将表单的各个字段放置在HTTP HEADER内一起传到acton属性所指的URL地址中,用户看不到这个过程。

他提交的大小一般来说不受限,但是具体根据务器的不同,还是略有不同,相对于_GET方式安全性略高。 

二、Webshell基本原理

01 基本原理

1. 可执行脚本

        HTTP数据包($_GET、$_POST、$_COOKIES)

2. 数据传递

3. 执行传递的数据

  • 直接执行(eval、system、passthru)
  • 文件包含执行(include、require)
  • 动态函数执行($a= "phpinfo" ;$a(); )
  • 回调函数 (array_map等)
  • ......

02 常见 php webshell 

        注意:下面介绍的一句话代码很容易被电脑自带的杀毒功能查杀,如果要实验可以关闭病毒查杀功能,如果要免杀自行百度查看教程。

 演示:

以GET的方式传递:

        1)下载、安装phpstudy并启动(安装过程可以一路下一步,也可以改安装路径)    http://public.xp.cn/upgrades/PhpStudy2018.zip

         2)打开安装目录下的WWW文件夹

        3)在桌面新建一个文本文档,把原来的txt的后缀名改为php文件名称随便写,并以记事本的方式打开把代码粘贴进去保存,然后把文件拉到www文件夹下。

        4)在浏览器中输入:http://127.0.0.1/get.php  访问 ,没报错就是成功了

        5)在网页的lURL路径后面加上:?pass=phpinfo();    就可以打开phpinfo()页面(里面包含一些PHP的版本、扩展之类的信息)

        6)如果受害者是windos系统,我们可以直接在URL指定win的DOS命令,把URL路径的phpinfo()改成system(),括号内可以写上DOS命令如:ipconfig  # 查看ip地址的基本信息、net user  用户名    密码   /add  # 新建用户,验证 net user 查看用户列表,   net localgroup  组名   用户名    /add    # 添加用户到组,如加入到管理员组就会有管理员权限:Administrator

以POST的方式传递:

        1)和上面的步骤一样在桌面创建一个PHP文件把代码粘贴进去然后再拉到www文件夹加,在浏览器中访问

        2)这里使用Burpsuite软件进行抓包演示

或者 使用windows系统自带的功能进行代理

        3)开始抓包

        4)抓到的数据包的请求方法默认是GET,我们这里要测试POST请求所以这里要改一下 

        5)通过post的方式进行数据请求

        查看phpinfo页面:

pass=phpinfo();

        不过上面这个回显看起来让人头大,我们可以选择“Render”呈现展示那些代码在Web上显示的样子

        6)在POST请求方法内一样可以跟GET方法一样执行一些系统命令,通过system()函数

        如:ipconfig 查看ip信息

pass=system('ipconfig');

        7)解决用Burpsuite发包中文乱码的问题(参考:快速解决BurpSuite中文乱码问题....-百度经验)

重新发包 

Cookie的方式

assert() 会检查指定的 assertion 并在结果为 false 时采取适当的行动

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

示例:

        跟上面的步骤一样创建一个PHP文件把代码粘贴进去并访问,建议在WWW文件夹加创建一个名为Webshell的文件夹,把这些有关于 Webshell的后门文件都放在里面进行分类方便以后寻找。

        这里使用中国菜刀打开文件(这个菜刀软件找了一天,下载很多版本都无法正常使用,这个版本是包含源码和可运行文件,很多人写的文章都是只有使用教程没有软件下载链接,你们以后攻击别人电脑被捕了,千万不要说是用我的链接下载的攻击工具)

Cookie: 1=eval($_POST['cmd'])

03 一句话写马小马

        fputs是一个函数,具有的功能是向指定的文件写入一个字符串

        fopen 其功能是使用给定的模式 mode 打开 filename 所指向的文件。文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回 NULL,并把错误代码存在 error 中

        fopen函数的功能是打开一个文件,其调用的一般形式为:(来源)

文件指针名=fopen(文件名,使用文件方式)。

        "w" = “wt”:新建一个文本文件,已存在的文件将内容清空,只允许写

下面这句代码的意思是创建一个up.php文件,文件的内容是:

'); ?>

示例:

        创建一个php文件,我这里的文件名是fputs

在浏览器中访问我们的木马文件 

我们真正的目的就是通过一句话木马上传我们的将要生成的up.php文件的内容改成下面的小马代码就好了,我这里为了方便直接将up.php文件的内容改成下面的(代码来源)

为了避开一些安全检查,我们可以把代码转换成base64字符串,我这里是使用小葵进行字符转换,也可以在百度搜索在线的字符转换工具。

新建一个把下面代码粘贴进去:base64.php

base64_decode() 这函数是PHP解密base64字符串的函数,文件内容的加密前两次加密后一直有特殊字符,所以这里加密了三次,解密使用的base64_decode()也使用了三次

浏览器访问base64.php之后就会生成一个qq.php文件,里面的内容和up.php是一样的

可以在浏览器中访问qq.php

04 小马上传大马(请勿用于非法用途,后果作者概不负责!)

大马链接(代码来源)

Webshell管理工具介绍(第三个工具weevely3在kali中是自带的不用安装)

最后再加个生成图片马:(这个我没尝试过,如果成功了可以给我留言)

1.php的内容可以是我们的一句话马:

命令:

copy 1.jpg/b + 1.php/a 2.jpg

相关内容

热门资讯

常用商务英语口语   商务英语是以适应职场生活的语言要求为目的,内容涉及到商务活动的方方面面。下面是小编收集的常用商务...
六年级上册英语第一单元练习题   一、根据要求写单词。  1.dry(反义词)__________________  2.writ...
复活节英文怎么说 复活节英文怎么说?复活节的英语翻译是什么?复活节:Easter;"Easter,anniversar...
2008年北京奥运会主题曲 2008年北京奥运会(第29届夏季奥林匹克运动会),2008年8月8日到2008年8月24日在中华人...
英语道歉信 英语道歉信15篇  在日常生活中,道歉信的使用频率越来越高,通过道歉信,我们可以更好地解释事情发生的...
六年级英语专题训练(连词成句... 六年级英语专题训练(连词成句30题)  1. have,playhouse,many,I,toy,i...
上班迟到情况说明英语   每个人都或多或少的迟到过那么几次,因为各种原因,可能生病,可能因为交通堵车,可能是因为天气冷,有...
小学英语教学论文 小学英语教学论文范文  引导语:英语教育一直都是每个家长所器重的,那么有关小学英语教学论文要怎么写呢...
英语口语学习必看的方法技巧 英语口语学习必看的方法技巧如何才能说流利的英语? 说外语时,我们主要应做到四件事:理解、回答、提问、...
四级英语作文选:Birth ... 四级英语作文范文选:Birth controlSince the Chinese Governmen...
金融专业英语面试自我介绍 金融专业英语面试自我介绍3篇  金融专业的学生面试时,面试官要求用英语做自我介绍该怎么说。下面是小编...
我的李老师走了四年级英语日记... 我的李老师走了四年级英语日记带翻译  我上了五个学期的小学却换了六任老师,李老师是带我们班最长的语文...
小学三年级英语日记带翻译捡玉... 小学三年级英语日记带翻译捡玉米  今天,我和妈妈去外婆家,外婆家有刚剥的`玉米棒上带有玉米籽,好大的...
七年级英语优秀教学设计 七年级英语优秀教学设计  作为一位兢兢业业的人民教师,常常要写一份优秀的教学设计,教学设计是把教学原...
我的英语老师作文 我的英语老师作文(通用21篇)  在日常生活或是工作学习中,大家都有写作文的经历,对作文很是熟悉吧,...
英语老师教学经验总结 英语老师教学经验总结(通用19篇)  总结是指社会团体、企业单位和个人对某一阶段的学习、工作或其完成...
初一英语暑假作业答案 初一英语暑假作业答案  英语练习一(基础训练)第一题1.D2.H3.E4.F5.I6.A7.J8.C...
大学生的英语演讲稿 大学生的英语演讲稿范文(精选10篇)  使用正确的写作思路书写演讲稿会更加事半功倍。在现实社会中,越...
VOA美国之音英语学习网址 VOA美国之音英语学习推荐网址 美国之音网站已经成为语言学习最重要的资源站点,在互联网上还有若干网站...
商务英语期末试卷 Part I Term Translation (20%)Section A: Translate ...