渗透测试整理笔记

tcp/ip七层模型
物理层(网线,光纤(比特流)),数据链据层(mac地址寻址)(帧),网络层(寻址,路由,IP协议)(数据包),
传输层(段)(建立端到端连接,维护传输可靠性),会话层(建立,维护,拆除应用程序间的会话),表示层(数据加迷,压缩),
应用层(为应用程序进程提供网络服务)。

默认端口是什么
weblogic(7001)、jboss(8080)、tomcat(8080)
ftp:22/21 SSH:22 telnet:23 https:80 https:443
远程桌面服务端口(3389)mysql(3306),
mssql(sqlserver)(1433)、 oracle(1521)

IIS一般与ASP、ASPX结合,当然也可以运行php,另外看见对方的网站是asp或aspx,
那么对方服务器一定是Windows,

我们常用的中间件有:
iis、weblogic、tomcat、jboss、apache(php)、nginx

数据库都有哪些:
Oracle、MySQL/MariaDB、SQL Server,access数据库(适合小网站)

如何知道对方服务器是什么操作系统
1、通过系统扫描器,如nmap、天镜、nessus、极光;
2、通过web页面文件大小写来区分,linux是区分大小写,Windows不区分大小写;
3、通过ping 的值来判断操作系统)TTL值

weblogic默认口令是weblogic     tomcat默认口令tomcat   jboss默认弱口令 admin  admin


1、说说你工作中的渗透测试流程
确认目标:确定目标范围,IP,域名,内外网。能渗透到什么程度,什么时间可以开始,能否上传木马,能否提权。
信息收集:主动扫描,开放搜索,利用搜索引擎获得,后台,未授权的页面,敏感url。
基本的信息(ip,网段,域名,端口),操作系统的版本,各端口的应用。所有探测到的东西版本。人员信息,域名注册人员信息,web应用网站发帖人的id,管理员姓名。能否探测到防护设备。

漏洞探测:漏扫,awvs,IBM,appscan等工具,系统有没有及时打补丁,web应用漏洞,web应用开发漏洞,明文传输,token在cookie中传输等。

漏洞验证:将上一步发现的有可能存在的漏洞全部验证一遍,结合实际,搭建模拟环境验证,自动化扫描工具,手工验证方法。

信息整理,形成报告:清理相关日志,痕迹。整理渗透过程中收集到的一切信息,遇到的各种漏洞,形成测试报告。对所有产生的问题提出合理的解决方案。

2、常用 的htttp请求方法
get:从web服务器获取一个资源。
post:主要作用是执行操作。

3、http包有那个常用包头
4、分别说出Referer 、User-Agent、Host 、Cookie 、X_FORWARDED_FOR、Origin
Authorization、Location等含义
referer:这个消息头用于指示提出当前请求的原始url。
user-agent:这个消息头提供与浏览器或生成请求的其他客户端软件有关的信息。
host:这个消息头用于指定出现在所请求的完整url中的主机名称。
cookie:这个消息头用于向服务器提交它以前发布的cookie。
x-forwarded-for:用来识别通过http代理或负载均衡方式连接到web服务器的客户端最原始的ip地址的http请求头字段。
origin:这个消息头用在跨域ajax求中,用于指示提出请求的域。
authorization:这个消息头用于为一种内置http身份验证向服务器提交证书。
location:这个消息头用于在重定向响应中说明重定向的目标。(状态码以3开头)

5、cookie头里面的secure、Httponly含义
secure:如果设置这个属性,则仅在https请求中提交cookie。
httponly:如果设置这个属性,将无法通过客户端javascript直接访问cookie。

6、分别说出200、201、301、302、400、401、403、404、500状态码的含义
200:表示已成功提交请求,且响应主体中包含请求结果。
201:put请求的响应返回这个状态码,表示请求以成功提交。
301:将浏览器永久重定向到另外一个在location消息头中指定的url,以后客户端应使用新url替换原始url。
302:将浏览器暂时重定向到另外一个location消息头中指定的url。
400:表示客户端提交了一个无效的http请求。
401:服务器在许可请求前要求http进行身份验证。
403:不管是否通过身份验证,都禁止任何人访问被请求的资源。
404:表示所请求的资源不存在。
500:表示服务器在执行请求时遇到错误。
1xx  提供信息
2xx 请求被成功提交
3xx 客户端被重定向到其他资源。
4xx 请求包含某种错误。
5xx 服务器执行请求时遇到错误。

7、常用Web编码有那些,分别说出他们的特证
url编码:只允许使用us-ascii字符集中的可打印字符。
%3d 代表 =
%25 代表%
%20 代表 空格
%0a 代表换行
%00 代表空字节

unicode编码:是一种支持全世界所使用的各种编写系统而设计的字符编码标准。
html编码:表示问题字符以将其安全并入html文档的方案。
base64编码:仅用于一个可打印的ascii字符就可安全转换任何二进制数据。
十六进制编码:许多应用程序在传送二进制数据时直接使用十六进制编码。

静态 动态语言区别
答: 动态语言:服务端和客户端代码不一致(如: asp,php,aspx,jsp)
    静态语言:服务端和客户端代码一致(如html)

常见的脚本语言有那些
答: asp 、php、 aspx、 jsp

常见的数据库有那些
答: access、 mysql(3306)、 mssql(sqlserver)(1433)、 oracle(1521)、 postsql db2

常见的数据库与脚本语言搭配
答:asp+access,asp+mssql,php+mysql,aspx+mssql aspx+oracle,jsp+oracle, jsp+mssql等

系统、脚本语言、中间件如何组合
答:Windows2003/2008/2012+asp、aspx、php+iis6.0/7.0+7.5
Apache+Windows/Linux+PHP Windows/Linux+Tomcat+JSP

渗透测试过程中如何查看对方网站平台
答:1、工具(RASS、天镜、NMAP、X-SCAN) 2、第三方平台(seo.chinaz.com) 3、通过ping观看TTL值


确定渗透测试注意事项 :
通知客户数据库备份,源代码备份。
禁止进行登陆扫描
降低扫描线程
增删改操作一定手工进行
禁止脱裤,跑数据,传shell
执行命令的时候一定要执行whoami等无害命令
不能进行dos及ddos攻击


域名收集:
dns域传送漏洞
备案号查询
ssl查询
app提取
暴力破解
dns历史记录解析
google,百度,fofa,钟馗之眼
c段收集,k8  
jsfinder(js文件里面提取二级域名以及ip)
威胁情报   360,微步在线,天眼查
证书序列号获取企业域名与ip

敏感信息收集:
web源代码泄露,扫描敏感信息常用工具: 7kb    破壳
github信息泄露
google hack
接口信息泄露
社工信息泄露
邮箱地址信息泄露
相关网站查询(wooyun,网盘搜索,钟馗之眼,天眼查,威胁情报,微步在线,google)

SRC漏洞提交平台。

信息整理:
指纹识别
waf识别
cdn识别
旁注与c段

学习网站: seebug,cnvd,freebuf,吾爱破解,
提交漏洞平台:补天,cnvd,教育漏洞平台,wooyun,漏洞盒子。


漏洞扫描:
web扫描:awvs,appscan,xray,netspark,绿盟wvss,安恒明鉴
系统扫描:天镜,nessus,nmap(端口扫描),
app漏洞扫描:梆梆安全,360,爱加密
其他工具:burp(万能神奇)
    
nmap主要功能有哪些:
主机发现,端口扫描,版本侦测,os侦测。

nmap -sn 192.168.10-15    ##    扫描局域网192.168.10-15范围内哪些ip的主机是在线的
nmap -sS -sU -top-ports 300 192.168.1.10   ## 扫描tcp,udp端口,最有可能开放的300个端口。
nmap -sV 192.168.10.10  ##对IP进行版本探测
nmap -o     ##os侦测
nmap -Pn   ##绕过ping扫描参数
扫描器强弱区分点:
漏洞库,爬行能力,误报率


burp的四种攻击类型:
狙击手,攻城槌,音叉,集束炸弹


版权声明:本文为weixin_52980376原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。