ITPub博客

首页 > 数据库 > 数据库开发技术 > 常见的Web安全漏洞

常见的Web安全漏洞

原创 数据库开发技术 作者:逍遥子 时间:2022-09-15 08:27:52 0 删除 编辑

世界上没有十全十美的人,程序是人开发的,没有100%是安全的。总会存在一些漏洞,也正因如此,我们需要掌握这些漏洞存在的原理,以便更好的踩坑。

✨常见安全漏洞

  • SQL 注入
  • 跨站脚本
  • 弱口令漏洞
  • 身份验证和会话管理中断
  • 文件上传漏洞
  • 信息泄露
  • CSRF

🎪SQL 注入

SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库误认为是正常的SQL指令而运行,从而使数据库受到攻击,可能导致数据被窃取、更改、删除,以及进一步导致网站被嵌入恶意代码、被植入后门程序等危害。

通常情况下,SQL注入的位置包括:

  • (1)表单提交,主要是POST请求,也包括GET请求;
  • (2)Cookie参数提交;
  • (3)HTTP请求头部的一些可修改的值,比如Referer、User_Agent等;
  • (4)也或者由于代码自身的问题造成的sql语句没有闭合。

利用:

对于sql注入的利用工具有很多,如傻瓜式的明小子 常用的sqlmap等工具,也可以手动注入!

防范:

  • 对进入数据库的特殊字符(’”<>&*;等)进行转义处理,或编码转换。
  • 数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行
  • 在网站发布之前建议使用一些专业的SQL注入检测工具进行检测,及时修补这些SQL注入漏洞

👑跨站脚本

Cross Site Scripting 也简称为 XSS。XSS 漏洞针对嵌入在客户端(即用户浏览器而不是服务器端)的页面中嵌入的脚本。当应用程序获取不受信任的数据并将其发送到 Web 浏览器而未经适当验证时,可能会出现这些缺陷。在这种情况下受害者浏览器,攻击者可以使用 XSS 对用户执行恶意脚本。由于浏览器无法知道脚本是否可信,因此脚本将被执行,攻击者可以劫持会话 cookie,破坏网站或将用户重定向到不需要的恶意网站。

XSS类型:

  • 非持久型跨站:即反射型跨站脚本漏洞,是目前最普遍的跨站类型。跨站代码一般存在于链接中,请求这样的链接时,跨站代码经过服务端反射回来,这类跨站的代码不存储到服务端(比如数据库中)。上面章节所举的例子就是这类情况。
  • 持久型跨站:这是危害最直接的跨站类型,跨站代码存储于服务端(比如数据库中)。常见情况是某用户在论坛发贴,如果论坛没有过滤用户输入的JavaScript代码数据,就会导致其他浏览此贴的用户的浏览器会执行发贴人所嵌入的Javascript代码。
  • DOM跨站(DOM XSS):是一种发生在客户端DOM(Document Object Model文档对象模型)中的跨站漏洞,很大原因是因为客户端脚本处理逻辑导致的安全问题。

防范:

  • 不仅要验证数据的类型,还要验证其格式、长度、范围和内容。
  • 不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。

🎨弱口令漏洞

弱口令(weak password) 没有严格和准确的定义,通常认为容易被别人(他们有可能对你很了解)猜测到或被破解工具破解的口令均为弱口令。设置密码通常遵循以下原则:

  • 不使用空口令或系统缺省的口令,这些口令众所周之,为典型的弱口令。
  • 密码长度不小于8个字符。
  • 密码中不应包含本人、父母、子女和配偶的姓名和出生日期、纪念日期、登录名、E-mail地址等等与本人有关的信息,以及字典中的单词。
  • 密码受到社会工程学攻击,造成泄露,如钓鱼网站、钓鱼邮件。

⚽身份验证和会话管理中断

网站通常为每个有效会话创建会话 cookie 和会话 ID,这些cookie包含敏感数据,如用户名,密码等。当会话通过注销或浏览器突然关闭结束时,这些 cookie 应该无效,即每个会话应该有一个新的 cookie。

易受攻击的对象

  • 在 URL 上公开的会话 ID 可能导致会话固定攻击。
  • 注销和登录前后的会话 ID 相同。
  • 会话超时未正确实现。
  • 应用程序为每个新会话分配相同的会话 ID。
  • 应用程序的经过身份验证的部分使用 SSL 进行保护,密码以散列或加密格式存储。
  • 会话可由低权限用户重用。

⛳文件上传漏洞

文件上传漏洞通常由于网页代码中的文件上传路径变量过滤不严造成的,如果文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,攻击者可通过 Web 访问的目录上传任意文件,包括网站后门文件(webshell),进而远程控制网站服务器。因此,在开发网站及应用程序过程中,需严格限制和校验上传的文件,禁止上传恶意代码的文件。同时限制相关目录的执行权限,防范webshell攻击。

🎯信息漏洞

通过已存在的漏洞如 SQL注入、XSS、弱口令等,使攻击者进入系统,获取系统中有用的数据,造成大量的数据泄露,危害极大!

🔐CSRF

CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账造成的问题包括:个人隐私泄露以及财产安全。

更多文章 关注我们


原文作者:Kali笔记;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2021-01-22

  • 博文量
    760
  • 访问量
    444681