网络攻防 第五周学习总结

教材学习

第11章 Web应用程序安全攻防

  • 11.1 Web应用程序体系结构及其安全威胁
    Web应用体系结构包括浏览器、web服务器、web应用程序数据库、传输协议。
    Web应用安全威胁和攻击类型:针对浏览器和终端用户的Web浏览安全威胁;系统层安全威胁;Web服务器软件安全威胁;Web应用程序安全威胁;Web数据安全威胁。
  • 11.2 Web应用安全攻防技术概述
    Web应用的信息收集,针对Web应用程序的探测和漏洞发现的技术方法:手工审查Web应用程序结构与源代码、自动下载与镜像Web站点页面、使用Google Hacking技术审查与探测Web应用程序、Web应用程序安全评估与漏洞探测。
    攻击Web服务器软件,Web服务器平台中的安全漏洞主要有:数据驱动的远程代码执行安全漏洞、服务器功能扩展模块漏洞、样本文件安全漏洞、源代码泄露、资源解析攻击。
    攻击web应用程序(6类):针对认证机制的攻击、授权机制的攻击、客户端攻击、命令执行攻击、信息暴露、逻辑攻击。
    攻击Web数据内容,具体包括安全敏感数据泄露、网站内容遭受篡改和不良信息内容上传。
    针对上述各种类型Web应用安全威胁、信息收集和攻击技术手段,应设计、部署和实施安全防护措施:Web站点网络传输安全设防措施、Web站点操作系统及服务安全设防措施、web应用安全设防措施、web站点数据安全设防措施。
  • 11.3 SQL注入
    代码注入是针对web应用程序的主流攻击技术之一。代码注入根据攻击目标的不同又分为:恶意读取、修改与操纵数据库的SQL注入攻击;在Web服务器端安装、执行Webshell等恶意脚本的PHP注入或ASP注入攻击;在web服务器端恶意执行操作系统命令的Shell注入攻击;其他注入攻击。
    SQL注入原理,是向Web应用程序提供的用户输入接口输入一段SQL查询命令,攻击和利用不完善的输入验证机制,使得注入代码得以执行完成非预期的攻击操作行为。
      攻击步骤:发现SQL注入点;判断后台数据库类型;后台数据库中管理员用户口令字猜解;上传ASP后门,得到默认账户权限;本地权限提升;利用数据库扩展存储过程执行Shell命令。
    SQL注入攻击防范措施:使用类型安全的参数编码机制;凡是来自外部的用户输入,必须进行完备检查;将动态SQL语句替换为存储过程、预编译SQL或ADO命令对象;加强SQL数据库服务器的配置与连接。
  • 11.4 XSS跨站脚本攻击
    XSS跨站脚本攻击的最终目标是使用Web应用程序的用户。XSS跨站脚本漏洞有两种类型:持久性XSS漏洞和非持久性XSS漏洞。前者是危害最为严重的XSS漏洞。
    XSS攻击防范措施:(1)服务器端防范措施:输入验证、输出净化、消除危险的输入点。(2)客户端防范措施:提高浏览器访问非受信网站时的安全等级、关闭cookie功能等。

第12章 Web浏览器安全攻防

软件安全困境三要素:复杂性、可扩展性、连通性。浏览器软件面临着严重的威胁。

  • Web浏览器的渗透攻击威胁 网页木马
    网页木马存在的技术基础:Web浏览端安全漏洞。
    网页木马的本质核心——浏览器渗透攻击。
    网页挂马机制,最主要的有如下四类策略:内嵌HTML标签、恶意Script脚本、内嵌对象连接、ARP欺骗挂马。
    网页木马的检测与分析方法:基于特征码匹配的传统检测方法、基于统计与机器学习的静态分析方法、基于动态行为结果判定的检测分析方法、基于模拟浏览器环境的动态分析检测方法、网页木马检测分析技术综合对比。

视频学习

Kali漏洞分析中数据库评估的工具

1、BBQSql,是一个Python编草鞋的盲注工具,检测可疑的注入漏洞很有用,它也是个半自动工具,允许客户自定义参数。

2、DBPwAudit(数据库用户名密码枚举工具)
破解SQLServer数据库./dbpwaudit -s IP -d master(数据库名) -D mssql(数据库类型) -U username(字典) -P password(字典)
破解MySQL数据库./dbpwaudit.sh -s IP -d mysql(数据库名) -D MySQL(数据库类型) -U username(字典) -P password(字典)

3、HexorBase图形化的密码破解与连接工具,是开源的。

4、jsql是用Java写的,可以很方便地查看数据库内容、读取文件、写入文件等。它还可以检测SQL注入漏洞,将存在注入漏洞的URL贴进来即可进行响应的漏洞利用。有时候URL不能正常识别或不能检测漏洞,使用效果还有待改善。

5、MDBTools,包括MDB-Export、mdb-parsecsv、mdb-sql、mdb-tables等子工具,主要是针对MDB数据库的,具体环境具体分析。

6、Oracle Scanner,是一个用Java开发的Oracle评估工具。它是基于插件的结构,可以列举很多信息。

7、SIDGusser,也是针对Oracle的SID进行暴力枚举的工具,SID为Oracle的实例名,Oracle连接字符串,通过实例名+用户+密码来连接。

8、SqlDICT,又一个用户名密码枚举工具,通过Wine运行。

9、tnscmd10g,也是用在Oracle数据库

10、Sqlsus是一个开源的MySQL注入接管工具,使用Perl编写,基于命令行界面。可以获取数据库结构。最好用的两点,是注册获取数据速度非常快,再者是自动搜索可写目录。
生成配置文件:sqlsus -g test.conf
编辑配置文件:vi test,conf , 修改our $url_start = "";写入地址。
启动并测试:sqlsus test.conf
获取数据库数据,查看全部数据库名字sqlsus> get databases
设定数据库:

sqlsus> set databases
database = "mysql"  /*设定数据库是mysql"*/

获取表sqlsus> get tables
出现问题:

11、Sqlninja是专门针对Microsoft SQLServer的sql注入工具。侧重于获得一个shell。优点:可找到远程SQL服务器的标志和特征;对管理员口令“sa”的强力攻击;一旦找到口令就将特权提升到“sa”权限;如果原始的xp_cmdshell被禁用后,就创建一个定制的xp_cmdshell;不需要FTP连接;为了找到目标网络的防火墙所允许的端口,可以实施针对目标SQL服务器的TCP/UDP端口扫描;逃避技术;如果得到权限为sa,可以结合,msf进一步对目标主机进行渗透。

12、Sqlmap是一个开源的渗透测试工具,是用Python编写,主要用于自动化地侦测和实施SQL注入攻击及渗透数据库服务器。SQLMAP适用于高级渗透测试用户,可以获得不同数据库的指纹信息,还可从数据库中提取数据,此外,还能处理潜在的文件系统及通过带外数据连接执行系统命令等。

./sqlmap.py -u "注入地址" -v 1 --dbs   /*列举数据库*/
./sqlmap.py -u "注入地址" -v 1 --current-db   /*当前数据库*/


将安全性调到最低

出现问题:sqlmap不能用!

按照在网上所找解决问题,下载sqlmapgit clone https://github.com/sqlmapproject/sqlmap.git sqlmap-dev

Kali漏洞分析之Web应用代理(大部分是用Java开发)

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

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


访问网易邮箱

2、OwaspZAP攻击代理,查找网页应用程序漏洞的综合类渗透测试工具,包含拦截代理、自动代理、被动代理、暴力破解、端口扫描及蜘蛛搜索等功能。是会话类调试工具。

3、paros proxy对web应用程序的漏洞进行评估的代理程序,支持动态地编辑、查看HTTP/HTTPS,从而改变cookies和表单字段等项目。
检查漏洞的形式:SQL注入、跨站点脚本攻击、目录遍历等。

4、proxystrike
5、vega,web应用程序安全测试平台,能帮助验证注入SQL、跨站脚本、敏感信息泄露和其它一些安全漏洞。
6、webscarab,包括HTTP代理、网络爬行、网络蜘蛛、会话ID分析等功能。它基于GNU协议。

Kali漏洞分析之BurpSuite


Burp Suite,用于攻击web应用程序的集成平台,它带有一个代理,通过默认端口8080运行,使用这个代理,可以截获并修改从客户端到web应用程序的数据包。它包含了一系列burp工具,这些工具之间有大量接口可以互相通信。平台中所有工具 共享一robust框架,以便统一处理HTTP请求。它允许工具者结合手工和自动技术去枚举、分析、攻击web应用程序。


1)配置监听端口,配置浏览器。
Edit>preferences>Advanced>Netwok>Connection>settings>Mnnualproxyconfiguration>HTTP proxy

2)爬虫与扫描
3)测试暴力破解表单账户密码,可以针对不同的表单进行枚举破解,若网站存在代码缺陷,亦可绕过某些验证码进行枚举。


4)Repeater改包重放模块
很方便直观地改包提交,查看回显。
5)decoder模块,编解码模块

6)Compare模块,比较两个请求包或返回包的不同之处

7)插件模块

Kali漏洞分析之Fuzz工具


它也是模糊测试的工具,模糊测试时漏洞挖掘过程中的重要一步。

1、Bed.pl
Bed(Bruteforce Exploit Detector)是一个纯文本协议的Fuzz工具,能够检查常见的漏洞,如缓冲区溢出,格式串漏洞,整数溢出等。
例如:
bed -s FTP -t 172.16.1.1 -p 21 -o 5 /*FTP协议的插件 -t加一个目标的IP地址 -p加端口(FTP协议,端口默认为21)-o为timeout*/

2、Fuzz_ipv6,THC出品的针对IPV6协议的模糊测试工具

3、Ohrwurm

4、Powerfuzzer作为Fuzz请求的工具
Burpsuite等web代理工具也具有响应的Fuzz能力

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

6、Sfuzz

7、XSSer
命令行版界面

图形化界面xsser --gtk

主要是对点或面进行xss测试,判断是否有xss漏洞

找cookie的过程有些波折,跟视频上讲的不一样。最终发现在登录的界面内右击,选择View Page_Info打开界面,选择Security,里面有View Cookies选项,可以查看cookies:

由找到的cookies,按照视频中输入命令:



成功!

学习进度

课本第十一、十二章
视频16—视频20

视频学习(新增/累计) 教材学习 博客量(新增/累计)
目标 34个视频 12章(网络攻击技术与实践)
第一周 (实验楼学习) (实验楼学习) 1/1
第二周 5/5 第1、2章 1/2
第三周 5/10 第3章 1/3
第四周 5/15 第4章 1/4
第五周 5/20 第11、12章 2/6

参考资料

1、Sqlmap使用笔记
2、极简MarkDown排版介绍
3、Exceltk下载地址
4、转换Excel到MarkDown详细用例
5、网络攻防官网

本周点评博客

王亚琼
宋瑞媛
毛卫华
张寒冰

posted on 2017-04-01 18:07  20169312_孙玉情  阅读(366)  评论(6编辑  收藏  举报

导航