dt_automate/attackevent/hw_zww1_cookie..go

103 lines
3.7 KiB
Go
Raw Normal View History

package attackevent
import (
"dt_automate/conf"
"dt_automate/tool"
"fmt"
"log"
"github.com/playwright-community/playwright-go"
)
func HW_zww1_cookie() string {
// 启动 Playwright
pw, err := playwright.Run()
if err != nil {
log.Fatalf("could not start Playwright: %v", err)
}
defer pw.Stop()
// 启动浏览器Chromium
browser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{
Headless: playwright.Bool(false), // 设置为 false 以显示浏览器界面
Args: []string{
"--ignore-certificate-errors", // 忽略证书错误[^28^][^29^]
},
})
if err != nil {
log.Fatalf("could not launch browser: %v", err)
}
defer browser.Close()
// 创建一个新页面
page, err := browser.NewPage()
if err != nil {
log.Fatalf("could not create page: %v", err)
}
// 设置浏览器窗口大小
err = page.SetViewportSize(1920, 1080) // 宽度为 1200px高度为 800px
if err != nil {
log.Fatalf("无法设置浏览器窗口大小: %v", err)
}
// 导航到指定网址
_, err = page.Goto("https://11.1.68.146/", playwright.PageGotoOptions{WaitUntil: playwright.WaitUntilStateCommit})
if err != nil {
log.Fatalf("could not go to the page: %v", err)
}
page.WaitForTimeout(3000)
//输入
if err := page.Locator(`#user_name`).Fill(tool.KeyStr("BV5kDMeBiV+32koO+yIo0w4MI1ZiTn4QrmD/4EPK1J7kXumFSJyNRiNxwBTQ8TbazscK1KMPFSJn7sUqdfnIy53E1Q/BBwxl6xcF8aLsHkkUiON1ghKkOdjN5QxsH6q85n/yviD9gAcixB0hSHu3jAwAehHn1rqd3oEhOrrBrn/5st2YDrsTOx4aeFE4OMB/goKizVXcIO5oXsTGbN7ip/xK8Lli4easA4bl3M73qAryGZ1f/7B3F8e8gE3nT6qLeYUBlMjJIpO9BD/IsluLjrHkx5uU8GpSjmiRfq6RAAmCCNleOiWWEtBEVk1HP7qbwasgFEFdozpYCd0T8P8yuw==")); err != nil {
log.Fatalf("could not fill input: %v", err)
}
if err := page.Locator(`#password`).Fill(tool.KeyStr("LcVHbSt29BTaMvK7DzBM//TcYvnRd6fjts4rMUxmmRB56UCZ1Sm0bR/87LFttuezWzoZbWgH1Q6JmqHSZmOWvvp7bNVCtWGSrs52YWrnEVK6SEwpohwVhLmgfBTxYWI7zZsph1yMfaDeejjqu5QzLuHcDor2A6i8xhrf7mlUhwIoc5p+4Z//cBocDgUrXcN1d6CTjwJwTYJfGa4jQKEv8glQYD5X3l6AjDv0osh1BQfKFnhxCALRXYrHP8OIbSYRAC4lyTli872AL3kwAH79UBKL5m2BixivgQZazsO2suUtjutvRgtBeqft3HYTNnhB8kxhUwNwx7rdSpJSWhaJLg==")); err != nil {
log.Fatalf("could not fill input: %v", err)
}
//登录
if err := page.Locator("#login_button").Click(); err != nil {
log.Fatalf("could not click button: %v", err)
}
page.WaitForTimeout(1000)
page.Evaluate(`
const now = new Date();
const year = now.getFullYear();
const month = (now.getMonth() + 1).toString().padStart(2, '0');
const day = now.getDate().toString().padStart(2, '0');
const hours = now.getHours().toString().padStart(2, '0');
const minutes = now.getMinutes().toString().padStart(2, '0');
const seconds = now.getSeconds().toString().padStart(2, '0');
const timestamp = year+"-"+month+"-"+day +" "+ hours+":"+minutes+":"+seconds;
const div = document.createElement('div');
div.style.position = 'fixed';
div.style.bottom = '10px';
div.style.right = '10px';
div.style.color = 'white';
div.style.backgroundColor = 'black';
div.style.padding = '5px';
div.style.borderRadius = '5px';
div.textContent = timestamp;
document.body.appendChild(div);
`, nil)
// 获取页面标题
title, err := page.Title()
if err != nil {
log.Fatalf("could not get title: %v", err)
}
log.Printf("Page title is: %s\n", title)
cookies, err := page.Context().Cookies("https://11.1.68.146/wnm/get.j")
if err != nil {
log.Println(err)
}
var cookieStr string
for _, cookie := range cookies {
cookieStr += fmt.Sprintf("%s=%s;", cookie.Name, cookie.Value)
// log.Printf("Cookie %d: %+v", i, cookie)
}
log.Println(cookieStr)
// attackevent.Fw_event(cookieStr)
conf.SET_Config_yaml("cookie", cookieStr) //临时存放数据
// StartBlocker()
return cookieStr
}