欺骗攻击

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

例2:http://www.XX.com/index.asp?id=01 and (Select Count(username) from Admin)>=0


判断表中是否存在字段名为username。常用 作判断的字段名包括ID、password、pwd、 user_name、uname、address、email、date、 time、Tel等等。 在表名和列名猜解成功后,再使用SQL语句,得 出字段的值。例3为一种最常用的方法:Ascii逐 字解码法
7.2 SQL注入攻击

SQL注 入的原 理
第一种操作

用户的输入为username= 'abc' or '1'='1 , pwd=123' or '1'='1

SQL语句变成

sql=select * from user where name='abc' or '1'='1' and pwd='123' or '1'='1'
DNS欺骗网站重定向

DNS协议工作原理



当某一个应用进程需要将主机名解析为IP地址时, 该应用进程就成为域名系统DNS的一个客户,并将 待解析的域名放在DNS请求报文中,以UDP数据报 方式发给本地域名服务器(使用UDP是为了减少开 销)。 本地的域名服务器在查找域名后,将对应的IP地址 放在回答报文中返回。应用进程获得目的主机的D 地址后即可进行通信。 若本地域名服务器不能回答该请求,则此域名服务 器就暂时成为DNS中的另一个客户,并向更高一级 的域名服务器发出查询请求。
DNS欺骗原理

对于发出请求的DNS客户端来说,如果对于它发出的 域名解析请求有多个回复包到来的话,该客户端简单 地信任首先到达的数据包,而丢弃后边到达的数据包。

如果攻击者构造的非法包能够在合法包之前到达的话,就可 以达到欺骗的目的,而通常这是很容易实现的

此外,DNS在设计的时候并没有在安全性方面做过多 的设置,仅根据报文中使用的一个序列号来进行有效 性验证,而没有提供更为严谨的手段,即如果回应包 与请求包的序列号相对应,则认为是正确的。


由于or是一个逻辑运算符,在判断多个条件的 时候,只要有一个成立,则等式结果为真。 这样即使我们任意输入了abc与123,由于后边 的一个恒等式的存在而绕过了密码验证,登录 了系统
第二种操作

输入username=admin' --,pwd=11

sql=select * from user where name='admin' --' and pasword='11'
如果Tuser表中存在username和pwd字段的,添加 一个新用户

username= update Tuser set pwd='123456' where name='NewUser'

更改表Tuser中name为NewUser对应的pwd值
SQL注入的实现过程

第一步:寻找SQL注入点

ARP协议工作过程
ARP欺骗原理

有三台主机A、B和C,IP地址与MAC地址 如下所示。现在A请求与B通信,C为攻击 者,试图窃听A与B的通信
ARP欺骗原理
ARP欺骗原理
网页劫持

客户端网页劫持

正常主机H,与H同一网段的攻击机A,为H 提供数据包转发的网关G,以及网站服务器 W。A试图截获W返回给H的应答页面,并进 行内容篡改、加入木马代码等
添加一个sql用户NewUser

username= admin';exec master.dbo.sp_password null,123,NewUser;-
给NewUser设置密码为123

username=admin';exec master.dbo.sp_addsrvrolemember NewUser, sysadmin; -
SQL注入的实现过程

例3:已知表Admin中存在username字段。首先,
我们取第一条记录,测试长度:
http://www.XX.com/index.asp?id=01 and (select top 1 len(username) from Admin)>0
客户端网页劫持
客户端网页劫持
服务器端网页劫持

服务器网页劫持

网站服务器W,与W同一网段的攻击机A, 为W提供数据包转发的网管G,请求网页服 务的正常主机H。A试图截获W返回给H的应 答页面。假设G与H直接通信。
服务器端网页劫持
服务器端网页劫持
攻击的检测与预防

设置静态ARP表


对于服务器端的网页劫持攻击,由于ARP欺骗只针对服务器, 更改其ARP表中对于网关的表项对,而网关的IP和MAC地址都 是相对稳定的。 可以在服务器上绑定网关的 MAC,用arp –s的命令完成。但 对于客户端的网页劫持攻击,由于主机动态变化,通常难以 在网关上绑定所有的主机地址对。 在发生ARP欺骗的情况下,被欺骗主机的ARP表会出现两个IP 地址对应同一个MAC地址的情况。可以通过ARP -a [inet_addr][-N if_addr]来查看ARP缓存发现是否异常。 也可以借助第三方的软件,如ARPWatch,它是一种监视IP和 MAC地址映射关系变化的工具;如果检测到这种信息发生了 变化,就会发出警报,并以日志的方式记录下来。
SQL注入的实现过程

第二步:获取信息

获取信息是SQL注入中一个关键的部分,需要判断 出存在注入点的数据库类型、各字段名、用户帐号 与密码、权限等等

例1:http://www.XX.com/index.asp?id=01 and (Select Count(*) from Admin)>=0

7.2 SQL注入攻击
SQL注入是存在于有数据库连接的应用程序中 的一种漏洞,攻击者通过在应用程序中预先 定义好的查询语句结尾加上额外的SQL语句元 素,欺骗数据库服务器执行非授权的查询。 这类应用程序一般是基于Web的应用程序,它 允许用户输入查询条件。并将查询条件嵌入 SQL请求语句中,发送到与该应用程序相关联 的数据库服务器中去执行。通过构造一些畸 形的输入。攻击者能够操作这种请求语句去 获取预先未知的结果。
判断是否存在表Admin。如果返回结果与 http://www.XX.com/index.asp?id=01的请求结果相同,说 明表Admin存在,反之,即不存在。如此循环,直至猜到 表名为止。常被采用的表名包括admin、login、subject、 importance、link等等。
SQL注入的实现过程


网站使用的是Access数据库,通过JET引擎连接数 据库 程序没有判断客户端提交的数据是否符合程序要求 该SQL语句所查询的表中有一名为ID的字段
示例

如果第一条返回的结果为正常显示,而第二条返回的 结果提示BOF或EOF(程序没做任何判断时)、或提示 找不到记录(判断了rs.eof时)、或显示内容为空(程 序加了on error resume next),表明存在SQL注入漏 洞。
网络钓鱼防御



留意网址。多数合法网站的网址相对较 短,通常以.com或者.gov结尾。仿冒网 站的地址通常较长,只是在其中包括合 法的企业名字或者根本不包含 给网络浏览器程序安装补丁,使其补丁 保持在最新状态,这样可以有效的防止 攻击者利用浏览器程序的漏洞进行欺骗 将可疑软件转发给网络安全机构
DNS欺骗过程
DNS欺骗攻击的检测



如果受到欺骗攻击,那么客户端至少收到两个应答包, 一个合法应答包,一个伪造的非法包 通过在网络中设置嗅探器,捕获所有DNS请求和应答 数据包。如果在一定时间间隔内,一个DNS请求得到 了两个或以上的应答包的话,则可能出现了DNS欺骗 攻击。 DNS服务器不会给出多个结果不同的应答包,即使目 标站点有多个IP地址(比如为了负载均衡,如各门户 网站),DNS服务器也会在一个DNS应答包中返回, 将不同的IP地址填入多个应答域中。 也可以用一些第三方的工具,如DOC(Domain Obscenity Control)
网络钓鱼
钓鱼网站仿冒中国银行
“尊敬的网银用 户:您申请的中 行E令行卡即将过 期,请尽快登入 hxxp://www.b ociec.tk进行升级。 给您带来的不便, 敬请谅解。”
http登录与https登录
网络钓鱼防御


对要求重新输入账号信息,否则将停掉 信用卡账号的邮件不予理睬。更重要的 是,不要回复或者点击邮件的链接。可 以拨打信用卡上的客服电话确认信息的 真实性,而不是使用鼠标 不要单击任何不信任的超链接。若想访 问某个公司的网站,使用浏览器直接访 问,而不要点击邮件中的链接


连接符--表示其后的语句为注释语句,因此后 面的密码验证不会被执行,对access数据库无 效。 本例可以用来探测是否存在用户名为admin( 多数情况下默认管理员用户名为admin)。如 果存在,则结果为真。
第三种操作

利用数据库的默认用户DBO,可进行如下操作 username= admin';exec master.dbo.sp_addlogin NewUser;-
ARP协议工作过程

ARP协议工作过程


网段中的所有节点都会接收此广播帧并处理ARP请 求。如果主机B在ARP请求分组中见到自己的IP地址, 就向主机A发送ARP响应分组,并并写入自己的硬件 地址,并会使用ARP请求方的IPv4地址和MAC地址 更新它自己的 ARP 缓存。所有其他节点都会悄悄地 丢弃该 ARP 请求。 ARP请求方将在收到ARP应答后使用地址映射更新 其ARP缓存。通过ARP请求和ARP应答的交换,ARP 请求方和ARP应答方都在其ARP缓存中拥有了对方 的地址映射。

寻找SQL注入点的经典查找方法是在有参数 传入的地方添加诸如”and 1=1”、”and 1=2”以及” ’ ”等一些特殊字符,通过浏 览器所返回的错误信息来判断是否存在SQL 注入。 如果返回错误.则表明程序未对输入的数据 进行处理.绝大部分情况下都能进行注入
示例

从这个错误提示我们能得到下面几点:
第七章 Web应用安全攻击
欺骗攻击
欺骗攻击

ARP协议工作过程


根据目的IP地址,ARP检查适当的ARP缓存 以查找与面对IP地址相匹配的条目。如果 ARP找到了一个相应条目,则ARP直接提取 出MAC地址。 如果ARP没有找到任何相应的条目,则ARP 将构造一个ARP请求帧。此帧包含发出ARP 请求的主机的MAC地址和IP地址以及目的主 机IP地址。然后,广播此ARP请求帧机。

监视ARP缓存表


攻击的检测与预防

使用HTTPS协议



由于HTTP协议缺少对会话双方的认证和应用数据的 加密,在网络上很容易被攻击这嗅探窃听,因此使 用HTTPS协议来创建安全的通信信道。 在HTTPS应用数据的传送过程中,由于应用层数据 已经加密,攻击者没有解密密钥,无法解密密文而 获取到明文信息,也避免了攻击。 在实际的应用中,如登录银行网站、在线购物站点 和邮件系统,都使用了HTTPS来加密保护通信链路 上所传输的用户的账号和密码,防止出现由于网页 劫持所造成的信息泄露。
给NewUser赋予管理员权限

以上操作需要具有管理员权限
第四种操作

普通用户权限的操作 username= admin';cerat table Tuser (name varchar(10));-
创建一个新表Tuser

username= admin';insert into Tuser (name,pwd) values ('NewUser','123');-
源自文库
第七章 Web应用安全攻击
SQL注入攻击
7.2 SQL注入攻击

SQL注入不同的定义



微软中国技术中心从两个方面进行了描述,即第一 是脚本注入式的攻击,第二是恶意用户输入用来影 响被执行的SQL脚本 Stephen Kost认为“从一个数据库获得未经授权的 访问和直接检索;当攻击者能够操作数据,往应用 程序中插入一些SQL语句时,SQL注入攻击就发生 了” SQL注入式攻击就是攻击者把SQL命令插入到Web 表单的输入域或页面请求的查询字符串,由于在服 务器端未经严格的有效性验证,而欺骗服务器执行 恶意的SQL命令
相关文档
最新文档