网络安全——渗透测试基础
1. 渗透测试[*]概念:模拟黑客的真实攻击方法对网络进行非破坏性质的攻击性测试,从而找出信息系统中存在的缺陷和漏洞。然后以渗透结论为依据,对整个系统中存在的高危漏洞进行安全加固。
[*]学习方面:计算机基础、网络基础、常见WEB漏洞、渗透测试
[*]渗透测试流程:
[*]前期交互(和甲方进行交流,对哪些资产进行探测)
[*]信息收集(拿到“拟攻击”对象更多的网站和机器,才能进行更好的渗透)
[*]漏洞探测
[*]渗透攻击
[*]后渗透攻击(阻止防御者信息收集,销毁行程记录,隐藏存留文件)
[*]信息整理
[*]渗透测试报告(提交给甲方)
2. IP地址
1)IP地址是计算机在互联网上的唯一标识
2)内网(局域网)IP和公网(互联网)IP
[*]内网IP:路由以内的网络,可以连接互联网,但互联网无法直接连接内网
[*]优点:安全、解决IPv4地址耗尽问题
[*]缺点:比如自己在电脑上搭建一个网站,,只有和你使用同一个路由器网络的人才能访问
[*]公网IP
[*]优点:可以直接和互联网资源互通,日常应用如摄像头远程监控、电脑远程开机、NAS等
[*]缺点:安全性低,IPv4地址资源耗尽、
3)公网IP(小区地址)、内网IP(具体门牌号)
4)cmd 上ipconfig显示的是内网IP,百度上搜到的是公网IP
3. 端口
[*]端口是应用程序在计算机中的唯一标识
[*]用户去访问不同的应用就是在访问不同的端口
[*]怎么查看自己开启了哪些端口:netwtat -ano(Windows)、netstat -anltup(Linux)
4. HTTP协议
1)HTTP(Hyper Text Transfer Protocol,超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。
2)HTTP是一个基于请求于响应、无状态的、应用层的协议,常基于TCP/IP协议传输数据,互联网应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。
3)设计HTTP的初衷是为了提供一种发布和接收HTML页面的方法。
4)HTTP传输协议定义了浏览器和客户端传输数据的方式。
5)基于TCP/IP协议,默认端口号为80
6)HTTPS
[*]全称:Hyper Text Transfer Protocol over Secure Socket Layer,就是HTTP的安全版,身披SSL外壳的HTTP。
[*]HTTPS = HTTP + SSL/TLS
[*]HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。
[*]HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。
7)常见的请求方式有八种(不止),常用的为GET、POST
[*]GET请求:搜索某一网页;请求参数放在URL中,URL有长度限制;GET只能传输字符数据。
[*]POST请求:登陆时上传账号密码;请求参数在请求体中,无大小限制;POST请求可以传输字符或字节数据;多了一行Content Type。
8)HTTP由四个部分组成:请求行、请求头部、空行、请求数据
[*]请求行:请求方法、 URL、 协议版本、 CRLF(标识回车和换行)
GET /pages/joint.jsp HTTP/1.1
[*]请求头部:头部字段名、值(在HTTP/1.1协议中,所有的请求头除Host外都是可选的)
[*]Host:请求的服务器的域名和端口号
[*]Content-Length:请求内容的长度
[*]Accept:客户端能接受的内容类型
[*]Referer:先前网页的地址,当前请求网页紧随其后(比如xx在百度上打广告,看用户从百度进来的人有多少,从而判断打广告的效益);防盗链(有些电影网站当你点击一个电影时,会跳转至腾讯视频播放,但是腾讯不允许这么做,所以腾讯会判断用户是不是从腾讯首页而来)
[*]Origin:指明当前请求来自于哪个站点
[*]Cookie:HTTP请求发送时,会把保存在该请求域名下的所有cookie值一起发送给Web服务器(HTTP不能记录用户的登陆状态,比如你想访问清华大学的贴吧,这时候需要先登陆百度的账户,等你进入百度贴吧后再次进入清华大学的贴吧,就不用再输入密码了,依赖于cookie,类似古代皇帝的令牌)。
[*]x-forwarded-for:localhost(127.0.0.1)
[*]accept-language:接受的语言代码
[*]user-agent:服务器通过这个判断请求是来自什么设备
[*]请求数据:username、password
9)服务器的响应信息-response
[*]组成:状态行(协议版本、状态码、状态码描述)、消息报头(头部字段名、值)、空行、响应正文
[*]响应行
[*]协议及版本 响应状态码 状态码描述
HTTP/1.1 200(正常) OK
[*]响应状态码:服务器告诉浏览器本次请求和响应的状态
[*]1xx:服务器接收浏览器信息未完成
[*]2xx:成功
[*]3xx:重定向(跳转),302(访问控制,在携程上买火车票,但是本来没有的,然后返回一个跳转携程的火车票网站的信息),304(访问缓存,浏览APP时的开屏广告)
[*]4xx:客户端错误,404(没有找到对应资源)、405(请求方法不被允许)
[*]5xx:服务器错误,500(服务器内部出现异常,过度拥挤,不断刷新等待)
10)HTTP工作流程
[*]客户端通过TCP三次握手与服务器建立连接
[*]TCP建立连接成功后,向服务器发送HTTP请求
[*]服务器收到HTTP请求后,向客户端发送HTTP响应
[*]客户端通过TCP四次断开,与服务器断开TCP连接
11)在HTTP0.9和HTTP1.0中,TCP连线在每一次请求/回应对之后关闭
在HTTP1.1中,引入了保持连线的机制,一个连接可以重复在多个请求/回应使用,持续连线的方式可以大大减少等待的时间,因为在发出第一个请求后,双方不需要重新运行TCP握手程序。
12)Cookie
[*]网站为了辨别用户身份,存储在用户本地终端上的数据,Cookie是服务端生成的,发送给客户端(浏览器)的。
[*]工作原理:
[*]创建Cookie:用户浏览网站,用户服务器生成唯一标识码(Cookie id),默认一般是会话级别的,存储在浏览器内存中。将cookie放入到HTTP响应报头,将cookie插入到一个set-cookie HTTP响应报头中。
[*]设置存储cookie:浏览器收到响应报文后,根据其里面的set-cookie特殊的指示,生成响应的cookie,保存在客户端。该cookie里面记录着用户当前的信息。
[*]发送cookie:用户再次访问该网站时,浏览器首先检查所有存储的cookied,如果存在某个网站的cookie,则把该cookie附在请求资源的HTTP请求头上发送给服务器。
[*]读取cookie:服务器收到用户的HTTP请求报文之后,从报文头获取到用户的cookie,从里面找到所需要的东西。
[*]Cookie的根本作用就是在客户端存储用户访问网站的一些信息
[*]记住密码,下次自动登陆
[*]购物车功能
[*]记录用户浏览数据,进行商品(广告)推荐
[*]会被附加在每个HTTP请求中,无形中增加了流量
[*]由于在HTTP请求中Cookie是明文传递的,安全性问题(除非用HTTPS)
[*]Cookie大小限制在4KB左右,对于复杂的存储需求来说是不够用的
Cookie总是保存在客户端中,按在客户端中的存储位置分为内存Cookie和硬盘Cookie
[*]内存Cookie:由浏览器维护,保存在内存中,浏览器关闭后就消失了,存在短暂
[*]硬盘Cookie:保存在硬盘,有过期时间,除非手工清理或到期,硬盘Cookie不会被删除,其存在时间是长期的。
13)Session
[*]根本作用是在服务端存储用户和服务器会话的一些信息。(判断用户是否登陆、购物车功能)
[*]Session代表服务器与浏览器的一次会话过程,这个过程是连续的,也可以时断时续。
[*]Session是一种服务器端的机制,Session对象用来存储特定用户会话所需的信息。
[*]Session由服务端生成,保存在服务器的内存、缓存、硬盘或数据库中。
[*]Cookie和Session的区别:
[*]存放位置不同:Cookie保存在客户端,Session保存在服务端
[*]存取方式不同:Cookie中只能保管ASCII字符串,加入需求存取Unicode字符或二进制数据,须进行编码,Session中能存取任何类型的数据
[*]安全性不同:Cookie存储在浏览器中,对客户端是可见的,客户端的一些程序可能会窥探、复制以至修正Cookie上的内容,Session存储在服务器中,对客户端是透明的,不存在敏感信息泄露的风险
14)HTTP与HTTPS比较
[*]优点:防止流量劫持;增加了中间人攻击的成本;加密传输,防窃听篡改,保证数据完整性。
[*]缺点:收费,功能越强大的证书费用越高;费时,打开加载页面变慢;消耗资源,加密会消耗CPU和内存资源
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页:
[1]