web渗透笔记

web技术发展

静态web

动态web

应用程序

数据库

每人看到的内容不同

根据用户输入返回不同结果

web攻击类型有数百种

web攻击面:

network

os

web server

app server

web application

database

browser

第二章:HTTP协议

HTTP协议基础-明文:

无内建的机密性安全机制

嗅探或代理截断可查看全部明文信息

https只能提高传输层安全

无状态:

每一次客户端和服务器端的通信都是独立的过程

web应用需要跟踪客户端会话(多步通信)

不使用cooikes的应用,客户端每次请求都要重新身份验证(不现实)

session用于在于用户身份验证后跟踪用户行为轨迹(提高用户体验,但增加了攻击向量)

session 在server端

session id 在客户端

session定期失效

HTTP协议基础-cycle

请求/响应

重要的deader

set-cookie:服务器发给客户端的sessionID(被窃取的风险)

content-length:响应body部分的字节长度

location:重定向用户到另一个页面,可识别身份认证后允许访问页面

cookie:客户端发回给服务器证明用户状态的信息(头:值 成对比)

referrer:发起新请求之前用户位于哪个页面,服务器基于此头的安全限制很容易被修改绕过

HTTP协议基础-状态码

服务端响应的状态码表示响应的结果类型(5大类50多个具体响应码)

100s:服务器响应的信息,通常表示服务器还有后续处理,很少出现

200s:请求被服务器成功接受并处理后返回的响应结果

300s:重定向,通常在身份认证成功后重定向到一个安全的页面(301/302)

400s:表示客户端请求错误

401:需要身份验证

403:拒绝访问

404:目标未发现

500s:服务器内部错误(503服务不可用)

W3C官网:

http://www.w3.org/protocols/rfc2616/rfc2616-sec10.html

试验环境:

metasploitable 靶机环境

dvwa

httack

减少与目标系统交互

统计可访问的页面

安全工具:

扫描工具nikto:

搜索存在安全隐患的文件

服务器配置漏洞

perl语言开发的开源web安全扫描器

插件:nikto -list-plugins

nikto -update       官网: http://cirt.net/nikto/UPDATES/

nikto -host http://192.168.1.1

例:nikto  -host 192.168.1.1 -port 80,443,5601,9200

nikto -host 192.168.1.1 -ssl -port 443

nikto -host host.txt

nmap -p80 192.168.1.0/24 -oG | nikto -host       //-oG输出并grep ip地址

nikto -host https://www.baidu.com -useproxy http://localhost:8087   //使用代理伪装源地址

WEB application层面的安全隐患

-vhost

避免404误判

很多服务器不遵守PFC标准,对于不存在的对象返回200响应码

依据响应文件内容判断,不同扩展名的文件404响应内容不同

去除时间信息后的内容取MD5值

-no404

Nikto -interactive扫描过程的交互选项

v -verbose mode on/off

d -debug mode on/off

e -error reporting on/off

p -progress reporting on/off

r -redirect display on/off

c -cookies display on/off

a -auth display on/off

q -quit

N -next host

P -pause

Nikto配置文件:

/etc/nikto.conf

STATIC-COOKE=""cookie value";"cookie2"="cookie valu"

-evasion:使用LibWhisker中对IDS的躲避技术,可使用以下几种类型:

1,随机URL编码(非UTF-8方式)

2,自选择路径(/./)

3,过早结束的URL

4,优先考虑长随机字符串

5,参数欺骗

6,使用TAB作为命令的分隔符

7,使用变化的URL

8,使用Windows路径分隔符“\”

扫描工具:vega

JAVA编写的开源Web扫描器

扫描模式

代理模式

爬站/处理表单/注入测试

支持SSL:

vega:访问HTTPS注意事项:

skipfish:

C语言编写

实验性的主动web安全评估工具

递归爬网

基于字典的探测

速度较快

多路单线程,全异步网络I/O,消除内存管理和调度开销

启发式自动内容识别

误报较低

skipfish -o test http://1.1.1.1      -

skipfish -o test @url.txt

skipfish -o test -S complet.wl -W a.wl http://1.1.1.1   #-S:字典 dpkg -L skipfish   //查下可选字典

例:

# skipfish -o skipfish7 -S /usr/share/skipfish/dictionaries/minimal.wl http://es.niwodai.net

-o:指定存放目录

-I:只检查包含string的URL

-X:不检查包含string的URL                                         #logout

-K:不对指定参数进行Fuzz测试

-D:跨站点爬另外一个域

-l:每秒最大请求数

--m:每IP最大并发连接数

--config:指定配置文件

身份认证

skipfish -A user:pass -o test http://1.1.1.1


19:OWASP——ZAP 截断代理/主动/被动扫描

zed attack proxy

WEB Application 集成渗透测试和漏洞挖掘工具

开源免费跨平台简单易用

截断代理:

主动/被动扫描

Fuzzy/暴力破解

API: http://zap/

你可能感兴趣的:(web渗透笔记)