教材内容学习
web应用程序体系结构及其安全威胁
web应用体系结构
- 浏览器
- web服务器
- web应用程序
- 数据库
- 传输协议http/https
web应用安全威胁
- 针对浏览器和终端用户的web浏览安全威胁
- 针对传输网络的网络协议安全威胁
- 系统层安全威胁
- web服务器软件安全威胁
- web应用程序安全威胁
- web数据安全威胁
web应用安全攻防技术概述
web应用的信息收集
对目标web应用服务进行发现与剖析,标识出它的基本轮廓,具体包括服务器域名,IP地址和虚拟IP地址,web服务器端口与其他开放服务,web站点类型和版本,web应用程序类型与版本,以及web服务器和web应用程序中存在的安全漏洞信息等。
web应用程序的探测和漏洞发现
- 手工审查web应用程序结构与源代码
- 自动下载与镜像web站点页面
- 使用Google Hacking审查与探测web应用程序
- web应用程序安全评估与漏洞探测
攻击web服务器软件
- 数据驱动的远程代码执行安全漏洞
- 服务器功能扩展模块漏洞
- 样本文件安全漏洞
- 源代码泄露
- 资源解析攻击
攻击web应用程序
- 安全敏感数据泄露
- 网站篡改
- 不良信息内容上传
web应用安全防范措施
- web站点网络传输安全设防措施
- web站点操作系统及服务安全设防措施
- web应用程序安全设防措施
- web站点数据安全设防措施
SQL注入
SQL注入攻击原理
SQL注入攻击步骤和过程
SQL注入攻击工具
SQL注入攻击防范措施
- 使用类型安全的参数编码机制
- 凡是来自外部的用户输入,必须进行完备检查
- 将动态SQL语句替换为存储过程,预编译SQL或ADO命令对象
- 加强SQL数据库服务器的配置与连接
XSS跨站脚本攻击
xss攻击技术原理
xss攻击类型
xss攻击防范措施
- 服务器端防范措施
- 输入验证
- 输出净化
- 消除危险的输入点
- 客户端防范措施
web浏览器的技术发展与安全威胁
web浏览的安全问题与威胁
web浏览端的渗透攻击威胁——网页木马
网页木马安全威胁的产生背景
网页木马存在的技术基础——web浏览端安全漏洞
网页木马的机理分析
- 网页木马的定义特性
- 对网页木马机理的全方位分析与理解
- 网页木马的本质核心——浏览器渗透攻击
- 网页挂马机制
- 内嵌HTML标签
- 恶意Script脚本
- 内嵌对象链接
- ARP欺骗挂马
- 混淆机制
网页木马的检测与分析技术
- 基于特征码匹配的传统检测方法
- 基于统计与机器学习的静态分析方法
- 基于动态行为结果判定的检测分析方法
- 基于模拟浏览器环境的动态分析检测方法
- 网页木马检测分析技术综合对比
kali视频学习(16——20)
kali漏洞分析之——数据库评估
BBQSql
BBQSql是一个Python编写的盲注工具,当检测可以的注入漏洞时会很有用。它还是一个半自动工具(需要手动设置一些参数),允许客户自定义参数
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(字典)
HexorBase
图形化的密码破解与数据库连接工具,开源
jsql
JSQL是一款轻量级安全测试工具,可以检测SQL注入漏洞。它跨平台(windows,linux,mac os x,solaris),开源且免费。将存在注入漏洞的URL贴进来即可进行响应的漏洞利用。
它可以很方便的查看数据库内容,读取文件,写入文件等
MDBTools
包括MDB-Export,MDB-Dump,mdb-parsecsv,mdb-sql,mdb-tables等子工具。主要是针对mdb数据库的,具体环境具体使用。
oscanner
Oscanner是一个用java开发的oracle评估工具,它是基于插件的结构,当前由两个插件可以做:
- Sid列举
- 口令测试
- 列举oracle版本
- 列举账号角色
- 列举账号特权
- 列举账号哈希
- 列举审计信息
- 列举口令策略
- 列举数据库链接
SIDGusser
同样是针对Oracle的SID进行暴力枚举的工具。SID 为Oracle实例名,Oracle连接字符串,通过实例名+用户+密码连接
SQLdict
是一个用户名密码的枚举工具。通过wine运行
tnscmd10g
这个工具允许我们向oracle数据库中注入命令
Sqlsus
sqlsus是一个开源的mysql注入和接管工具,sqlsus使用perl编写,基于命令行界面。sqlsus可以获取数据库结构,注入你自己的sql语句,从服务器下载文件,爬行web站点可写目录,上传和控制后门,克隆数据库等等。最好用的两点就是注射获取数据速度非常快,另外一个最大的特点就是自动搜索可写目录
要注入语句怎么注入呢?
首先用-g参数生成一个文件
然后用vi编辑这个文件
修改红线画着的句子,写入地址
启动并且测试
sqlsus test.conf
获取数据库数据
查看全部数据库名字
Sqlninja
在sql注入方面一直尊sqlmap为神器,但sqlninja也有自己的特点
sqlninja是一款perl编写的一个专门针对microsoft SQL Server 的sql注入工具。和市面上其他的注入工具不同,sqlninja没有将精力用在跑数据库上,而是侧重于获得一个shell。sqlninja的有点如下:
一个专门针对microsoft SQL Server 的sql注入工具。
可找到远程SQL服务器的标志和特征(版本,用户执行的查询,用户特权,xp_cmdshell的可用性,身份验证模式等)
“sa”口令的强力攻击
如果找到口令后,就将特权提升到“sa”
如果原始的xp_cmdshell被禁用后,就创建一个定制的xp_cmdshell
其中的t参数,代表测试连接是否是注入点。
f参数,指纹识别,判断用户,数据库,xp_cmdshell是否能用等。
b参数,暴力破解sa密码,可以-w指定字典,也可以不使用字典,这样该工具就会自己穷举。
e参数,用来提权,必须用-p指定sa的password,成功就会把当前数据库用户加入到sa组里面
x参数,尝试恢复xp_cmdshell
u参数,使用get和post上传二进制文件
-f参数,指定配置文件,注入网址是写在配置文件里的,默认是sqlninja.conf
Sqlmap(注入神器)
sqlmap是一个开源的渗透测试工具(python编写),它主要用于自动化地侦测和实施sql注入攻击以及渗透数据库服务器。配有强大的侦测引擎,具有很强大的抓取数据的能力。
KALI漏洞分析之——web应用代理
通过应用代理工具分析数据包,或修改数据包重放,暴力攻击等在web安全测试中经常用到
burpsuite
Burp Suite 是用于攻击web 应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。
proxy是代理。在option中,显示了代理监听是127.0.0.1,监听8080端口。如果我们将浏览器设置成127.0.0.1,端口号设置成8080,我们看一下是什么效果
设置完成之后,我们访问www.baidu.com,发现并没有得到百度的页面。这时候再看burpsuite中,intercept变成了黄色,同时还多出了一个GET请求
这时我们在百度中搜索一个关键字nba,可以看到bursuite有抓到了一个包
既然抓到了包,我们就可以i对包进行修改和利用
关于burpsuite的详细使用过程,会在以后详细介绍
owasp--zap
这是一款查找网页应用程序漏洞的综合类渗透测试工具。它包含了拦截代理,自动处理,被动处理,暴力破解,端口扫描以及蜘蛛搜索等功能。owasp zap为会话类调试工具,调试功能对网站不会发起大量请求,对服务器影响较小
paros
这是一个对web应用程序的漏洞进行评估的代理程序,即一个基于java的web代理程序,可以评估web应用程序的漏洞,它支持动态地编辑/查看HTTP/HTTPS,从而改变cookies和表单字段等项目。它包括一个web通信记录程序,web圈套程序(spider),hash计算器,还有一个可以测试常见的web应用程序攻击(如SQL注入式攻击和跨站脚本攻击)的扫描器。该工具检查漏洞形式包括:SQL注入,跨站点脚本攻击,目录遍历等。
vega
这个工具之前用过,它也有代理的功能。
vega是一个开源的web应用程序安全测试平台,能够帮助你验证SQL注入,XSS,敏感信息泄露和其他一些安全漏洞。
webscarab
手工修改包之类的功能,爬虫,xss检测等等。它是一款代理软件,包括HTTP代理,网络爬行,网络蜘蛛,会话ID分析,自动脚本接口,模糊测试工具,web格式的编码/解码,web服务描述语言和soap解析器等功能模块。
kali漏洞分析之——BurpSuite的使用
burpsuite的介绍:burpsuite是一个web应用程序集成攻击平台,它包含了一系列burp工具,这些工具之间有大量接口可以互相通信,目的是为了促进和提高整个攻击的效率。平台中所有工具共享同一robust框架,以便统一处理HTTP请求,持久性,认证,上游代理,日志记录,报警和可扩展性。
burpsuite允许攻击者结合手工和自动技术去枚举,分析,攻击web应用程序,这些不同的burp工具通过协同工作,有效的分享信息,支持以某种工具中的信息为基础供另一种工具使用的方式发起攻击。
1)配置监听端口,配置浏览器。
Edit>preferences>Advanced>Netwok>Connection>settings>Mnnualproxyconfiguration>HTTP proxy
2)爬虫与扫描
3)测试暴力破解表单账户密码,可以针对不同的表单进行枚举破解,若网站存在代码缺陷,亦可绕过某些验证码进行枚举。
4)Repeater改包重放模块
很方便直观地改包提交,查看回显。
5)decoder模块,编解码模块
6)Compare模块,比较两个请求包或返回包的不同之处
7)插件模块
kali漏洞分析之——Fuzz工具
FUzz是一个模糊测试工具
模糊测试是漏洞挖掘过程中重要的一步
bed.pl
Bed是一个纯文本协议的Fuzz工具,能够检查常见的漏洞,如缓冲区溢出,格式串漏洞,整数溢出等。
Fuzz_ipv6
这是THC出品的针对IPV6协议的模糊测试工具
0hrwurm
这是一个迷你的对RTP的fuzz工具,主要针对SIP通信的fuzz
powerfuzzer
是一个有图形化界面的工具,
burpsuite等web代理工具也具有相应的fuzz能力
wfuzz
针对web应用的模糊测试工具,可以进行web应用暴力猜解,也支持对网站目录,登录信息,应用资源文件等的暴力猜解,还可以进行get及post参数的猜解,sql注入,xss漏洞的测试等。该工具所有功能都依赖于字典。
Xsser
xsser是对xss的漏洞发掘
输入xsser --gtk可以打开xsser的一个图形界面
该工具主要是针对某个页面或某个点进行xss的测试,来看是否有xss的漏洞
找cookie的过程有些波折,跟视频上讲的不一样。最终发现在登录的界面内右击,选择View Page_Info打开界面,选择Security,里面有View Cookies选项,可以查看cookies:
由找到的cookies,按照视频中输入命令:
xsser -u "http://222.28.136.37/dvwa/vulnerabilities/xss_r/?name=" --cookie="PHPSESSID=4e01f0edcc8fe44cd155782c04a7f3ec;security=low" -v
学习进度
《网络攻防技术与实践》第十一章,十二章。kali视频第16到第20。