【web安全漏洞】web漏洞要怎么验证

2020-12-23 11:31发布

7条回答
水默
2楼 · 2020-12-23 15:00

要根据网站的具体程序架构,如php+mysql、asp+acc或aspx+sql2005。根据web的常见的漏洞如sql注入、跨站脚本攻击、图片上传、逻辑漏洞测试  、绕过验证测试等一系列的安全代码审计和渗透测试。有条件的话建议找专门做安全的安全公司来给你做。


是你的小甜心呀
3楼 · 2020-12-24 09:10

殊符号验证

这种方法是最简单的一种验证方法,特殊符号包括单引号“ ' ”,双引号“ “ ”,反斜杠“/”,单书名号“<>”等,这些符号都是在编程语言中用来闭合语句的,只有闭合了之前的语句,我们才能开始其他的语句,从而按照我们的意图来执行并返回我们想要的结果,就比如我们今天要验证的SQL注入语句,就是在闭合之前的语句之后,直接开始插入SQL语句,SQL语句是可以查询、修改、删除及备份数据库信息的,能够插入SQL语句并执行说明我们可以操作数据库信息,是非常危险的,一下就是我们输入一些特殊符号站点服务器所给出的反馈,URL:http://www.*******.cn/e/action/ListInfo/index.phppage=09‘&classid=255&totalnum=79

SQI注入漏洞验证

虽然没有特别敏感的信息泄漏,但是特殊字符的作用已经达到,就是告诉你这里SQL语句可以执行,就是你的输入是存下问题的,如果换成正确的输入,就会得到想要的结果。

二、用sqlmap工具验证

sqlmap是目前我认为最好的一款SQL注入利用工具,多用于存在SQL注入漏洞的站点的攻击,只用于SQL注入漏洞验证有点大材小用,但是也未尝不可,最常用的验证方式为URL验证,用到的参数为“-u”后边跟存在漏洞的URL,例如:http://www.******.com/tv/hbws/nzjjj/2020-02-17/OThMTKp7XczGLuqh.html?content=&app_login=no&submit=提+交,用sqlmap不加任何参数验证会返回以下信息:

sqlmap跑出的数据1

包括存在SQL注入的类型为GET型,参数为app_login,注入类型为基于布尔的盲注,还有payload,以及站点数据库类型为IBM DB2,反馈出类似信息说明漏洞的确存在,可以加参数进一步利用。

另外一种利用方法用到的参数为“-r”,它可以验证POST类型的SQL注入,但是要用抓包工具抓取到相应的数据包,将数据包存储到指定文件(一般为.txt文件),然后用sqlmap的“-r”参数跟上文件位置地址,回车就可以验证了,例如:sqlmap -r C:Python27sqlmaptxtpost.txt,反馈如下:

sqlmap跑出的数据2

包括存在SQL注入的类型为POST型,参数为keywords,注入类型为基于错误的注入,还有payload,以及web服务为thinkPHP Apache,站点数据库类型为MySQL,反馈出类似信息说明漏洞的确存在,可以加参数进一步利用。

此外对于一些存在于http消息头中的注入点检测,如:Referer、Cookie等,需要用到参数level,加大检测的深度,目前sqlmap从低到高检测深度分为1-5级,http消息头检测需要--level 3。

以上就是我常用的SQL注入漏洞的验证方法,当然市面上存在着许多SQL注入利用工具,其实SQL注入漏洞,作为一种比较严重的漏洞,其验证的过程也就是其攻击利用的过程,验证出这种漏洞一定要高度重视,及时修补。

没有网络安全,就没有国家安全。


Tag标签: 漏洞 语句 参数 类型 闭合 信息


樱田妮妮NiNi
4楼 · 2020-12-24 09:52

1、跨站脚本

原理:指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。

2、框架注入、链接注入

原理:框架注入是一个所有基于GUI的浏览器攻击,是由于脚本没有对它们正确验证,攻击者有可能注入含有恶意内容的frame或iframe标记。

链接注入是修改站点内容的行为,其方式为将外部站点的URL嵌入其中,或将有易受攻击的站点中的脚本的URL嵌入其中。将URL嵌入易受攻击的站点中,攻击者便能够以它为平台来启动对其他站点的攻击,以及攻击这个易受攻击的站点本身。

3、允许TRACE方法

原理:TRACE方法是HTTP协议定义的一种协议调试方法,该方法使得服务器原样返回任何客户端请求的内容。攻击者利用TRACE请求,结合其它浏览器端漏洞,有可能进行跨站脚本攻击,获取敏感信息,比如cookie中的认证信息,这些敏感信息将被用于其它类型的攻击。

具体方法:利用bp截包,将GET改为TRACE,单次发包,看是否会提醒保存文件,有的话,就存在。

4、Struts2远程命令

原理:作为网站开发的底层模板使用,是应用最广泛的Web应用框架之一。

5、Struts2 URL跳转S2-017

原理:Struts2 URL跳转S2-017,是Struts2远程命令的第二类漏洞,是使用缩写的重定向参数前缀时的开放式重定向漏洞。

6、SQL注入

原理:指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,以此来实现欺骗数据库服务器执行非授权的任意查询,获取数据库信息。

7、其他漏洞

(1)IIS文件解析代码执行:

原理:Microsoft IIS在实现上存在文件枚举漏洞,攻击者可利用此漏洞枚举网络服务器根目录中的文件,攻击者可以利用“~”字符猜解或遍历服务器中的文件名,或对IIS服务器中的.Net Framework进行拒绝服务攻击。

具体方法:链接后面加上.php格式,仍然能解析并且执行,则证明存在。

(2)Nginx文件解析代码执行

原理:当用户请求的url后缀为123.jpg/123.php时,location对请求进行选择的时候会使用URI环境变量进行选择,其中传递到后端Fastcgi的关键变量SCRIPT_FILENAME由Nginx生成的$fastcgi_script_name决定。


安全测试6项基本原则:

认证:对认证的用户的请求返回

访问控制:对未认证的用户的权限控制和数据保护

完整性:用户必须准确的收到服务器发送的信息

机密性:信息必须准确的传递给预期的用户

可靠性:失败的频率是多少?网络从失败中恢复需要多长时间?采取什么措施来应对灾难性的失败?(个人理解这个地方应该更偏向于容错容灾测试的范畴)

不可抵赖:用户应该能证明接收到的数据来自特定的服务器


魏魏姐
6楼 · 2020-12-24 10:51

在进行漏洞修复之前肯定要确定漏洞是什么?(如注入、XEE、跨站、信息泄露、反序列化等OWASP top10常见漏洞或支付、验证码、密码修改等逻辑漏洞)。可以通过专业的漏洞扫描工具或者专业的安全服务团队发现漏洞,不同类型的漏洞修复方案不同。如注入、XEE、跨站、反序列化可以通过对输入进行控制也可以通过IPS/IDS,逻辑漏洞则要对逻辑进行重新设计。

yjh
7楼 · 2020-12-24 11:12

根据网站的具体程序架构,如php+mysql、asp+acc或aspx+sql2005。根据web的常见的漏洞如sql注入、跨站脚本攻击、图片上传、逻辑漏洞测试 、绕过验证测试等一系列的安全代码审计和渗透测试。


相关问题推荐

  • 回答 4

    防御xss攻击需要重点掌握以下原则:在将不可信数据插入到HTML标签之间时,对这些数据进行HTML Entity编码。在将不可信数据插入到HTML属性里时,对这些数据进行HTML属性编码。在将不可信数据插入到SCRIPT里时,对这些数据进行SCRIPT编码。在将不可信数据插入到...

  • 回答 12

    1.1 Web应用的漏洞分类1、信息泄露漏洞信息泄露漏洞是由于Web服务器或应用程序没有正确处理一些特殊请求,泄露Web服务器的一些敏感信息,如用户名、密码、源代码、服务器信息、配置信息等。造成信息泄露主要有以下三种原因:–Web服务器配置存在问题,导致一...

  • 回答 7

    XSS 攻击有两大要素:攻击者提交恶意代码。浏览器执行恶意代码。针对第一个要素:我们是否能够在用户输入的过程,过滤掉用户输入的恶意代码呢?输入过滤在用户提交时,由前端过滤输入,然后提交到后端。这样做是否可行呢?答案是不可行。一旦攻击者绕过前端过...

  • 回答 10

    什么是XSS:XSS:Cross site script(跨站脚本) (缩写应该是css,为了和CSS(层叠样式表)做区分所以叫XSS)概念:黑客通过HTML注入篡改网页,插入恶意脚本,当用户在浏览网页时,实现控制用户浏览器行为的一种共计方式。常见危害:盗取用户信息、钓鱼、制造蠕虫...

  • 回答 8

    你应该是问的SQL注入吧!Sql注入攻击原理:使用用户输入的参数拼凑sql查询语句,使用户可以控制sql查询语句。预防方法,使用预编译语句,绑定变量,使用安全的存储过程,检查数据类型,使用安全函数。...

  • 回答 4

    可以检测出你网站中存在的漏洞 然后提示你 哪边需要加固一下什么的 主要是为了提高你网站的安全性吧,

  • 回答 5

    1.渗透目标渗透网站(这里指定为www.xxx.com)切记,在渗透之前要签订协议。2.信息收集建议手动检查和扫描器选择同时进行。2.1 网站常规检测(手动)1:浏览www.xxx.com1. 初步确定网站的类型:例如银行,医院,政府等。2. 查看网站功能模,比如是否有论坛,...

  • 回答 4

    如何防御XSS攻击?1. 对输入内容的特定字符进行编码,例如表示 html标记的 < > 等符号。 2. 对重要的 cookie设置 httpOnly, 防止客户端通过[removed]读取 cookie,此 HTTP头由服务端设置。 3. 将不可信的值输出 URL参数之前,进行 URLEncode操作,而对于从 ...

  • 回答 4

    客户端检测绕过(js检测):利用firebug禁用js或使用burp代理工具可轻易突破。服务端MIME检测绕过(Content-Type检测):使用burp代理,修改Content-Type的参数服务端扩展名检测绕过:文件名大小写绕过,例如Php,AsP等类似的文件名后缀名字双写嵌套,例如pph...

  • 回答 2

    解决方案请记住两条原则:过滤输入和转义输出。具体执行的方式有以下几点:第一、在输入方面对所有用户提交内容进行可靠的输入验证,提交内容包括URL、查询关键字、http头、post数据等;第二、在输出方面,在用户输内容中使用;标签,标签内的内容不会解释,...

  • 回答 3

    常见的 XSS 攻击有三种:反射型XSS攻击、DOM-based 型XXS攻击以及存储型XSS攻击。1.反射型XSS攻击反射型 XSS 一般是攻击者通过特定手法(如电子邮件),诱使用户去访问一个包含恶意代码的 URL,当受害者点击这些专门设计的链接的时候,恶意代码会直接在受害者...

没有解决我的问题,去提问