百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文
【网络安全】什么是权限钓鱼(Permission Phishing)?

【网络安全】什么是权限钓鱼(Permission Phishing)?

  • 网站名称:【网络安全】什么是权限钓鱼(Permission Phishing)?
  • 网站分类:技术文章
  • 收录时间:2025-09-23 16:47
  • 网站地址:

进入网站

“【网络安全】什么是权限钓鱼(Permission Phishing)?” 网站介绍

一、权限钓鱼:不止于“骗取账号”,更是“窃取控制权”

当我们谈论网络钓鱼(Phishing)时,多数人会想到“骗取用户名和密码”——但权限钓鱼(Permission Phishing)是一种更隐蔽、危害更大的攻击手段。它不追求直接获取账号凭证,而是诱导受害者主动授予攻击者访问其账户、数据或设备的“合法权限”,让攻击者以“授权用户”的身份长期潜伏,窃取敏感信息或发起进一步攻击。

简单来说:传统钓鱼是“偷钥匙开门”,而权限钓鱼是“骗主人主动给你配一把钥匙”。

(原文此处配有“传统钓鱼vs权限钓鱼对比示意图”,核心内容为:左侧传统钓鱼流程“伪装登录页→骗取账号密码→用密码登录”;右侧权限钓鱼流程“伪装授权请求→受害者点击同意→获取合法权限→长期访问账户”,因原网页图片无法直接调取,建议访问原文链接查看完整图示)

二、权限钓鱼的核心原理:利用“ OAuth/API 授权机制”的漏洞

权限钓鱼之所以能成功,本质是利用了现代互联网普遍使用的 OAuth 2.0 授权框架(或类似的 API 授权机制)。这类机制原本是为了方便用户在不暴露密码的情况下,让第三方应用访问自己在平台(如 Google、Facebook、GitHub)上的部分数据(例如“允许某笔记应用读取你的 Google 文档”),但攻击者却将其变成了“骗取权限的工具”。

其典型攻击流程可分为 4 步,以“伪装成 Google 第三方应用”为例:

  1. 1. 伪造“可信”的授权页面:攻击者搭建一个模仿 Google 官方风格的页面,声称“需要授权以同步数据/修复账号异常”,并弹出与官方几乎一致的“授权请求框”;
  2. 2. 诱导受害者点击“同意”:通过邮件、短信等方式发送钓鱼链接,以“账号安全检测”“数据备份提醒”等理由,让受害者点击链接并进入伪造授权页;
  3. 3. 获取“授权令牌”:一旦受害者点击“允许”,攻击者会收到平台(如 Google)下发的“访问令牌”(Access Token),该令牌相当于“临时钥匙”,可在限定范围内访问受害者账户;
  4. 4. 利用权限窃取数据/控制账户:通过访问令牌,攻击者可读取受害者的邮件、文档、联系人,甚至修改账户设置(如绑定手机号),且这一过程不会触发“异常登录提醒”(因令牌是平台合法下发的)。

(原文此处配有“OAuth 授权机制下的权限钓鱼流程图”,标注了“攻击者-受害者-平台”三者的交互关系,关键节点用红色标注“伪造授权请求”“获取令牌”“访问账户”,建议访问原文链接查看完整图示)

三、权限钓鱼的 3 种常见场景:比你想象中更普遍

权限钓鱼并非只针对个人用户,企业账户、开发者平台也是高频攻击目标,以下是 3 个典型场景:

1. 个人用户场景:“伪装云服务授权,窃取私人数据”

攻击者伪装成“百度云/阿里云同步工具”,通过钓鱼邮件诱导用户点击“授权访问云盘”。一旦用户同意,攻击者可:

  • o 下载云盘中的照片、文档等敏感文件;
  • o 上传恶意文件(如带病毒的压缩包),利用云盘同步功能感染用户其他设备;
  • o 查看云盘内的工作文件,获取职场机密(如合同、项目方案)。

2. 企业场景:“骗取 GitHub 仓库权限,植入恶意代码”

这是开发者群体中高发的攻击类型。攻击者伪装成“代码质量检测工具”或“开源项目协作应用”,诱导企业开发者点击“授权访问 GitHub 仓库”:

  • o 若获取“读取权限”:可下载企业私有代码,导致核心技术泄露;
  • o 若获取“写入权限”:可在代码中植入后门(如在项目依赖中加入恶意脚本),当企业部署代码时,后门被激活,攻击者可控制服务器。

以下是攻击者可能伪造的“GitHub 授权请求”示例(模仿官方授权页的参数配置):


    
    
    
  // 攻击者伪造的 GitHub 授权请求参数(用于骗取权限)
{
  "client_id": "fake_123456",  // 伪造的第三方应用 ID
  "scope": "repo,user:email",   // 请求的权限范围:访问仓库+读取邮箱
  "redirect_uri": "https://attacker-domain.com/callback",  // 攻击者控制的回调地址(用于接收令牌)
  "state": "random_string",     // 伪装的防 CSRF 参数(看似合规,实则无效)
  "allow_signup": "false"       // 模仿官方配置,降低受害者警惕
}

注:真实 GitHub 授权请求中,client_id 需在 GitHub 开发者平台合法注册,而攻击者的 client_id 要么是伪造的,要么是通过非法手段注册的“影子应用”。

3. 设备场景:“骗取手机 APP 权限,监控用户行为”

在移动设备上,权限钓鱼常表现为“伪装成实用工具的 APP”:

  • o 攻击者开发一个名为“手机清理大师”的 APP,在安装时请求“读取短信”“访问通讯录”“获取位置信息”等权限;
  • o 若用户同意,APP 会将获取的短信(含验证码)、通讯录、定位数据偷偷发送到攻击者服务器;
  • o 更隐蔽的攻击是“骗取后台运行权限”,让 APP 在后台持续监控用户操作(如记录键盘输入)。

四、如何识别并防御权限钓鱼?记住这 5 个关键技巧

权限钓鱼的隐蔽性强,但只要掌握以下方法,就能有效规避风险:

1. 检查“授权请求的来源”:永远确认“第三方应用的真实性”

  • o 官方平台(如 Google、GitHub)在弹出授权请求时,会明确显示“第三方应用名称+开发者信息”。若发现应用名称模糊(如“云同步工具”而非“百度云官方同步助手”)、开发者信息未知(如显示“个人开发者”而非官方公司名),立即拒绝;
  • o 以 GitHub 为例,合法授权页的应用信息会显示在“授权请求框顶部”,格式为“[应用名] by [开发者/公司]”,而钓鱼页面常省略“开发者信息”或显示虚假名称。

2. 警惕“过度的权限请求”:问自己“这个应用真的需要这些权限吗?”

攻击者为了获取更多控制权,常会请求超出应用功能范围的权限。例如:

  • o 一个“本地笔记应用”请求“访问你的 Google 邮箱”——明显不合理,直接拒绝;
  • o 一个“代码格式化工具”请求“修改你的 GitHub 仓库代码”——若工具仅需读取代码即可完成功能,“修改权限”就是过度请求。

(原文此处配有“权限请求合理性判断表”,示例如下,建议访问原文链接查看完整表格)

应用类型合理权限请求过度权限请求 笔记应用读取/写入用户文档访问通讯录/短信代码检测工具读取仓库代码修改仓库代码/删除分支云同步工具读取/写入云盘文件访问账户支付信息

3. 验证“授权页面的 URL”:拒绝非官方域名的链接

  • o 官方授权页面的 URL 一定属于平台自身域名(如 Google 授权页域名是 accounts.google.com,GitHub 是 github.com);
  • o 若收到的链接域名是“类似官方但有细微差异”的(如 g00gle.com 用数字 0 代替字母 O,github-login.net 非官方域名),直接关闭页面。

4. 定期审查“已授权的第三方应用”:及时撤销可疑权限

多数平台都提供“查看/管理已授权应用”的功能,以 GitHub 为例:

  1. 1. 登录 GitHub → 进入“Settings → Applications → Authorized OAuth Apps”;
  2. 2. 查看所有已授权的应用,若发现“名称陌生”“记不清何时授权”的应用(如“CodeChecker123”),点击“Revoke”撤销其权限;
  3. 3. 建议每 3 个月审查一次,避免“遗忘的授权应用”成为安全隐患。

以下是 GitHub 授权管理页面的核心操作代码示例(通过 API 批量查询已授权应用,可用于企业批量审计):


    
    
    
  # 使用 GitHub API 查询当前账户已授权的第三方应用
curl -X GET \
  -H "Authorization: Bearer YOUR_GITHUB_ACCESS_TOKEN" \
  "https://api.github.com/user/applications/authorized" \
  | jq '.[] | {name: .name, created_at: .created_at, scopes: .scopes}'
# 输出结果会显示每个应用的名称、授权时间、权限范围,便于筛选可疑应用

5. 对“紧急性请求”保持警惕:攻击者常利用“焦虑感”

权限钓鱼邮件/短信常带有“紧急”“限时”等字眼,如:

  • o “您的 Google 账号将在 24 小时后冻结,点击授权以验证身份”;
  • o “检测到您的 GitHub 仓库存在安全漏洞,授权工具以自动修复”。

这类信息的目的是让你在“来不及思考”的情况下点击链接,此时务必:

  • o 先通过官方渠道验证(如直接登录 Google/GitHub 官网查看是否有相关通知,而非点击钓鱼链接);
  • o 记住:官方平台绝不会通过“非官方链接”要求你“紧急授权”。

五、总结:权限钓鱼的本质是“利用信任与便利”

权限钓鱼之所以难以防范,是因为它不依赖“破解技术”,而是利用了用户对“官方授权机制”的信任,以及对“便捷操作”的需求。攻击者知道:比起“输入密码”,用户更愿意“点击一下同意”——因为后者看起来更“安全”(不用暴露密码),也更省事。

但恰恰是这种“省事”,可能让你在不知不觉中把账户控制权拱手让人。防御权限钓鱼的核心,不是拒绝所有授权请求,而是建立“先验证、再授权”的习惯:永远确认“谁在请求权限”“请求什么权限”“为什么需要这个权限”,这三步能帮你避开 99% 的权限钓鱼陷阱。