常见的Web攻击

SQL 注入

  • sql注入攻击:主要是就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如select * from test where username="wuxu" or 1=1。
  • 这样会使用户跳过密码直接登录,具体解决方案:
    • 1、特殊字符过滤,不要用拼接字符串的方法来凑sql语句。
    • 2、对sql语句进行预编译,比如java的preparedstatement。
    • 3、关闭错误信息,攻击者可能会通过不断的尝试来得到数据库的一些信息,所以关闭错误信息变得重要起来。
    • 4、客户端对数据进行加密,使原来传进来的参数因为加密而被过滤掉。
    • 5、控制数据库的权限,比如只能select,不能insert,防止攻击者通过select * from test ;drop tables这种操作

XSS 攻击

  • XSS又称CSS,全称Cross SiteScript,跨站脚本攻击,是Web程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式,所以容易被忽略其危害性。
  • XSS防御
    • 永远不相信用户的输入。需要对用户的输入进行处理,只允许输入合法的值,其它值一概过滤掉。

爬虫攻击-----常见的非攻击性的安全性问题

网络爬虫严格意义上不是一种web攻击手段,但却对服务器造成一定的伤害,不容忽视这种攻击。

攻击方式:常见于搜索引擎爬虫或者一些前端测试工具,如:PhantomJs,puppeteer等,这些工具可以模拟用户操作,进行网络爬虫请求。

解决方案:鉴别请求ip,鉴别请求次数,鉴别请求点击连接,鉴别请求数据格式,比如cookie,Referer等字段,必要时需要人工时刻监控网站情况,定期要更新前端页面结构。

DoS 攻击(DenialOfService)

  • DoS攻击是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务或资源访问,使目标系统服务系统停止响应甚至崩溃,而在此攻击中并不包括侵入目标服务器或目标网络设备。
  • 这些服务资源包括网络带宽,文件系统空间容量,开放的进程或者允许的连接。这种攻击会导致资源的匮乏,无论计算机的处理速度多快、内存容量多大、网络带宽的速度多快都无法避免这种攻击带来的后果。

CSRF (ross-site request forgery)

image.png

你可能感兴趣的:(常见的Web攻击)