常规web渗透测试漏洞描述及修复建议

本文详细介绍了各种Web渗透测试中发现的漏洞,包括Apache样例文件泄漏、弱口令、明文传输登录口令、SQL注入、XSS攻击等,并提供了相应的测试方法、漏洞描述和修复建议。建议网站管理员针对这些安全问题采取措施,如删除不必要的文件、加强口令策略、使用加密传输、过滤用户输入等,以保障网站安全。
摘要由CSDN通过智能技术生成

Apache样例文件泄漏

测试方法

  在链接的根目录中添加examples或者docs目录进行访问判断!

漏洞描述

 apache一些样例文件没有删除,可能存在cookie、session伪造,进行后台登录操作

修复建议

 1、删除样例文件
2、对apache中web.xml进行相关设置

弱口令

测试方法

  先手工尝试一些最基本的弱口令,如admin/admin、admin/123456、admin/888888等,如果不行,使用暴力破解工具进行暴力破解,如使用burpsuite,另外推荐一个小技巧,使用暴力破解的时候,弱口令使用2到3个常见的,然后用户名使用人名拼音top500!

漏洞描述

  由于系统中存在有弱口令,导致攻击者通过弱口令可轻松登录系统中,从而进行下一步的攻击,如上传webshell,获取敏感数据!
另外攻击者利用弱口令登录网站管理后台,可任意增删改等操作,从而造成负面影响!

修复建议

  1、 建议强制用户首次登录时修改默认口令,或是使用用户自定义初始密码的策略;
2、 完善密码策略,信息安全最佳实践的密码策略为8位(包括)以上字符,包含数字、大小写字母、特殊字符中的至少3种。
3、对管理后台进行访问控制,修改后台弱口令,加强口令强度并定期修改。
4、增加验证机制,防爆破机制,限制ip+cookie访问次数。

明文传输登录口令

测试方法

  使用浏览器自带的F12中的network模块就可以进行查看,或者使用抓包工具,如sniffer、burpsuite、fiddler等!

漏洞描述

  用户登录过程中使用明文传输用户登录信息,若用户遭受中间人攻击时,攻击者可直接获取该用户登录账户,从而进行进一步渗透。

修复建议

  1、用户登录信息使用加密传输,如密码在传输前使用安全的算法加密后传输,可采用的算法包括:不可逆hash算法加盐(4位及以上随机数,由服务器端产生);安全对称加密算法,如AES(128、192、256位),且必须保证客户端密钥安全,不可被破解或读出;非对称加密算法,如RSA(不低于1024位)、SM2等。
2、使用https来保证传输的安全。

暴力破解

测试方法

  使用截断抓包工具进行暴力破解,如burpsuite,推荐使用2到3个弱口令,然后使用人名拼音top500加上自己实际中常用字典进行暴力破解!

漏洞描述

  由于没有对登录页面进行相关的防暴力破解机制,如无验证码、有验证码但验证码未在服务器端校验以及无登录错误次数限制等,导致攻击者可通过暴力破解获取用户登录账户及口令,从而获取网站登录访问权限!

修复建议

  1、添加验证码机制,加入图片(验证码动态生成且满足随机性)或者短信验证码(验证码具备超时时限一般为1分钟,且在该时限内错误次数超过3次则进行锁定1分钟后方能重新获取验证码,超时后验证码自动失效)!
2、验证码必须在服务器端进行校验,客户端的一切校验都是不安全的!

SQL注入漏洞

测试方法

  在发现有可控参数的地方使用sqlmap进行SQL注入的检查或者利用,也可以使用其他的SQL注入工具,简单点的可以手工测试,利用单引号、and 1=1 和 and 1=2以及字符型注入进行判断!推荐使用burpsuit的sqlmap插件,这样可以很方便,鼠标右键就可以将数据包直接发送到sqlmap里面进行检测了!

漏洞描述

  Web程序代码中对于用户提交的参数未做过滤就直接放到SQL语句中执行,导致参数中的特殊字符打破了SQL语句原有逻辑,黑客可以利用该漏洞执行任意SQL语句,如查询数据、下载数据、写入webshell、执行系统命令以及绕过登录限制等。

修复建议

  代码层最佳防御sql漏洞方案:采用sql语句预编译和绑定变量,是防御sql注入的最佳方法。
(1)所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。当前几乎所有的数据库系统都提供了参数化SQL语句执行接口,使用此接口可以非常有效的防止SQL注入攻击。 
(2)对进入数据库的特殊字符(’”<>&*;等)进行转义处理,或编码转换。 
(3)确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。 
(4)数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。 
(5)网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。 
(6)严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。 
(7)避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。

跨站脚本攻击(xss)漏洞

测试方法

  在可控参数的地方,使用常见的xss payload("&gt;&lt;img src=11 onerror=alert(123)&gt;&lt;/img&gt;)进行测试,可以使用BruteXSS-master进行快速检查!

漏洞描述

  1、Web程序代码中把用户提交的参数未做过滤或过了不严就直接输出到页面,参数中的特殊字符打破了HTML页面的原有逻辑,黑客可以利用该漏洞执行恶意HTML/JS代码、构造蠕虫传播、篡改页面实施钓鱼攻击、诱以及导用户再次登录,然后获取其登录凭证等。
2、XSS攻击对Web服务器本身虽无直接危害,但是它借助网站进行传播,对网站用户进行攻击,窃取网站用户账号信息等,从而也会对网站产生较严重的危害。XSS攻击可导致以下危害:
3、钓鱼欺骗:最典型的就是利用目标网站的反射型跨站脚本漏洞将目标网站重定向到钓鱼网站,或者通过注入钓鱼JavaScript脚本以监控目标网站的表单输入,甚至攻击者基于DHTML技术发起更高级的钓鱼攻击。
4、网站挂马:跨站时,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值