-
目录
-
透测试介绍
1.介绍
渗透测试 (penetration test)并没有一个标准的定义,国外一些安全组织达成共识的通用说法是:渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法。这个过程包括对系统的任何弱点、技术缺陷或漏洞的主动分析,这个分析是从一个攻击者可能存在的位置来进行的,并且从这个位置有条件主动利用安全漏洞。 换句话来说,渗透测试是指渗透人员在不同的位置(比如从内网、从外网等位置)利用各种手段对某个特定网络进行测试,以期发现和挖掘系统中存在的漏洞,然后撰写渗透测试报告,并提交给网络所有者。网络所有者根据渗透人员提供的渗透测试报告,可以清晰知晓系统中存在的安全隐患和问题。
2.渗透测试流程
1 确定目标 2 信息收集 3 漏洞探测 4 漏洞利用
5 信息分析 6 获取所需 7 编写报告 8 信息整理
-
渗透术语介绍
1、脚本(asp、php、jsp)
ASP
(Active Server Pages)微软的Windows IIS系统自带的脚本语言,利用它可以执行动态的Web服务应用程序
PHP
(Hypertext Preprocessor)是一种嵌入HTML页面中的脚本语言。
JSP
(JavaServer Pages)是Sun公司推出的JSP技术是以Java语言作为脚本语言的一种动态网页技术。
2、html(css、js、html)
JavaScript
是一种脚本语言,即可以运行在客户端也能运行在服务器端。JavaScript的解释器就是JS引擎,JS引擎是浏览器的一部分。而JavaScript主要是用来扩展文档交互能力的,使静态的HTML具有一定的交互行为(比如表单提交、动画特效、弹窗等)。JavaScript是用来做交互的。
CSS
是用来修饰内容样式的(重在内容样式美化展示上)。CSS是层叠样式表的简称,它用来表现HTML文件样式的,简单说就是负责HTML页面中元素的展现及排版。
HTML
是用来标记内容的(重在内容组织上)。HTML是超文本标记语言的简称,它是一种不严谨的、简单的标识性语言。它用各种标签将页面中的元素组织起来,告诉浏览器该如何显示其中的内容。为什么说HTML是不严谨的呢?因为HTML标签即使不闭合,也并不会影响页面内容的组织。
3、HTTP协议
4、CMS(B/S)
CMS(Central Management Server,中心管理服务器)
C/S结构(Client/Server,客户机/服务器模式)
B/S结构(Browser/Server,浏览器/服务器模式)
5、MD5/加盐(salt)
MD5就是散列法加密的一种,加盐就是在明文后面加上随机生成的数字或者字符串,md5的破解方法也相当于字典破解,加盐以后字典破解法就失效了。
6、肉鸡、抓鸡、DDOS、cc
肉鸡
就是拥有管理权限的远程电脑,也就是受黑客远程控制的电脑
。
分布式拒绝服务攻击
(Distributed Denial of Service,简称DDoS)是指处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击。由于攻击的发出点是分布在不同地方的,这类攻击称为分布式拒绝服务攻击,其中的攻击者可以有多个。
CC
(ChallengeCollapsar,挑战黑洞)攻击是DDoS攻击的一种类型,使用代理服务器向受害服务器发送大量貌似合法的请求。
7、一句话、小马、大马 webshell、提权、后门、跳板、rookit
在这里“
一句话、小马、大马”
我们统称为
webshell
;
webshell
就是以
asp
、
php
、jsp或者cgi等
网页
文件形式存在的一种代码执行环境,主要用于网站管理、服务器管理、权限管理等操作。使用方法简单,只需上传一个代码文件,通过网址访问,便可进行很多日常操作,极大地方便了使用者对网站和服务器的管理。正因如此,也有小部分人将代码修改后当作后门程序使用,以达到控制网站服务器的目的。
提权
就是我们获得目标的管理权的一个过程;
跳板
就是在我们对目标机进行渗透是为了防止追踪到我们的本机IP,我们控制肉鸡对目标机进行渗透,这个肉鸡就是一个跳板。
Rootkit
是一种特殊的
恶意软件
,它的功能是在安装目标上隐藏自身及指定的文件、进程和
网络链接
等信息,比较多见到的是Rootkit一般都和
木马
、后门等其他恶意程序结合使用。Rootkit通过加载特殊的驱动,修改系统
内核
,进而达到隐藏信息的目的。
8、源码打包、脱裤、暴库
源码打包
:打包源代码
脱裤
:拿到数据库
暴库
通过一些技术手段或者程序漏洞得到数据库的地址,并将数据非法下载到本地。
9、嗅探、rookit、社工
嗅探
sniff。
嗅探器
可以获取网络上流经的
数据包
。用
集线器
hub组建的网络是基于共享的原理的,局域网内所有的计算机都接收相同的数据包,而网卡构造了硬件的“过滤器“通过识别MAC地址过滤掉和自己无关的信息,嗅探程序只需关闭这个过滤器,将网卡设置为“混杂模式“就可以进行嗅探。用
交换机
switch组建的网络是基于“交换“原理的,交换机不是把数据包发到所有的端口上,而是发到目的网卡所在的端口,这样嗅探起来会麻烦一些,嗅探程序一般利用“
ARP欺骗
“的方法,通过改变MAC地址等手段,欺骗交换机将数据包发给自己,嗅探分析完毕再转发出去。
10、poc、exp、cve
POC
(Proof of Concept)漏洞证明,漏洞报告中,通过一段描述或一个样例来证明漏洞确实存在 。
EXP
(Exploit)漏洞利用,某个漏洞存在EXP,意思就是该漏洞存在公开的利用方式(比如一个脚本。
CVE
(Common Vulnerabilities & Exposures)公共漏洞和暴露,CVE就好像是一个字典表,为广泛认同的信息安全漏洞或者已经暴露出来的弱点给出一个公共的名称。使用一个共同的名字,可以帮助用户在各自独立的各种漏洞数据库中和漏洞评估工具中共享数据 。如果在一个漏洞报告中指明的一个漏洞,如果有CVE名称,你就可以快速地在任何其它CVE兼容的数据库中找到相应修补的信息,解决安全问题 。
11、src平台、0day
src平台
是漏洞响应平台。
0DAY
含义是刚刚被发现,还没有被公开的漏洞,也没有相应的补丁程序,威胁极大。
12、事件型漏洞,通用型漏洞
通用型漏洞
是第三方软件,应用,系统对应的漏洞。那么每个使用这个软件应用系统的用户都存在这个漏洞。
事件型漏洞
即非通用型漏洞,主要是指互联网上应用的一个具体漏洞。如具体到某个站点。
13、web服务器、web容器、中间件
web服务器
提供web服务的软件或主机,即Web服务器软件或装有Web服务器软件的计算机。例如:IIS、apache、nginx等。
容器
是中间件的一种,作为操作系统和应用程序之间的桥梁,给处于其中的应用程序组件提供一个环境,使应用程序直接跟容器中的环境变量交互,而不必关注其它系统问题。例如:tomcat(servlet容器),Jboss(EJB容器)。
中间件
(Middleware)是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通。中间件处在操作系统和更高一级应用程序之间。
web服务器:IIS、Apache、nginx、tomcat、weblogic、websphere等。
web中间件:apache tomcat、BEA WebLogic、IBM WebSphere等。
web容器:JSP容器、SERVLET容器、ASP容器等。
-
测试环境配置
-
VM虚拟机安装使用
-
系统的安装配置
-
WEB服务器搭建
-
域名解析过程
-
旁站的搭建与利用
-
HTTP协议介绍
超文本传输协议
(HTTP,HyperText Transfer Protocol) 即超文本传输协议,是一种详细规定了浏览器和万维网服务器之间互相通信的规则,它是万维网交换信息的基础,它允许将HTML文档从Web服务器传送到Web浏览器。
1.HTTP URL
统一资源定位符(URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下: http://host[“:”port][abs_path]
例如: http://www.baidu.com:80/admin/index.php
2.HTTP头中安全隐患
在PHP中通过会使用
$_SERVER["HTTP_CLIENT_IP"]
$_SERVER["HTTP_X_FORWARDED_FOR"]
来获取IP。 因此,我们就可以通过修改http头中的X-Forwarded-For:、client-ip: 来进行攻击。 例如: 1、突破服务器访问限制ip 2、http头注入攻击等。
3.http请求方法
常见的几种请求方法 GET、POST、COOKIE、OPTIONS、PUT、MOVE、DELETE、TRACE 服务器端的接受 GET、POST、COOKIE、 REQUEST 抓包分析讲解参数传递过程 错误配置HTTP方法导致的安全事件(IISput写权限拿shell)
4.http响应码
5.HTTPS协议
HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。