突破安全狗

准备知识

Sql注入

原理:

用户能控制输入并构造恶意参数(多为sql语句),Web应用执行的代码拼接了未加过滤的用户输入。

危害:

   1.  数据库信息泄露

   2.  网页篡改

   3.网站挂马:修改数据库的一些字段值,嵌入网吗链接,进行挂马攻击。

   4. 数据库被恶意操作

   5. 数据库被恶意操作:数据库服务器被攻击,数据库的系统管理员账户被篡改。

   6. 服务器被远程控制,被安装后门。

   7. 破坏硬盘数据,瘫痪全系统。

加固:

   1. 字符串过滤。

   2. 前端js防范sql注入。

   3. 在数据库中限制用户权限。

   4. 多使用数据库自带的安全参数。

   5. 最小权限运行程序。

   6. 命令执行错误时,不要给出过多关于错误细节的提示。

Web安全狗介绍

网站安全狗是一款集网站内容安全防护、网站资源保护及网站流量保护功能为一体的服务器工具。涵盖了网马/木马扫描、防SQL注入、防盗链、防CC攻击、网站流量实时监控、网站CPU监控、下载线程保护、IP黑白名单管理、网页防篡改功能等模块。能够为用户提供实时的网站安全防护,避免各类针对网站的攻击所带来的危害。

安全狗的主要功能

   1:网马木马主动防御及查杀    网页木马和网页挂马扫描工具采用特征码+启发式引擎的查杀算法,WEB木马检出率大于90%

   2:流量监控   能够实时监测到每个网站的进出流量和总流量,以及每个应用程序池及网站的CPU占用情况

   3:网站漏洞防御功能   可拦截GET、POST、COOKIES等方式的SQL注入,可对GET、POST、COOKIES分别定义特征码,以及可拦截XSS注入等行为。

   4:危险组件防护功能   全面拦截恶意代码对组件的调用权限,拦截IIS执行恶意程序,保护网站安全

   5:.Net安全保护模块   快捷设置.Net安全模式,禁止.Net执行系统敏感函数,保障网站安全

   6:双层防盗链链接模式    可以针对不同站点设置防盗链的过滤, 防止图片、桌面、软件、音乐、电影被人引用。如果发现请求者是盗用网站链接, 则自动重定向到错误处理页面

  7:网站特定资源防下载   支持对doc、mdb、mdf、myd等特定资源的防下载保护,加入要保护的敏感资料的路径,即可防止敏感资料被下载

   8:CC攻击防护   自主研发的独特抗攻击算法,高效的主动防御系统可有效防御CC攻击、流量攻击。

   9:网站流量保护   支持下载流量控制、下载线程控制。采用独创的线程控制和流量控制技术,大大提高服务器性能, 保护网站流量。

SQL注入绕过WAF

  1. 大小写绕过 一些厂商的过滤很不严谨,一些是采用黑名单方式过滤,但是有些只过滤了小写形式,然而在传参的时候并没有将接收参数转换为小写进行匹配。针对这种情况,我们很简单就能绕过 如,union select 转换为 UnIOn sELeCT

  2. 内联注释 比如一个过滤器过滤了,union、where、table_name、table_schema、 =、and information_schema 通常利用内联注释进行如下方式绕过: id=1/*!UnIoN*/+SeLeCT+1,2,concat(/*!table_name*/)+FrOM /*information_schema*/.tables /*!WHERE */+/*!TaBlE_ScHeMa*/+like+database() 在PHP中,/ **/代表注释的意思,是终止的意思,因此当Web执行容器读到/*的时候,会认为后面的全部是注释内容,便不再检测,接下来使用终止注释符,从而就绕过了检测

  3. 替换关键字 比如过滤器过滤掉了select,我们可以这样拼接:seselectlect,使用嵌套拼接,这样过滤器过滤了中间的select,而两侧的字符又拼接成了select,这样可以绕过一些WAF

  4. Character编码 有些情况下,WAF对应用程序中的输入进行解码,但是有些WAF是只过滤解码一次的,所以只要我们对bypass语句进行双重编码就能将其绕过之。(WAF解码一次然后过滤,之后的SQL语句就会被自动解码直接执行了)。

实例演示

目标网站:172.16.12.2

检测漏洞:

点了几个页面发现URL中都是id=x类型的,输入id=1 and 1=1如下显示

显然我们被狗发现了。

尝试id=1',显示如下:

显而易见,我们输入的参数被带入数据库了,所以才报错的。

此处也可以采用内联注释来绕过安全狗:/*! and 1=1*/正常显示,/*! and 1=2*/页面不显示内容。

绕过安全狗防注入检测

union select有一个特性,就是如果前面的语句出现错误,则将后面查询到的数据输出到前面。

通过/*! order by 6*/成立而/*! order by 6*/报错发现有6个项。

然后通过/*!union//*!select*/1,2,3,4,5,6显示如下,发现1和4可以替换为有用的函数。

发现数据库为zzcms,且版本为5.5.47

通过user(),@@version_compile_os发现当前用户和当前操作系统

爆表

mysql数据库的information_schema存储着很多关于mysql数据库的内容,如所有的用户名、表名、列名等等,具体见百度。

通过group_concat()将查询到的结果连接在一起显示。

爆列名

爆bao用户名和密码

这个密码是不是有点离谱(md5值一般为32位,“0--9”和“a--f”组成的字符串),数了一下32位的,而切字母也在"a"--"f",所以我非常怀疑这是md5加密过的,解密后:123123.

绕过安全狗,进行上传

用admin和123123登录。

直接上传大马(data.php)被狗发现了,所以burpsuite抓包绕狗。

绕过原理:

发送到Repeater后,然后将文件内容复制一份,粘贴到下放,这时就相当于我们上传了两个文件,并将第一个文件修改后缀为jpg。当增加一处文件名和内容,让两个文件名不一致的时候,就成功绕过了安全狗的防护,上传了php文件。

原因是安全狗进行文件名匹配时候用的是第一个文件名data.jpg,是复合安全要求的,第二个文件在尾部,会将第一个文件覆盖掉,服务器在保存文件的时候保存了第二个文件名data.php,也就是,导致安全检查没有用,php文件已经成功上传了

 

大马界面如下

体验一下Webshell

提权

whoami发现竟然是system权限,可能是为了练手吧,system权限太难得了。

systeminfo查看系统信息

net user查看存在用户

我们可以通过administrator登录,但是不知道密码,由于我现在是system权限,所以net user administrator 123456将密码改为123456就可登录了。

在本机win+r输入mstsc打开windows的远程登录客户端,输入目标机ip,然后验证账户名和密码,登进去如下。

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值