Web网站安全评估分析及防御
企业级网安运维
共30篇 | simeon2005
¥51.00 495人订阅
新人大礼包
小程序订阅 省¥12
专栏介绍
适用人群
无论是毫无基础的安全小白,还是初涉安全专业的高校学生,亦或是安全领域从业人员,都能让你各取所需。
订阅说明
1.本专栏为图文专栏,共计23期,现已更新完毕
2.专栏一经订阅永久阅读,可与作者留言互动
3.本专栏为虚拟产品,一经订阅,概不退款,请慎重订购
4.专栏阅读过程中,如有任何问题请联系51CTO小助手(微信:cto51boke/QQ:3591348659)
学习本专栏您能收获什么
1.9本网安运维实战书籍精华
2.日常网安运维练习资源及工具
3.SQLmap安装及入门
专栏目录
大家好,我是陈小兵,一个在网络安全实战领域奋斗了18年的“老人”了。在一线网络安全实战中,我一直致力于把那些值得更加深入讨论的话题和内容以图文的形式记录下来。随着日渐积累,已经出版了9本网络安全实战著作。2018年,北理工博士在读,同时受DEFON GROUP 010邀请在上海某安全领域知名沙龙做主题分享。
本次会将SQLmap专题中涉及到的应用及其安装软件打包,上传到百度网盘,需要的读者请联系51CTO小助手(微信:cto51shequ/QQ:3591348659)下载和使用。
SQLmap介绍及安装
SQLmap是一个开源的国内外著名的网络安全测试工具,可以用来进行自动化检测,利用SQL注入漏洞,获取数据库服务器的权限。它具有功能强大的检测引擎,针对各种不同类型数据库的网络安全测试的功能选项,包括获取数据库中存储的数据,访问操作系统文件甚至可以通过外带数据连接的方式执行操作系统命令。
SQLmap功能强大,在某些情况下,通过SQL注入可以直接获取webshell权限,甚至可以获取Windows或者Linux服务器权限。下面以一个实际案例来介绍如何获取服务器权限。
本案例主要介绍针对Mysql+PHP环境下如何检测和实施SQL注入,获取数据库相关信息,获取数据库表中值等,对于后续安全验证过程不涉及。
在实际网络安全测试过程中,当发现目标站点存在SQL注入漏洞,一般都是交给SQLmap等工具来自动处理,证明其存在SQL注入漏洞以及获取数据库;如果当前网站使用的数据库用户为root账号,则还可以尝试获取Webshell和提权。在一般情况下,如果发现是root账号,则90%以上机会可以获取webshell,且极有可能获得服务器权限。
在有些场景下,需要通过mysql直接连接来获取权限,例如通过暴力破解、嗅探等方法获取了账号及口令,服务器有可能未开放web服务。
对于存在Access注入的站点,可以通过手工注入或者工具注入来获取Access数据库中的表以及内容,特别是获取网站后台管理表中的用户名及其密码。
8.SQLmap绕过waf进行Access Injection
前面介绍了Acesss数据库手工绕过通用代码防注入系统,下面介绍如何通过SQLmap脚本来绕过waf防护实现注入。
9.burpsuite抓包配合SQLmap实施SQL Injection
在SQLmap中通过url进行注入是比较常见的,随着安全防护软硬件的部署以及安全意识的提交,普通url注入点已经越来越少,但在CMS中常常存在其它类型的注入,这类注入往往发生在登录系统后台后。本文介绍一种利用burpsuite抓包,然后借助SQLmap来进行SQL注入检查和测试。
10.使用SQLmap进行X-Forwarded头文件Injection
Shay Chen研究员曾经对60多款商业扫描软件进行测试,主要针对GET、POST、HTTP Cookie以及HTTP Header四种类型的注入进行评估,其测试结果如图1所示,红色表示其未支持。
目前越来越多的网站使用soap服务来进行通信,如果在其程序中未进行很好的过滤及安全处理,本文主要对soap SQL注入漏洞进行介绍,并通过SQLmap对其进行soap注入漏洞的实际测试。soap注入漏洞在SQLmap下得测试跟具体的数据库类型有关,匹配其类型进行注入即可。
12.SQLmap Injection获取Webshell及系统权限研究
使用SQLmap除了能进行SQL注入安全测试外,其还提供了强大的命令执行功能可以进行udf提权、MSSQL下xp_cmdshell提权,在条件允许的情况下,可以获取操作系统shell和SQL shell,有的还可以直接获取系统权限。本文对SQLmap如何获取webshell及系统权限进行讨论。
13.使用SQLmap进行MSSQL数据库Injection
SQL注入安全测试是通过将恶意的SQL查询或添加语句插入到应用的输入参数中,再在后台 数据库服务器上解析执行进行的安全测试,目前它是网络安全破坏者对数据库进行攻击的最常用手段之一,在owasp十大威胁漏洞中常年位居TOP 1。
14.使用SQLmap直连MSSQL获取webshell或者权限
在某些情况下,可能网站不存在SQL注入,但通过代码泄露以及备份文件泄露以及文件包含等方法获取了数据库服务器的IP地址、数据库用户名及密码,而对外可以访问数据库端口,或者通过代理可以访问端口,也即外网可以访问数据库(方便本地管理数据库),本文主要在这些情况下如何获取webshell或者系统权限进行讨论。
15.借用SQLiPy实现SQLmap自动化Injection
burpsuite提供免费版本和限制版本使用,其地址为https://portswigger.net/burp/ ,专业版本可以免费使用15天,目前最新版本为v1.7.33,Burp Suite Community Edition v1.7.33有很多功能限制,我使用的是网上提供的破解版本,burp-loader-keygen.jar,如图1所示,然后单击“Run”即可。第一次运行时要求进行注册,按照提示即可,在出现的注册窗口,将Activation Request数据复制到keygen那个输入框,然后将Activation Response复制burpsuite提交即可。
16.SQLmap利用搜索引擎获取目标地址进行Injection
SQLmap:搜索引擎
前面16章对SQLmap工具在漏洞测试中的各种应用进行了详细的介绍,在实际安全测试过程中有可能需要多种安全工具和方法进行交叉配合使用,以达到最佳的安全测试效果,本文以一个实际案例来介绍如何进行安全工具的交叉使用。
18.使用SQLmap进行oracle数据库Injection
过去asp、php、aspx的注入比较多,现在随着安全意识的提高,慢慢的这些注入点发现不如过去那么容易,但目前很多内网大型系统,往往使用oracle作为支撑,其传入参数处还是比较容易发现sql注入漏洞,可以通过avws漏洞扫描器进行漏洞扫描,也可以通过burpsuite进行手工注入测试。
“tuo-ku(拼音)”从字面意思也容易理解,从库里面拖出来!tuo-ku(拼音)是2010年左右逐渐进入公众视野,其源于2011年媒体报道多家互联网站用户数据库在网站上公开被下载,后面陆续被制作成社工库,用来公开查询个人信息。此次事件中超过5000万个用户帐号和密码在网上流传。因此tuo-ku(拼音)被用来指网站遭到安全破坏后,安全破坏者窃取其数据库。
网站采用asp编写的,多用access数据库,在一些小公司中经常使用,asp网站sql注入算是一种入门级别,是渗透实战过程不可缺少的部分,前面介绍了利用sqlmap对access数据库注入,其执行命令参数相同,但本文重点是介绍如何获取管理员密码后,通过登录后台,尝试获取webshell。
从github下载并且解压sqlmap 后,所有文件或者文件夹的数目加起来总共22个,其中文件夹13个,单独文件9个,部分目录和结构属于典型的github 项目结构,但是本文依然会做出简单的介绍,方便读者全面理解。
22.soap Injection mssql数据库sa权限处理思路及实战
前面的文章介绍了mssql直连来获取webshell及服务器权限的一些思路,但在实际安全测试过程中,可能漏洞仅仅sql注入点,有的服务器甚至仅仅对外开放80端口,此时无法通过直连数据库来进行进一步的安全测试,好在sqlmap功能强大,在其中都有解决方法。
23.soap Injection 某sql2008服务器结合msf进行提权
在实际成功注入过程中,漏洞的利用都是多个技术的融合,最新技术的实践,本次注入利用sqlmap来确认注入点,通过sqlmap来获取webshell,结合msf来进行ms16-075的提权,最终获取了目标服务器的系统权限。本文算是漏洞利用的一个新的拓展,在常规Nday提权不成功的情况下,结合msf进行ms16-075成功提权的一个经典案例。
支付成功
加入作者互动群
和作者近距离提问 &交流 &互动
扫描二维码 回复 ZL003 + 昵称 入群