Update mongodb.go

This commit is contained in:
影舞者 2023-11-13 10:48:18 +08:00 committed by GitHub
parent 88745f55a7
commit 0efbd87920
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2,17 +2,16 @@ package Plugins
import ( import (
"fmt" "fmt"
"github.com/shadow1ng/fscan/common"
"strings" "strings"
"time" "time"
"github.com/shadow1ng/fscan/common"
) )
func MongodbScan(info common.HostInfo, flags common.Flags) error { func MongodbScan(info *common.HostInfo) error {
if flags.IsBrute { if common.IsBrute {
return nil return nil
} }
_, err := MongodbUnauth(info, flags) _, err := MongodbUnauth(info)
if err != nil { if err != nil {
errlog := fmt.Sprintf("[-] Mongodb %v:%v %v", info.Host, info.Ports, err) errlog := fmt.Sprintf("[-] Mongodb %v:%v %v", info.Host, info.Ports, err)
common.LogError(errlog) common.LogError(errlog)
@ -20,7 +19,7 @@ func MongodbScan(info common.HostInfo, flags common.Flags) error {
return err return err
} }
func MongodbUnauth(info common.HostInfo, flags common.Flags) (flag bool, err error) { func MongodbUnauth(info *common.HostInfo) (flag bool, err error) {
flag = false flag = false
// op_msg // op_msg
packet1 := []byte{ packet1 := []byte{
@ -49,7 +48,7 @@ func MongodbUnauth(info common.HostInfo, flags common.Flags) (flag bool, err err
realhost := fmt.Sprintf("%s:%v", info.Host, info.Ports) realhost := fmt.Sprintf("%s:%v", info.Host, info.Ports)
checkUnAuth := func(address string, packet []byte) (string, error) { checkUnAuth := func(address string, packet []byte) (string, error) {
conn, err := common.WrapperTcpWithTimeout("tcp", realhost, common.Socks5{Address: flags.Socks5Proxy}, time.Duration(flags.Timeout)*time.Second) conn, err := common.WrapperTcpWithTimeout("tcp", realhost, time.Duration(common.Timeout)*time.Second)
if err != nil { if err != nil {
return "", err return "", err
} }
@ -58,7 +57,7 @@ func MongodbUnauth(info common.HostInfo, flags common.Flags) (flag bool, err err
conn.Close() conn.Close()
} }
}() }()
err = conn.SetReadDeadline(time.Now().Add(time.Duration(flags.Timeout) * time.Second)) err = conn.SetReadDeadline(time.Now().Add(time.Duration(common.Timeout) * time.Second))
if err != nil { if err != nil {
return "", err return "", err
} }