前面介绍的工具针对 Web 服务安全的外部环境因素,涵盖了操作系统、应用程序和Docker的安全。接下来了解Web程序方面的问题,这种安全分析又分成两种,一是不掌握Web程序代码的黑盒测试,二是掌握了Web程序代码的白盒测试。
在进行黑盒测试时,最好的工具非AppScan莫属,如图所示。AppScan是一个适合安全专家的Web应用程序和Web服务渗透测试解决方案,它可以对Web应用程序和服务执行自动化的动态应用程序安全测试(DAST)和交互式应用程序安全测试(IAST),借此找到 Web 程序中存在的漏洞,并给出详细的漏洞公告和修复建议。
在web应用中,注入漏洞是最常见的安全漏洞之一。因为一些程序并没有过滤用户的输入,攻=向服务器提交一个恶意的SQL查询语句,所以当程序收到攻=的输入时,就会错误地作为原始SQL查询语句的一部分执行,从而改变了程序的原始SQL查询逻辑,同时又执行了由攻=构造的SQL查询语句,从而造成了注入漏洞。
supervisor可以通过SQL注入从数据库获取敏感信息,或利用数据库的特性执行一系列恶意操作,例如添加用户和导出文件。SQL注入攻击是一种常见的网站建设系统,具有很高的风险。这篇文章,我们将和你分享SQL注入漏洞的挖掘方法,其他网络安全漏洞不会被讨论。
零x02漏洞挖掘思想。
在源代码审计中,我们知道这样的SQL注入漏洞很容易被发现,但对于我们这种既不审计代码又想挖掘漏洞的人来说,该怎么办?注重方法。下面,我就和大家分享一些如何挖掘漏洞的方法。
一是要有一个良好的检测环境,以便能够在短时间内准确地找到注射部位。发现注入漏洞前,我们先打开MySQL查询日志功能,因为无论注入是否发生,日志都是最直观的。
接着,使用文本查看软件读取日志文件,打开在网站上执行的SQL(我在这里使用裸尾)
重点在于查找输入点(该过程还需要仔细查看mysql查询日志)。
对某些输入点的信息,程序直接查询数据库,没有过滤,导致注入。
比如,我可以提交:
预设。
**://*alhost/index2.php?ID=1a。
1。
**://*alhost/index2.php?ID=1a。
监测的MYSQL日志中,1a后面是id=1a,说明尚未进行处理。
在单引号之外的变量为整数。
接着,我们提交了一个网址,以注入和获取数据信息。
预设。
**://*alhost/index2.php?ID=1%20union%20选择%20用户%20用户%28%29%20。
1。
**://*alhost/index2.php?ID=1%20union%20选择%20用户%20用户%28%29%20。
需要根据数据库中的查询语句构造实际提交。
也有一种情况,在数据库中保存输入点的信息,或者在服务器会话中的二次读取不处理,也会导致注入。这样二次注入多不受单引号影响,因此相对来说效果更好,危害更大。按照在mysql日志中输入的信息进行调试,此时一定要小心。在这些信息出现之后,我们可以查看它是否可以使用,并根据相关的条件来构建注入语句。