20169208 2016-2017-2 《网络攻防实践》第5周学习总结
教材学习内容总结
web应用体系结构面临的安全威胁:
针对浏览器和终端用户的web浏览安全威胁,针对传输网络的网络协议安全威胁,web服务器软件安全威胁漏洞,web应用程序安全威胁,web数据安全威胁。
web应用信息收集:
使用多种手段,对目标web应用服务进行发现与剖析,标识出它的基本轮廓,具体包括服务器域名、IP地址和虚拟IP地址,web服务器端口和其他开放服务,web站点类型和版本,web应用程序类型与版本,以及web服务器和web应用程序中存在的安全漏洞信息等。
在web应用的各个层次上,目前安全最薄弱的环节在于web应用程序。原因在于web应用程序开发过程快,编码质量和测试水平低,同时web应用程序自身的复杂性和灵活性进一步恶化了它们的安全性。
对web应用程序的主流攻击技术有SQL注入和XSS跨站脚本攻击。
web浏览器软件的安全困境三要素:
复杂性-web浏览器软件由于需要支持多种类型的应用层协议内容,还要符合多种页面标准规范,支持多种客户端执行环境,满足大量用户的浏览需求,已经变得复杂庞大,导致了存在着大量可被攻击利用的漏洞。
可扩展性-支持第三方插件扩展机制,第三方扩展插件出现漏洞的情况极为普遍。
连通性—浏览器软件始终工作在联网状态,很容易被利用和攻击。
教材作业实践
1、SEED SQL注入实验
(1)运行 Apache Server
(2)phpBB2 web 应用
(3) 配置 DNS
(4)注入实验
2、SEED XSS攻击实验
(1)攻击测试是否存在XSS漏洞
<script>alert('XSS')</script>
存在漏洞。
(2)利用该漏洞获取cookies
<script>alert(document.cookie)</script>
得到cookies
教材学习中的问题和解决过程
问题:SEED中无法打开http://www.xsslabphpbb.com完成XSS漏洞测试相关实验。
解决方法:使用kali完成漏洞攻击实验,具体过程详见教材作业第二部分。
视频内容学习
1、kali漏洞分析之数据库评估
web层与数据库连接的漏洞在安全测试中并不少见,OWASP曾经的top10之首:SQL注入漏洞也是因此产生。
(1)BBQSQL
BBQSQL是一个Python编写的盲注工具(blind SQL injection framework),当检测可疑的注入漏洞时会很有用。同时BBSQL是一个半自动的工具,允许客户自定义参数。
(2)DBPwAudit(数据库用户名密码枚举工具)
(3)HexorBase
图形化的数据库密码破解与数据库连接工具,开源。
如下图显示数据库的表的信息。
点击bruteforce database servers暴力枚举用户名和密码。
(4)JSQL
Java编写的,针对SQL注入的应用。
在探测发现注入点后,可以用jsql图形化的查看内容。
(5)MDBTOOLS
工具套装
(6)oscanner
是一个用Java开发的
(7)SIDGUesser
同样是针对Oracle的SID进行暴力枚举的工具。SID为Oracle实例名,Oracle连接字符串,通过实例名+用户+密码连接
(8)sqldict
windows下的程序,用wine模拟。
(9)tnscmd10g
允许向Oracle数据库注入数据。
-p 端口号
--logfile 写一个日志
(10)sqlsus
如何注入语句:
sqlsus -g test.conf 生成配置文件
vim test.conf 编辑配置文件
按照自己的目的输入相关目标,设置注入点。
(11)sqlninja
与sqlsus类似的是也需要将注入网址写在配置文件里,默认是sqlninja.conf。
(12)sqlmap
使用metasploitable自带的dvwa测试,默认登录用户名为admin,密码为password
web漏洞的训练平台,由存在漏洞的代码组成。
dvwa security设置为low。
使用sqlmap测试,需要cookies。
结果显示存在漏洞的语句。
--current-db 查看当前的数据库
--current-user 查看当前的用户
--dbs 当期存在的数据库
--user 当前的用户
--pass 当前用户的密码
--privilege 当前用户的权限
--tables -D dvwa 针对当前数据库dvwa查看表
--columns -T users -D dvwa 查看user表中的字段信息
--dump -C user,password -T users -D dvwa 查看user和password字段的值
--dump-all 指向某个表 dump所有内容
-r risk提高权限
--forms 表单
--os-cmd 系统命令
--os-shell 获取系统shell
--sql-shell 直接获取sqlshell,执行SQL语句,select load _file('/etc/password') 获取这个文件
2、kali漏洞分析之web应用代理
(1)burpsuite
(2)owasp zap
(3)paros
界面简单
(4)vega
扫描漏洞,代理功能。
(5)webscarab
3、kali漏洞分析之brupsuite
在proxy下的option设置拦截规则。
(1)配置监听端口,默认是8080。
选择settings
对http://172.16.6.56/dvwa/login.php的监听结果。
(2)爬虫与扫描
访问网站,截获信息
(3)测试暴力破解表单账户密码
使用错误的用户名和密码登录dvwa
cluster bomb 依次读取字典的每一行
通常通过判断length的长度判断是否正确。
因暂时没有用户名和密码字典,没有详细做。
(3)Repeater改包重放模块
(4)Decoder
测试编码漏洞
(5)compare
比较文件是否有哪里不同
(6)extender
插件模块
4、kali漏洞分析之fuzz工具
模糊测试工具
(1)bed.pl
可以针对不同的协议使用不同的插件
-s 针对FTP协议,FTP参数
-t 目标IP地址
-p 目标端口
-o timeout
发送一连串畸形数据包,尝试使程序报错,进行判断
(2)fuzz_ipv6
(3)ohrwurm
简单的RIP模糊测试工具。对SIP通信的模糊测试。
(4)PowerFuzzer
(5)wfuzz
登录get请求,登录页面口令猜解,忽略404页面 wfuzz -c -z file,users.txt -z file,pass.txt -hc 404 http://www.site.com/log.asp?user=FUZZ&pass=FUZZ
页面数目猜解 wfuzz -c -z range,1-10 --hc=BBB http://www.site.com/FUZZ{something}
轻量
(6)SFuzz
(7)XSSer
针对XSS漏洞的挖掘,对一个页面或点进行xss测试,是否有XSS的漏洞
xsser -u "http://172.16.6.56/dvwa/vulnerabilities/xss_r/?name=" --cookie="PHPSESSID=9ddff1a2f16fb71dcce9b0633d4aa2a7;security=low" -v
视频学习中的问题和解决过程
1、如何在火狐浏览器中查看页面cookie
(1)在最右侧选项中选择preferences
(2)在privacy中选择use custom settings for history,然后选择show cookies
(3)查看所需cookies
2、JSQL工具中找不到填写cookie的地方
直接在header中写,按照提示的语法格式填写。
Cookie:PHPSESSID=9ddff1a2f16fb71dcce9b0633d4aa2a7;security=low
Cookie:cookie名字=cookie值
其他
本周学习了对web应用及浏览器的安全攻防,web应用和浏览器是日常使用最多的软件,存在很多漏洞,在日常生活中要注意防范。
学习进度条
上周考试错题总结
没有错题。
第四周博客结对及互评
http://www.cnblogs.com/murphy1994/p/6618054.html
http://www.cnblogs.com/albertman/p/6613583.html
http://www.cnblogs.com/sunxing/p/6597585.html
http://www.cnblogs.com/zhaohui801/p/6601584.html
学习目标(本学期)
完成网络攻防课程的学习,完成各种攻防实践操作。
第二周进度
- 《网络攻防技术与实践》课程学习了第一章和第二章
- 学习kali视频5个
- 详细查找了解了两个网络安全工具
- 查找两个黑客资料
第三周进度
- 学习视频6-10
- 学习课本第三章
- 完成第三章课后作业
第四周进度
-
网络嗅探的理论与工具
-
网络协议分析的理论与工具
-
上周目标完成情况
完成 -
本周学习计划
学习内容 | 学习时间 |
---|---|
课本11、12章学习 | 7小时 |
kali视频16-20 | 7小时 |
教材实践 | 5小时 |
整理写博客 | 2小时 |