2017-2018-2 20179215《网络攻防实践》第五周做业

《网络攻防实践》 第五周 学习总结

实践.SQL注入实验

实验环境

1.运行Apache Server:镜像已经安装,只需运行命令#sudo service apache2 startphp

2.phpBB2 web应用:镜像已经安装,经过http://www.sqllabmysqlphpbb.com访问,应用程序源代码位于/var/www/SQL/SQLLabMysqlPhpbb/mysql

3.配置DNS:上述的URL仅仅在镜像内部能够访问,缘由是咱们修改了/etc/hosts文件使http://www.sqllabmysqlphpbb.com指向本机IP 127.0.0.1。若是须要在其余机器访问,应该修改hosts文件,使URL映射到phpBB2所在机器的IP。web

4.找到/etc/php5/apache2/php.ini,找到magic_ quotes_ gpc = On这一行改成magic_quotes_ gpc = Offsql

在以前的实验中实验环境已经搭配好了。shell

关闭对抗措施

PHP提供了自动对抗SQL注入的机制,被称为magic quote,咱们须要关闭它。数据库

1.找到/etc/php5/apache2/php.iniapache

2.找到magic_ quotes_ gpc = On这一行安全

3.改成magic_ quotes_ gpc = Off服务器

4.重启Apache:sudo service apache2 restartcookie

对SELECT语句的攻击

这次任务,你须要经过访问虚拟机内的URL:www.sqllabmysqlphpbb.com。在进入phpBB以前系统会要求你登录。这个登录认证由服务器上的login.php实现,须要用户输入用户名和密码来经过认证。
实现过程以下:

那么当咱们访问:www.sqllabcollabtive.com;但咱们知道用户而不知道到密码的时候,咱们能够怎么登录?

(1)查看登录验证文件:

(2)修改sql语句为:

(3)修改完后重启一下服务器:
sudo service apache2 restart

(4)点击登录之后,咱们就能够绕过密码直接登陆:

对UPDATE语句的攻击

当用户想要在phpBB2中修改他们的资料时,能够点击Profile,而后填写表单修改。用户发送修改请求后,会执行include/usercp_register.php中的一条UPDATE SQL语句。

对抗SQL注入

  1. 使用magic_quotes_gpc避开特殊字符。

  1. 使用addslashes()来避开特殊字符。

  2. 使用mysql_real_escape_string避开特殊字符。

  3. Prepare Statement。

Kali视频学习

数据库评估(一)

WEB层数据库链接的漏洞在安全测试中并很多见,OWASP曾经的Top10之首,SQL注入漏洞也所以产生。

Kali下数据评估的工具:

1.BBQSql(半自动):

2.DBPwAudit(数据库用户名密码枚举工具)

3.HexorBase(实用)

图形化的密码破解与链接工具,开源;链接而且控制数据库执行一些语句。

输入ip就能够成功链接到mysql数据库中。

4.JSQL Injection

jSQL是一款轻量级安全测试工具,能够检测SQL注入漏洞。它跨平台(Windows、Linux、Mac OS X、Solaris),开源且免费。将存在注入漏洞的URL贴进来便可进行响应的漏洞利用。

5.MDBTools

6.Oracle Scanner

7.SIDGusser

针对Oracle的SID进行暴力枚举;SID为Oracle实例名,Oracle链接字符串:实例名+用户+密码

8.SqlDICT(用户名密码枚举工具)

数据库评估(二)

1.tnscmd10g(不经常使用)

容许向Oracle数据库注入命令

2.Sqlsus

3.Sqlninja

Sqlninja是一款perl编写的,侧重于得到一个shell。Sqlninja是专门针对Microsoft SQLServer的sql注入工具。可找到远程SQL服务器的版本和特征;对管理员口令“sa”进行强力攻击;一旦找到口令就将特权提高到“sa”权限;若是原始的xp_ cmdshell被禁用后,就建立一个定制的xp_ cmdshell;不须要FTP链接;为了找到目标网络的防火墙所容许的端口,能够实施针对目标SQL服务器的TCP/UDP端口扫描;逃避技术,使注入代码“模糊”不清,而且混淆/绕过基于强命的IPS和应用层防火墙;采用“盲目执行”攻击模式,能够用于发布命令并执行诊断;若是获得权限为sa,能够结合msf进一步对目标主机进行渗透。

4.Sqlmap

SQLMAP是一个开源的渗透测试工具,是用Python编写。主要用于自动化的侦测和实施SQL注入攻击以及渗透数据库服务器。配有强大的侦测引擎,适用于高级渗透册书用户,不只能够得到不一样的数据库指纹信息,还能够从数据库中提取数据,有很强大的抓取数据的能力。

经常使用命令:

SQLMap还有不少功能,如绕过WAF的tamper,修改UA的random-agent等等参数,须要在实际中灵活使用。

Web应用代理

经过web应用代理工具分析数据包,或修改数据包重放、暴力攻击等在WEB安全测试中常常用到。

web应用代理工具备:burpsuite、owasp-zap、paros、vega、webscarab、proxystrike

1.Burp Suite

Burp Suite是用于攻击web应用程序的集成平台。Burp Suite带有一个代理,经过默认端口8080运行,使用这个代理,能够截获并修改从客户端到web应用程序的数据包。

它包含了一系列burp工具,这些工具之间有大量接口能够互相通讯,这样设计的目的是为了促进和提升整个攻击的效率。平台中全部工具共享同一robust框架,以便赞成处理HTTP请求,持久性,认证,上游代理,日志记录,报警和可扩展性。

2.OwaspZAP

OWASP Zed Attack Proxy Project攻击代理(简称ZAP),是一款查找网页应用程序漏洞的综合类渗透测试工具。它包含了“拦截代理、自动处理、被动处理、暴力破解、端口扫描以及蜘蛛搜索”等功能。OwaspZAP为会话类调试工具,调试功能对网站不会发起大量请求,对服务器影响较小。

视频当中没有过多介绍,详细使用能够参考简书的这篇文章https://www.jianshu.com/p/78d7d4ad8054

3.Paros

paros proxy,这是一个对web应用程序的漏洞进行评估的代理程序,即一个基于Java的web代理程序,能够评估web应用程序的漏洞。它支持动态的编辑/查看HTTP/HTTPS,从而改变cookies和表单字段等项目。

它包括一个web通讯记录程序,web圈套程序(spider),hash计算机,还有一个能够测试常见的web应用程序攻击的扫描器。该工具检查漏洞形式包括:SQL注入、跨站点脚本攻击、目录遍历等。

4.Vega代理功能

Vega是一个开放源代码的web应用程序安全测试平台,Vega可以帮助你验证SQL注入、跨站脚本(XSS)、敏感信息泄露和其余一些安全漏洞。Vega使用Java编写,有GUI。

5.Webscarab

Webscarab一款代理软件,包括HTTP代理,网络爬行、网络蜘蛛、会话ID分析,自动脚本接口,模糊测试工具,WEB格式的编码/解码,WEB服务描述语言和SOAP解析器等功能模块。Webscarab基于GNU协议,使用Java编写,是WebGoat中所使用的工具之一。

漏洞分析fuzz工具(模糊测试工具)

1.Bed.pl

Bed(Bruteforce Exploit Detector)是一个纯文本协议的Fuzz工具,可以哦检查常见的漏洞,如缓冲区溢出,格式串漏洞,总体溢出等。

2.Fuzz_ipv6

THC出品的针对IPV6协议的模糊测试工具。

3.Ohrwurm

4.PowerFuzzer

5.Wfuzz

针对web应用的模糊测试工具,能够进行web应用暴力猜解,也支持对网站目录、登陆信息、应用资源文件等的暴力猜解,还能够进行get及post参数的猜解,sql注入,xss漏洞的测试等,该工具全部功能都依赖于字典。

6.SFuzz

7.XSSer

xsser --gtk 图形化界面

对一个页面或点进行xss测试,判断是否有XSS的漏洞。

相关文章
相关标签/搜索