一、资源枚举
重要的东西采用约定俗成的名字来命名,比如index.html sql.bak等,别人可以根据线索来找到你的重要文件
二、参数操控
SQL注入:提交含有SQL操作语句的信息给后端,后端如果没有做好过滤就执行该语句,被别人获取到信息,比如url后跟id
xpath注入:和SQL注入有点类似,只是采用xml文件封装操作
XSS跨域脚本攻击:一种是基于反射的XSS攻击,主要依靠站点服务端返回脚本,在客户端触发执行从而发起WEB攻击。比如搜索的时候,提示“搜索的XX不存在”,将XX改为脚本,页面就可执行;另一种是基于DOM 的,比如在表单输入框里输入脚本,提交的时候被执行。总之做好提交数据的过滤以及谨慎返回用户提交的内容!!
三、会话劫持
实际上,http是不安全的,经过TCP/IP协议封装数据的时候,每一个字节都会跟上一个用来追踪数据和提供可靠性的32位的序列号,如果能猜测数据中的序列号,那就可以将会话拦截下来,然后伪装为正常用户去控制后续通话。一般采用ssh,增强网络健壮性,也可以使用UUID的无序编码。
四、CSRF攻击
利用网站对用户的信任来攻击,比如一个网站安全机制松懈,只要用户登录后没有关闭浏览器,就认为是用户的话,这个时候用户打开一个网站或者一个图片,域名是该网站,此时就会去请求,而该网站会认为这个是合法的。
解决方法:
1. 检查报头中的Referer参数确保请求发自正确的网站(但XHR请求可调用setRequestHeader方法来修改Referer报头);
2. 对于任何重要的请求都需要重新验证用户的身份;
3. 创建一个唯一的令牌(Token),将其存在服务端的session中及客户端的cookie中,对任何请求,都检查二者是否一致,因为只有自己网站能取得域名下的cookie。
五、钓鱼攻击
伪造网站然后再进行xss攻击
六、拒绝服务
向网站发起洪水一样的请求(Traffic Floor),导致服务器超负荷并关闭,处理方法常规是采用QoS(Quality of Service)的软硬件解决方案
菜鸟学习,欢迎交流,拒绝攻击。