Go pprof 调试信息泄露漏洞

Go pprof 调试信息泄露漏洞

  • [1. 漏洞原理](#1. 漏洞原理)
  • [2. 漏洞危害](#2. 漏洞危害)
  • [3. 漏洞修复](#3. 漏洞修复)

1. 漏洞原理

net/http/pprof 是 Go 标准库用于在运行时导出 runtime profiling 数据(heap、cpu、goroutine、block 等)的工具;通常通过在程序中 import _ "net/http/pprof" 注册一组 HTTP 路径(以 /debug/pprof/ 为前缀)

当这些端点未经访问控制就对外暴露时,会把进程内部状态与运行时信息(函数名、调用栈、内存分配分布、goroutine 列表、命令行参数等)泄露给任意请求者

2. 漏洞危害

1、敏感信息泄露

一些函数名、调用栈、内存分配分布、goroutine 列表、命令行参数等,一般来讲没什么大用,算低危的信息泄漏

2、拒绝服务攻击

GET /debug/pprof/profile?seconds=5 --- 生成 5 秒 CPU profile,pprof 的生成本身是极其消耗 CPU 和内存的操作。攻击者可以轻易地通过反复请求 profile(CPU 剖析)或 heap(内存堆剖析)端点对服务进行拒绝服务攻击

3. 漏洞修复

不要在公网直接暴露 /debug/pprof

相关推荐
平头哥AI16 分钟前
Day 01 | go run 跑通第一个 Go 程序,go build 留下一个能拷走的 exe
开发语言·后端·golang
微财经观圈37 分钟前
酒店配送机器人如何选型:普渡和优地从安全到场景的全面对比
大数据·安全·机器人
是隼人1 小时前
buuctf-pwn [HarekazeCTF2019]baby_rop2(64位ret2libc)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
马立杰1 小时前
IE241210_路由安全技术(三层安全)
网络·安全
2601_962296511 小时前
如何使用Golang包路径_管理本地和远程模块引用
golang·数据转换·变量定义·常用库·编程语言区别
马立杰2 小时前
IE241211_路由安全技术(三层安全)
网络·安全·智能路由器
迪康Defender2 小时前
公用电脑责任追溯难?迪康端点安全一体化管理系统用户模式详解
java·运维·开发语言·网络·其他·安全
迪康Defender2 小时前
迪康端点安全一体化管理系统文档安全:构建企业文档资产全链路防护体系
运维·网络·安全·web安全·终端安全管理
山东科恩光电3 小时前
科恩隐卫-KZS-01系统实现注塑生产的安全与高效兼顾
安全
FfHUCisI6 小时前
GMP 调度器:Go 并发的心脏是如何跳动的
开发语言·golang·php