secskill
  • Introduction
  • 1.web应用漏洞
    • 1.1 SQL注入漏洞
      • 1.1.1 type注入利用
      • 1.1.2 mothod注入利用
      • 1.1.3 按照效果注入利用
      • 1.1.4 order,limit和from后的注入
      • 1.10.1 sqlmap使用
    • 1.2 目录遍历漏洞
    • 1.3 跨站脚本漏洞
      • 1.3.10 flash xss
      • 1.3.11 Uxss
    • 1.4 未过滤HTML代码漏洞
    • 1.5 数据库运行出错
    • 1.6 Flash安全配置缺陷漏洞
    • 1.7 编辑器漏洞
      • 1.7.1 kindeditor编辑器漏洞
        • 1.7.1.1 kindeditor<=4.1.5文件上传漏洞
      • 1.7.2 fckeditor编辑器漏洞
        • 1.7.2.1 fckeditor<=2.6.4文件上传漏洞
    • 1.8 URL Redirect漏洞
    • 1.9 任意文件上传漏洞
    • 1.10 敏感信息泄露漏洞
    • 1.11 未加密登陆请求漏洞
    • 1.12 后台弱口令漏洞
    • 1.13 后台口令暴力破解漏洞
    • 1.14 跨站请求伪造漏洞
    • 1.15 Unicode 编码转换漏洞
    • 1.16 Possible .Net Error Message
    • 1.17 发生内部错误漏洞
    • 1.18 旁站攻击漏洞
    • 1.19 后台登录页面绕过
    • 1.20 Possible PHP Error Message
    • 1.21 UrlPath Pollution
    • 1.22 File Operation-Web.xml漏洞
    • 1.23 短文件名泄漏漏洞
    • 1.24 OS注入漏洞
    • 1.25 SOAP注入漏洞
    • 1.26 SMTP注入漏洞
    • 1.27 LDAP注入漏洞
    • 1.28 命令执行漏洞
    • 1.29 HTTP消息头注入漏洞
    • 1.30 验证机制缺陷漏洞
    • 1.31 越权漏洞
    • 1.31 服务端请求伪造漏洞
    • 1.32 xxe漏洞
    • 1.33 逻辑漏洞
    • 1.34 支付漏洞
      • 1.34.1 支付漏洞
    • 1.35 cors漏洞
      • 1.35.1 cors
    • 1.36 jsonp漏洞
    • 1.37 点击劫持漏洞
    • 1.38 框架注入漏洞
    • 1.39 文件包含漏洞
    • 1.40 CRLF注入漏洞
    • 1.41 SSTI漏洞
  • 2.中间件漏洞
    • 2.1 IIS
      • 2.1.1 CVE-2017-7269
    • 2.2 Apache
    • 2.3 Axis2
    • 2.4 lighttpd
    • 2.5 Tomcat
      • 2.5.1 CVE-2017-12615
    • 2.6 Nginx
    • 2.7 WebLogic
    • 2.8 JBoss
    • 2.9 Websphere
    • 2.10 Struct2
    • 2.11 XAMMP
    • 2.12 LAMPP
    • 2.13 FastCGI
    • 2.14 PHPCGI
    • 2.15 JOnAS
    • 2.16 Joomla
      • 2.16.1 CVE-2017-8917
    • 2.17 Padding oracle
    • 2.18 Jenkins
      • 2.18.1 CVE-2019-1003000
      • 2.18.2 CVE-2017-1000353
    • 2.18 Drupal
      • 2.18.1 CVE-2019-6340l
    • 2.19 PHPGD
      • 2.19.1 CVE-2019-6977
    • 2.20 PhpMyAdmin
      • 2.20.1 CVE-2016-5734
      • 2.20.2 反序列化漏洞
      • 2.20.3 CVE-2018-12613
    • 2.21 PHP
      • 2.21.1 extract
      • 2.21.2 strcmp
      • 2.21.3 urldecode
      • 2.21.4 md5
      • 2.21.5 strpos
      • 2.21.6 is_numeric
      • 2.21.7 sha
      • 2.21.7 ereg
      • 2.21.8 creat
  • 3.系统漏洞
    • 3.1 DNS域传送漏洞
    • 3.2 SSH Services Port 22 Enabled
    • 3.3 NetBIOS Services Port 139 Enabled
    • 3.4 OpenSSL 漏洞
    • 3.5 docker remote API漏洞
    • 3.6 Samba远程代码执行漏洞
    • 3.7 Windows系统漏洞
      • 3.7.1 ms17-010
      • 3.7.2 ms08-067
      • 3.7.3 ms16-075
      • 3.7.4 CVE-2017-0213
      • 3.7.5 ms16-135
      • 3.7.6 CVE-2018-8120
      • 3.7.7 CVE-2018-0824
    • 3.8 linux系统漏洞
      • 3.8.1 ubuntu
        • 3.8.1.1 CVE-2015-1328
        • 3.8.1.2 CVE-2017-16995
    • 3.9 openssh漏洞
      • 3.9.1 cve-2016-6515
  • 4.网络漏洞
    • 4.1 ARP欺骗嗅探漏洞
    • 4.2 反弹shell的N种姿势
    • 4.3 DNS欺骗
  • 5.cms漏洞
    • 5.1 08cms
    • 5.2 74cms
    • 5.3 Appcms
    • 5.4 Aspcms
    • 5.5 Bluecms
    • 5.6 Cscms
    • 5.7 Dedecms
    • 5.8 Discuz
      • 5.8.1 Discuz任意文件删除
    • 5.9 Dkcms
    • 5.10 Ecshop
    • 5.11 Finecms
    • 5.12 Fscms
    • 5.13 Jeecms
    • 5.14 Ibcms
    • 5.15 Maccms
    • 5.16 Php168
    • 5.17 Phpcms
    • 5.18 Phpmywind
    • 5.19 Phpwind
    • 5.20 Phpweb
    • 5.21 Qibocms
    • 5.22 Seacms
    • 5.23 Shopex
    • 5.24 Thinkphp
      • 5.24.1 SQL
      • 5.24.2 RCE
      • 5.24.3 RCE2
    • 5.25 Typecho
    • 5.26 Wordpress
      • 5.26.1 Wordpress Plugin_sql
    • 5.27 Xycms
    • 5.28 Zabbix
    • 5.29 Zblog
    • 5.30 Zzcms
Powered by GitBook
On this page
  • 简介
  • 原理
  • 平行越权
  • 原理
  • 漏洞复现
  • 垂直越权
  • 原理
  • 漏洞复现
  • 交叉越权
  • 原理
  • 漏洞复现
  • 防御

Was this helpful?

  1. 1.web应用漏洞

1.31 越权漏洞

简介

越权漏洞是Web应用程序中一种常见的安全漏洞。它的威胁在于一个账户即可控制全站用户数据,这些数据仅限于存在漏洞功能对应的数据。

原理

越权漏洞的成因主要是因为开发人员在对数据进行增、删、改、查询时对客户端请求的数据过分相信,在验证用户权限时存在缺陷,遗漏或未正确进行权限判定,从而导致了越权漏洞的出现

假设存在一个购物类网站,其中有修改收货地址的操作,正确逻辑为 A 用户仅能修改 A 用户自己的地址, B 用户仅能修改 B 用户自己的地址

此时修改地址的sql语句如

update order set address='xxx' where id = 1 这里的 id 为 order 表中的主键,id 为 1 对应 A 用户地址, id 为 2 对应 B 用户地址。 更新 url 为

/?action=update&address=xxx&id=1 此时用户将 url 中的 1 修改为 2,而程序却未对做出更新请求的用户做权限判定,那么 B 用户的收货地址将会被修改

平行越权

原理

基于数据的控制访问,平行越权就是同等角色下的用户,不但能够访问自己私有的数据,还能访问其他人私有的数据。

漏洞复现

随便注册两个账号 13888888888 和 12888888888,登入并填写收货地址

在前台登录了 13888888888 账号,此时查看自己账号下的收货地址仅有一条记录

点击记录查看详细信息时发现请求了一个地址为

返回了详细地址信息

{
    "id": "1",
    "realname": "11",
    "mobile": "13888888888",
    "province": "河北省",
    "area": "复兴区",
    "city": "邯郸市",
    "address": "1111"
}

而将id修改为2时,返回了 12888888888 用户的收货地址信息

{
    "id": "2",
    "realname": "tttttt",
    "mobile": "12888888888",
    "province": "北京市",
    "city": "北京辖区",
    "area": "东城区",
    "address": "1"
}

造成了平行越权

实验环境为百家CMS

垂直越权

原理

基于角色的控制访问,垂直越权即低权限的角色通过一些途径,获得高权限

最常见的一种垂直越权便是后台信息的越权查看

使用[IP:Port]访问靶机,url加上/admin访问后台,使用admin/admin弱口令登录后台

网站后台一般会做成在 index.php 中包含其余文件来显示内容。若被包含的文件未做权限验证,可导致任意用户都可通过直接访问该页面查看信息

漏洞复现

登录后台成功后,可看到服务器信息

此时服务器信息是包含了后台的 info.php 文件来显示的,在未登录的情况下直接访问该文件,造成越权,若该页面含有数据操作功能切未做权限验证将造成更大危害

交叉越权

原理

垂直越权和水平越权的交集。

如注册用户时,后台可能未验证传入得参数,将其全都代入sql语句中。这时如果用户传入类似 type=admin 的参数,可直接注册成为管理员,完成权限的提升。

漏洞复现

正常注册一个账号密码为 123/123 的账户并登录

返回注册页面,注册一个 user/123 的用户,在提交时,多添加一个参数为 type=admin

登录后发现该用户为管理员

防御

对于涉及用户唯一信息的请求,每次都要验证和检查所有权

敏感信息页面加随机数的参数,防止浏览器缓存内容。

将权限与功能对应,使用最小权限原则,普通用户授予能正常使用基本功能的最小权限

不使用暴露给用户的参数来做权限与身份得区分标识

Previous1.30 验证机制缺陷漏洞Next1.31 服务端请求伪造漏洞

Last updated 6 years ago

Was this helpful?

http://127.0.0.1:8333/index.php?mod=mobile&op=detail&name=shopwap&do=address&id=1