美文网首页
白帽子讲web安全-注入攻击

白帽子讲web安全-注入攻击

作者: 北邮小菜鸡 | 来源:发表于2020-03-08 16:55 被阅读0次

前言

一个安全设计原则:数据与代码分离原则。他就是专门为了解决注入攻击而产生的。

注入攻击的本质,是把用户输入的数据当做代码执行,有两个关键条件:第一个是用户能够控制输入,第二个是原本程序要执行的代码,拼接了用户输入的数据。

SQL注入

拼接过程很重要,正因此才导致了代码的注入。

在SQL注入的过程中,如果网站的web服务器开启了错误回显,则会为攻击者提供极大地便利。

1盲注

回显关闭后,攻击者必须找到一个方法来验证注入的SQL语句是否得到执行。

通过简单的条件语句,1=2,1=1,根据页面返回是否发生变化,来判断SQL语句是否得到执行,判断SQL注入漏洞是否存在。

2Timing Attack

利用BENCHMARK()函数,可以让同一函数执行很多次,使得结果返回时间比平时要长,通过时间长短的比较,可以判断注入语句是否得到执行成功。

----------找到了SQL注入漏洞,仅仅是一个开始,要发起一个完整的攻击,还有很多事情要做。

数据库攻击技巧

1常见的攻击技巧

猜测数据对应版本技巧,确认表名技巧,读写文件技巧,

2命令执行

在MySQL中,除了导出webshell间接地执行命令外,还可以利用用户自定义函数的技巧,即UDF来执行命令。

3攻击存储过程

在my sqlserver  中,存储过程xp_cmdshell可谓臭名昭著,无数黑客利用他在讲到注入sql server时都是使用它执行系统命令。

除了利用存储过程直接攻击之外,存储过程本身也可能存在注入漏洞。

4 编码问题

要解决这个问题就是要统一数据库,操作系统,web应用所使用的字符集,以避免各层对字符的理解存在差异,统一设置为UTF-8是一个很好的方法。

5SQL Column Truncation

正确的防御SQL注入

要做的就是两件事:

找到所有的SQL注入漏洞

修补这些漏洞。

像       使用预编译语句,绑定变量。

           使用存储过程,使用安全的存储过程来对抗注入。

           检查数据类型

           使用安全函数

 数据库自身角度。用该使用最小权限原则,避免web应用直接使用root,dbowner等高级权限账户连接数据库。

其他注入攻击

xml注入,代码注入,CRLF注入("\r","\n");

相关文章

  • 白帽子讲web安全-注入攻击

    前言 一个安全设计原则:数据与代码分离原则。他就是专门为了解决注入攻击而产生的。 注入攻击的本质,是把用户输入的数...

  • 读书笔记——《白帽子讲 Web 安全》

    白帽子讲 Web 安全 阅读目的 通过阅读本书,以了解常见的 Web 攻击方式和防御方式,以在日后开发中避免出现显...

  • SQL注入读书笔记

    以下内容来自《白帽子讲web安全》一书 Step 查找注入点 输入单引号',如果Web服务器开启了错误回显,那定是...

  • 白帽子讲web安全

    浏览器安全 同源策略 同源策略是web安全的核心基础。影响源的因素有:host、子域名、端口、协议。 a.com通...

  • 白帽子讲Web安全

    《白帽子讲Web安全(纪念版)》,是我看过的第一本关于Web安全的书。我入门了,我放弃了;我看完了,我什么都没记住...

  • 白帽子讲Web安全

    公司最近来了个SR(security architecture),推荐我们看下入门级的web安全。再加上最近刚培训...

  • web前端安全的攻与防

    一、什么是web安全? web安全,也叫web应用安全,《白帽子讲Web安全》一书中第一章最后有这么一句话讲的很好...

  • 白帽子讲Web安全(一)

    安全问题的本质是信任问题 互联网安全的核心是数据安全,数据从高等级的信任域流向低等级的信任域,是不需要安全检查的;...

  • 白帽子讲Web安全(二)

    跨站脚本攻击(XSS) 黑客通过“HTML注入”篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,控制用户浏览器...

  • 《白帽子讲web安全》笔记

    第2章 浏览器安全 1.同源策略(same origin policy)限制来自不同源的“document”或脚本...

网友评论

      本文标题:白帽子讲web安全-注入攻击

      本文链接:https://www.haomeiwen.com/subject/uozddhtx.html