文章目录


Web安全测试概述

攻击系统软件可以直接获得root权限,因此黑客喜欢攻击系统软件。防火墙,ACL(访问路由列表)技术兴起,暴露在互联网的系统得到了保护。

所以黑客将目光转向Web应用。

过去直接针对目标进行攻击,比如端口扫描(端口有服务在使用,比如邮件mysql等,得到正在进行的服务便于攻击)、密码爆破、缓冲区溢出

入侵Web服务器手段

1.C段渗透压

2.Service

3.社会工程学:利用人性

渗透测试

通过实际的攻击进行安全测试与评估的方法

1.明确目标

2.信息收集:

收集域名信息:

收集IP信息:一个域名对应多个IP ping nslookup

ping www.baidu.com##命令

nslookup baidu.com##命令
服务器: UnKnown
Address: 111.11.1.1##DNS服务器(解析域名对应IP)

非权威应答:
名称: baidu.com ##域名服务器
Addresses: 220.181.38.251
220.181.38.148

网站工具https://site.ip138.com/

2.2搜索子域名

子域名探测可以帮助我们发现渗透测试中的更多服务,这将增加发现漏洞的可能性。

1.最简单搜索方法:site:baidu.com,这样就搜索到百度域名下的网站。这样会搜索不全。

2.点击Chrom域名前的小锁,点击详细信息,点使用者可选名称。

3.使用工具。

3.查询注册人信息

​http://whois.chinaz.com/​

查询www.qq.com,得到注册人信息。反差,可以查到邮箱注册了哪些域名。

4.收集web信息

关键字

说明

site

把搜索范围规定在特定的站点中

intext

正文中存在关键字的网页

intitle

标题中存在关键字的网页

inurl

URL存在关键字的网页

filetype

搜索指定文件类型

百度搜索

intitle:软件测试 filetype:pdf

得到包含软件测试 的pdf文件。

5.搜集敏感目录

可以被利用的目录:后台目录、上传目录。

敏感目录:robots.txt文件

https://www.baidu.com/robots.txt 这个文件是规定搜索引擎

不允许爬虫的引擎,这些路径不能访问

User-agent: Baiduspider
Disallow: /baidu
Disallow: /s?
Disallow: /ulink?
Disallow: /link?
Disallow: /home/news/data/
Disallow: /bh

扫描敏感目录的工具

DirBuster 输入网址http://www.baidu.com 选择字典 进行爆破。选择字典不同 搜索范围不同。

6.端口扫描

Nmap,也就是Network Mapper “扫描之王”。使用英文系统账户下载。

1.TCPConnect扫描

普通扫描,特点 扫描速度快,准确度高,对操作着没有权限上的要求。

容易被防火墙和防入侵系统发现

原理:三次握手

2.SYN扫描 TCP同步扫描。

秘密扫描的方式之一,缺点需要管理员权限,没有形成三次握手,只进行两次

3.UDP端口扫描(-sU)

对于UDP不存在监听这个概念。

4.Ping扫描

检测网络上哪些主机在运行。

##扫描指定IP所开放的端口
nmap -sS -p 1-65535 -v 10.7.10.7
##扫描www.baidu.com C段存活主机
nmap –sP www.baidu.com/24
##指定端口扫描
nmap –p 80,1433,22,1521 www.baidu.com

##探测主机操作系统
nmap –O 10.7.10.7
##全面系统探测
nmap –v –A 10.7.10.7
##穿透防火墙进行扫描
nmap –Pn –A 10.7.10.7

4.旁站C段

旁站:同服务器其他站点

主站防护比较强,通常很难挖掘到漏洞的。

C段:统一网段其他服务器。

当网站不存在旁站时。就需要进行C段探测,拿到分站管理员权限;比如密码然后去主站撞库。

通过拿下C段服务器进行ARP欺骗达到劫持域名的效果。

产生大量的ARP的包可以造成网络阻塞或者网络中断等危险。

怎么预防?让C段服务器少点

l旁站查询:​​https://dns.aizhan.com​

工具:WebRobot

5.整站分析

服务器的操作系统
网站容器
脚本类型
数据库类型


查看操作系统类型
通过ping来探测,Windows的TTL值都是一般是128,Linux则是64。所以大于100的一般是Windows,而几十的一般是Linux。
Nmap的-O参数
nmap –O 10.7.10.7

网站容器(Apache/Nginx/Tomcat/IIS)
抓包,看响应包中 server信息

云悉WEB资产梳理: www.yunsee.cn
工具whatweb

分析脚本类型(php/jsp/asp/aspx)
url后加 /index.php 或index.asp 或index.jsp
通过爬虫工具爬取网站目录判断网站脚本类型
数据库类型(Mysql/Oracle/Accees/SQL server)
SQL Server默认端口号1433
Mysql默认端口3306
Oracle默认端口1521

云悉WEB资产梳理: www.yunsee.cn


渗透测试铺垫



什么是敏捷软件开发(基于迭代) 理解12条原则



瀑布模型和敏捷的比较



敏捷测试和瀑布测试的比较



敏捷开发方法:scrum
3个角色:产品负责人、ScrumMaster、开发团队
3个工件:产品需求列表、sprint需求列表、产品增量
5个事件:sprint计划会议、每日站会、评审会议、回顾会议
5个价值:承诺、专注、开放、尊重、勇气



用户故事:三个要素:角色、活动、价值
六个特性:独立的、可讨论的、有价值的、可估算的、小的、可测试的



敏捷的测试方法:测试驱动开发、验收驱动开发、行为驱动开发



如何构建用户故事地图,优先级:MoSCoW法则,基于MVP的迭代交付



看板、看板的作用



持续集成、持续交付、持续部署
DevOps:文化观念的改变+自动化工具=不断适应快速变化的市场



测试左移和右移
左移:评审、自测、技术对齐、多角色的协作
右移:灰度、监控、问题归因