web安全笔记

1.web应用安全隐患可以出现在几个地方:输入,处理,输出;而输出过程的安全威胁一般都会是注入型攻击,如sql注入,html注入,http头注入,os命令注入,邮件头注入等等;
2.而处理过程中的安全威胁则主要有路径遍历,csrf,会话固定认证漏洞和授权漏洞等;
3.xss收集cookie的过程,只要能够在目标网页上执行js,就可以创建一个iframe或img等标签来加载来自恶意网站的信息,并在src属性的url后面拼接上目标网页的cookie,这样就起到了收集的目的;
4.xss用来js攻击则更加广泛,既然可以对目标页面执行js,则完全可以在页面中发起一些操作,比如发邮件,发照片,发信息,加好友等;等于冒用对方身体来做操作或窃取对方信息;也可以用js改变页面的dom结构,实现钓鱼,收集隐私信息等;
5.xss还可以在输入表单时用类似注入的方式使某些标签提前闭合,然后加上新的表单输入内容的方式来窃取信息;
6.xss防范策略为页面渲染过程中把&,<,>,”等特殊字符进行转义,跳转url时也需要对url的内容做转义校验;除此之外设置Cookie的httponly属性,对输入内容做业务校验,关闭Trace方法等辅助方法。
7.csrf是指跨站请求伪造,一般是让用户访问恶意网页时,伪造一个form表单,用来对用户的关键信息进行提交,如购物等;如果在进行这个操作前没有再要求输入密码(比如纯靠cookie验证了用户的信息),那么用户就在不知不觉中买了东西或者更新了自己的密码;防范措施是每个form表单设置csrfToken,增加用户密码确认,检查Refer等,以前者最为通用;
8.会话攻击是指网站用来标识用户身份时通常将用户信息保存在cookie中,这样用来标识唯一用户;如果这个用户信息的id容易被第三方获悉,比如通过xss,或通过Refer(如果保存在URL中),这样对方就可以假冒你与网站进行交互;
9.自由重定向漏洞是指如果登录之后可以重定向到任意网站,则存在对方发一个钓鱼链接给被害用户,用户登录后跳转的页面如果刻意和原登录网站风格一致,则用户很容易被钓鱼,因此重定向时需要白名单。
10.http头注入威胁是指如果使用用户输入的内容作为http响应头时,用户可以在输入中加入换行等特殊符号来构造,使响应头产生换行,从而加入或修改响应头,造成链接跳转,cookie乱设置等等;防范方法在于不要使用用户输入作为响应头;使用专用api或库对生成头的参数做严格校验;
11.邮件头注入攻击是指,邮件相关的功能表单,如果对用户的输入不加判断就直接转发,则很可能因为有用户刻意编写的带空行换行的字符串,而使得所发送内容增加秘密抄送人,增加邮件正文内容等问题;解决方法为邮件头不要使用外界传入的参数,如果一定要有传入参数,则需要确保所传入的参数不包括换行符;
12.目录遍历漏洞是指web服务器在下载或浏览文件的功能时,接受用户输入作为路径,则用户输入涉及机密路径时,会成为攻击对象,甚至输入一个系统命令也照执行;防范在于避免由外界指定文件名,外界一定不能包含原样的目录名,限制文件名只包括字母和数字,禁用目录列表功能;
13.shell攻击是指web应用如果有将用户的输入直接或间接作为系统命令进行执行,则非常危险;要禁用此类功能或对命令做严格校验;
14.文件上传易于被攻击的地方:1)大量向你的服务器上传文件发起ddos攻击,防范为限制文件大小,扩展名等,不提供上传文件服务的应用直接关闭文件上传功能;2)上传脚本文件,防范为限制扩展名,输出的特定目录的文件不进行解析,只展示;3)上传病毒诱惑其它用户下载,防范为进行杀毒等安全扫瞄;4)越权下载,防范为进行权限限定;
15.文件上传下载引起xss的地方:1)文件名xss攻击,上传的文件如果要原样显示在页面上,则也可能故意构造xss攻击的文件名;2)文件内容本身是xss脚本,扩展名改成.png等,网页显示x,点击则会执行xss脚本,防范为检查文件内容与文件扩展名一致性;3)上传html伪造成pdf的方式也可执行xss脚本,具体跟浏览器打开文件或执行脚本的处理有关,因此ie漏洞较多,需要设置正确的Content-Type;
16.通过php的include或使用其它网站的js等方式来引入站外脚本时,都要特别留心,如果源不可靠或由用户输入,随时可能被别人攻击;

17.服务端共享变量的使用要注意,否则可能使用户信息串掉,产生安全隐患。

18.字符集编码方式不当也可能引起安全问题,比如某些正常字符转换成另一些编码时会变成转义字符等等,总之对策是要设置正确的字符编码,发现乱码要立即处理,并且尽量避免自动检测编码方式;


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值