基于会话的验证
利用基于会话的身份验证(或会话cookie身份验证或基于 cookie 的身份验证),用户的状态存储在做事器上。它不须要用户在每个要求中都供应用户名或密码。相反,在登录后,做事器会验证凭据。如果有效,它会天生一个会话,将其存储在会话存储中,然后将会话ID发送回浏览器。
HTTP基本认证(HTTP Basic Auth)

HTTP 协议中内置的基本身份验证是最基本的身份验证形式。有了它,登录凭据会随 每个要求发送到要求标头中。这种认证在路由器、Tomcat、Apache Http、Nginx 等根本认证比较常见。
用户名和密码未加密。相反,用户名和密码利用一个: 符号连接在一起形成一个字符串:username:password。 然后利用 base64 对该字符串进行编码。
常见攻击办法:
弱口令爆破
弱口令(weak password) 没有严格和准确的定义,常日认为随意马虎被别人(他们有可能对你很理解)预测到或被破解工具破解的口令均为弱口令。
暴力破解实质上便是一种高速发包的攻击办法,可供选择的工具有:
1. 网络抓包工具Burp Suite中的Intrude模块
2. Python中的request库
重放攻击
重放攻击(Replay Attacks)又称重播攻击、回放攻击或新鲜性攻击(Freshness Attacks),是指攻击者发送一个目的主机已吸收过的包,来达到欺骗系统的目的,紧张用于身份认证过程,毁坏认证的精确性。
Web的Basic认证爆破:
Tomcat 认证爆破
Tomcat访问后台的掌握台页面时须要进行Basic认证。Basic认证的特色便是在HTTP要求包中会携带 Authorization要求头,那么这个要求头中所包含的值便是用户名和密码经由Base64加密后的值。
防御方法:
1. 从攻击视角来看,弱口令还是最大隐患。其次,社工库可能会存在撞库的风险。那么可以实现密码的生命周期、密码字符串繁芜度等从而避免根本问题。
2. 从认证办法上来看,选择OAuth、SSO办法,可避免大部分攻击。
3. 其余还存在验证码重放攻击,通过代码逻辑、程序时序修复漏洞,即可。
4. 同时还可以,设置登入密码缺点策略问题。五次自动锁账号,向管理员预警等操作。
观点阐明:
OAUTH
OAUTH协议为用户资源的授权供应了一个安全的、开放而又大略单纯的标准。与以往的授权办法不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需利用用户的用户名与密码就可以申请得到该用户资源的授权,因此OAUTH是安全的。oAuth是Open Authorization的简写。
SSO
单点登录(SingleSignOn,SSO),便是通过用户的一次性鉴别登录。当用户在身份认证做事器上登录一次往后,即可得到访问单点登录系统中其他关联系统和运用软件的权限,同时这种实现是不须要管理员对用户的登录状态或其他信息进行修正的,这意味着在多个运用系统中,用户只需一次登录就可以访问所有相互信赖的运用系统。这种办法减少了由登录产生的韶光花费,赞助了用户管理,是比较盛行的。
文件上传漏洞简介:
大部分站点都具有文件上传功能,例如头像变动,文章编辑,附件上传等等。文件上传漏洞便是利用文件上传功能去上传可实行的脚本文件,并通过此脚本文件得到一定的做事器权限。
webshell
最常见利用文件上传漏洞的方法便是上传网站木马(webshell)文件,WEBSHELL又称网页木马文件,根据开拓措辞的不同又分为ASP木马、PHP木马、JSP木马等,该类木马利用了脚本措辞中的系统命令实行、文件读写等函数的功能,一旦上传到做事器被脚本引擎解析,攻击者就可以实现对做事器的掌握。
一句话木马
功能:功能大略,须要合营客户端利用
大小:代码量常日在一行旁边,不超过10行
暗藏性:强,随意马虎通过变形隐蔽特色,绕过过滤
PHP:<?php eval($_POST['x']);?>
漏洞利用条件
1、上传的文件能够被 Web 容器阐明实行。以是文件上传后所在的目录假如Web 容器所覆盖到的路径。
2、用户能够从 Web 上访问这个文件。如果文件上传了,但用户无法通过Web 访问,或者无法使得 Web容器阐明这个脚本,那么也不能称之为漏洞。
3、用户上传的文件若被安全检讨、格式化、图片压缩等功能改变了内容,则也可能导致攻击不堪利。
文件上传漏洞绕过技巧:
JavaScript验证绕过
直接发送要求包
通过Burp抓到正常上传的要求报文后,修正报文的内容,在直接通过Burp发送,便跳过了网页中JS的验证过程。
修正JavaScript
去修正个中关键的检测函数,或者直接通过noscript插件禁用JavaScript。
做事端MIME类型验证绕过,MIME类型是描述内容类型的因特网标准
MIMIE验证常见绕过办法:
利用Burp抓包,将报文中的Content-Type改成许可的类型
Content-Type: image/gif
Content-Type: image/jpg
Content-Type: image/png
做事端文件扩展名验证-黑名单
后缀名改变大小写,例如pHp
以下文件同样会被解析
php | php3| php5| php7| phtml| pht
目标中间件开启了对此文件的解析条件:httpd.conf AddType application/x-httpd-php .php .phtml .php3 .php5
做事端文件扩展名验证—双写后缀
部分网站对付后缀的检测只是将黑名单中的内容更换成空字符。 例如php中可能利用str_replace()进行字符串更换。以是我们可以利用双写后缀的办法进行绕过
做事器文件内容验证-文件头
图片格式每每不是根据文件后缀名去做判断的。
文件头是文件开头的一段二进 制,不同的图片类型,文件头是不同的。文件头又称文件幻数。
常见文件幻数
JPG:FF D8 FF E0 00 10 4A 46 49 46
GIF:47 49 46 38 39 61 (GIF89a)
PNG:89 50 4E 47
文件头检讨只对文件头进行基本的校验,我们可以直接在上传的木马前面加上图片的文件头进行假造绕过,例如在木马前面直接加上GIF89a。
文件上传漏洞常规防御手段:
1) 、对上传的文件在做事器上存储时进行重命名。
2) 、检讨上传文件的类型和大小,如果业务运行的情形下可以进行内容的检讨。
3)、禁止上传危险的文件类型,如jsp jar war等。
4) 、白名单校验。
5)、利用Web运用防火墙(WAF)。