一、前言
Go语言是一个神奇的语言。
但是我不会,我连开机都不会,Go是什么
Go to it!
这个页面上是不是很熟悉,你们在渗透扫目标的时候是不是也遇到过。
pprof是一个用于Go开发时对收集的数据分析和可视化工具
它能收集信息,也能被我们利用!
首先要知道一些默认的功能
cpu(CPU Profiling): $HOST/debug/pprof/profile
默认进行 30s 的 CPU Profiling,
得到一个分析用的 profile 文件
获取到CPU Profiling 文件
$HOST/debug/pprof/threadcreate
得到一个分析用的 新OS线程的堆栈跟踪
可以查看创建新OS线程的堆栈跟踪
当然 我要这乱码有何用
你们可以看下我的笔记
对应的文件名称解析
二、获取交互的利用
利用自己的服务器安装Go环境
Let's Go! 的那个Go
再利用以下命令
go tool pprof https://(host)/debug/pprof/profile?seconds=60
它默认是30秒的
我们可以改成60秒来查看更多的信息
执行以上的命令的后
会出现以下字样
(pprof)
相当于shell的交互式
我们可以执行
top10
查看最前面的10个CPU运行信息
(看不清的,放大图片看)
继续
go tool pprof https://(host)/debug/pprof/heap
照上面的笔记
heap 是获取内存的信息
执行以上的命令的后
会出现以下字样
(pprof)
相当于shell的交互式
(上面说过了)
执行
o
(字母小o)
看上面的图
就可以获取配置信息
再利用top命令
可以看到在运行的内存信息
其他的功能点
扫描二维码获取
更多精彩
洛米唯熊
原文始发于微信公众号(洛米唯熊):利用pprof发现Go目标服务器的内存泄漏
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论