Web安全深度剖析-读书笔记1

page2
web安全简介
1.1 服务器是如何被入侵的
端口扫描、服务器密码爆破(ftp、数据库等)、缓冲区溢出等方式
程序员没有安全意识

web如此强大的原因:数据库、编程语言、web容器和优秀的web应用程序设计者

C段渗透
Service:
溢出、
MySQL、
FTP、
Web(sql注入、XSS、上传漏洞、代码执行、逻辑漏洞等)、
Mssql、
RDP等
社会工程学

1.2 如何更好地学习Web安全

①C/C++
②Java
③C#
④PHP
⑤Python
⑥HTML
⑦JavaScript
⑧数据库

page6
深入了解HTTP请求流程
2.1 http协议解析
超文本传输协议:浏览器和服务器通信的规则,它是万维网交换信息的基础,它允许将HTML文档从Web服务器传送到Web浏览器
2.1.1 发起HTTP请求
URL(统一资源定位符)也被称为网页地址,是互联网标准的地址,URL的标准格式如下:
协议://服务器IP【:端口】/路径【?查询】
2.1.2
HTTP遵循请求(request)/应答(response)模型,即web浏览器向web服务器发送请求时,web服务器处理请求并返回适当的应答
1、HTTP请求和响应
(1) http请求
http请求包括三部分,分别是请求行(请求方法)、请求头(消息报头)、和请求正文
(2) http响应
和http请求对应的是http响应,http响应也由三部分内容组成,分别是响应行、响应头(消息报头)、响应正文(消息主题)
2、HTTP请求方法
(1)GET
(2)HEAD
(3)POST
(4)PUT
(5)DELETE
(6)TRACE
(7)CONNECT
(8)OPTIONS
3、HTTP状态码
200
302
404
401
403
500
503
4、HTTP消息
(1)请求头
Host
User-Agent
Referer
Range
x-forward-for
Accept
Accept-Charset
(2)响应头
Server
Set-Cookie
Last-Modified
Location
Refresh
(3)普通头
(4)实体头
Content-Type
Content-Encoding
Content-Length
Last-Modified
2.1.3 模拟HTTP请求
此处可网上搜索
2.1.4 HTTP协议与HTTPS协议的区别
端口 HTTP:80 HTTPS:443
HTTP 超文本传输协议,信息是明文传输
HTTPS 具有安全性的SSL的加密传输协议,信息是非对称加密
HTTPS协议需要到CA申请证书,一般免费证书很少,需要交费,也有些web容器提供,如tomcat。
2.2 截取HTTP请求
2.2.1 Burp Suite
2.2.2 Fiddler
2.3 HTTP应用:黑帽SEO之搜索引擎劫持
搜索引擎输入自己的网站进入别人的网站
敏感,就不多说了
信息探测
3.1 Google Hack
3.1.1 搜索子域名
site:baidu.com
3.1.2 搜集Web信息
Google常用语法
关键词         说明
site           指定域名
intext          正文中存在关键词的网页
intitle          标题中存在关键词的网页
info           一些基础信息
inurl          URL存在关键词的网页
filetype         搜索指定文件类型

案例一:搜索存在敏感信息的网站
语法:intitle:管理登录 filetype:php //这句话的意思为查询网页标题含有“管理登录”,并且为php类型的网站,google可以轻松地搜索到很多该类型的网站。
案例二:搜集Discuz论坛主机
语法:intext:Powered by Discuz

小知识:网络蜘蛛
蜘蛛在爬行时,会爬行整个网站,网站内所有的链接都会被一一提交到Google的数据库中。

3.2 Nmap
Nmap支持多种扫描方式,包括TCP Syn、TCP Connect、TCP ACK、TCP FIN/Xmas/NULL、UDP等
参 数 说 明
-sT TCP connect()扫描,这种方式会在目标主机的日志中记录大批连接请求和错误信息。
-sS 半开扫描,很少有系统能把它记入系统日志。不过,需要Root权限。
-sF -sN 秘密FIN数据包扫描、Xmas Tree、Null扫描模式
-sP ping扫描,Nmap在扫描端口时,默认都会使用ping扫描,只有主机存活,Nmap才会继续扫描。
-sU UDP扫描,但UDP扫描是不可靠的
-sA 这项高级的扫描方法通常用来穿过防火墙的规则集
-sV 探测端口服务版本
-Pn 扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描
-v 显示扫描过程,推荐使用
-h 帮助选项,是最清楚的帮助文档
-p 指定端口,如“1-65535、1433、135、22、80”等
-O 启用远程操作系统检测,存在误报
-A 全面系统检测、启用脚本检测、扫描等
-oN/-oX/-oG 将报告写入文件,分别是正常、XML、grepable 三种格式
-T4 针对TCP端口禁止动态扫描延迟超过10ms
-iL 读取主机列表,例如,“-iL C:\ip.txt”

案例一:扫描指定IP所开放的端口
nmap -sS -p 1-65535 -v 192.168.1.106 //表示为半开扫描,指定端口为1-65535,并且显示扫描过程
案例二:扫描www.xsser.com C段存活主机
nmap -sP www.xsser.com/24
案例三:指定端口扫描
nmap -p 80,1433,22,1521 www.xsser.com
案例四:探测主机操作系统
nmap -o www.xsser.com
案例五:全面的系统探测
nmap -v -A www.xsser.com
注:nmap默认扫描主机1000个高危端口,若需要全面检测端口,则需要加入-p 1-65535或者-p-
案例六:穿透防火墙进行扫描
nmap -Pn -A www.2cto.com
3.2.3 Nmap脚本引擎
Nmap Script是Namp最好的功能之一,利用Nmap可以快速探测服务器
Nmap安装目录下存在Script文件夹,在Script文件夹中存在许多以".nse"后缀结尾的文本文件,即Nmap自带的脚本引擎。你也可以自己编写Nmap Script。Nmap Script实现许多不同的功能,其中包含漏洞扫描,漏洞利用,目录扫描等实用功能。
使用命令:--script=脚本名称
案例一 扫描Web敏感目录
nmap -p 80 --script=http-enum.nse www.xxser.com
案例二 扫描Sqlinjection
nmap -p 80 --script=sql-injection.nse www.xsser.com
案例三 使用所有的脚本进行扫描
nmap --script all 127.0.0.1
案例四 使用通配符扫描
nmap --script "http-*" 127.0.0.1
3.3 DirBuster
DirBuster是OWASP开发的一款专门用于探测Web服务器的目录和隐藏文件,比如网站的后台管理页面、文件上传界面,有时候甚至可以扫描出网站的源代码。
采用Java编写,所有安装DirBuster时需要Java运行环境(JRE)
①在Target URL输入框中输入URL,注意URL需要加上协议名
②在Work Method中可以选择DirBuster的工作方式:一种是GET请求方式,另一种是自动选择,DirBuster会自动判断使用HEAD方式或者是GET方式。此处选择Auto Switch即可。
③在Number Of Thread中选择线程。根据个人PC配置而定,一般选择30即可。
④在Select Scanning Type中选择扫描类型。如果使用个人字典进行扫描,选择List based brute force单选按钮即可。
⑤单击“Browse”按钮选择字典,可以选择使用DirBuster自带的字典,也可以使用自己配置的字典。
⑥在Select Starting Options中选择选项,有两个选项:一是Standard start point,另一个则是Url Fuzz。这里选择Url Fuzz,注意此项需要在URL to fuzz输入框中输入“{dir}”。“{dir}”代表字典的每一行
,如果希望在每一行前面加入字符串,如admin,则只要在URL to Fuzz中输入"/admin/{dir}"即可。
类似DirBuster的扫描工具有很多,在国内也有不少优秀的扫描器,且使用更加简便,如WWWscan、御剑后台扫描珍藏版。
3.4 指纹识别
计算机的指纹识别不仅针对网站CMS的指纹识别,还有针对服务器操作系统的指纹识别和对Web容器的指纹识别等。
nmap对操作系统的指纹识别
nmap -O 127.0.0.1
其他的使用工具即可!!!


漏洞扫描
4.1 BurpSuite
4.1.1 Target
4.1.2 Spider
4.1.3 Scanner
4.1.4 Intruder
4.1.4 辅助模块
4.2 AWVS
4.3 Appscan

猜你喜欢

转载自www.cnblogs.com/baluluys/p/10586599.html