网络攻防技术--第四次作业

一、 Unicode漏洞攻击的基本原理是什么?

  1. Unicode定义
    Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码, 是为了解决传统的字符编码方案的局限而产生的统一编码方案。Unicode为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
  2. 针对IIS的Unicdoe漏洞攻击
    在IIS4.0和5.0版本中,当IIS收到的文件名中包含某些特殊编码(例如%c1%hh)时,首先会将其转化为十六进制符号(如0xc10xhh),并尝试着打开这个文件。在ASCII码中,’/’和’\’两个字符的ASCII值分别为5c和2f。因此,利用Unicode编码%c1%1c和%c0%2f,或%c1%9c和%c1%af可以分别构造出’/’和’\’两个字符。上述http请求就绕开了IIS对’…/…’的检查,成功的实现了在http中执行CMD命令的执行,并且可以更进一步的行使其他更危险的命令。
  3. 针对BIDI的Unicode漏洞攻击
    bidi 算法是用于处理不同语言的文字排序问题,如在从左往右的英文句子中加入从右往左的阿拉伯语单词。大多数编程语言都允许开发者将 bidi 字符放在字符串文字和注释里边,因此bidi漏洞被称为是危及所有软件的“超级漏洞”。
    对于一段代码&#x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

就你叫Martin?

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值