Merge remote-tracking branch 'au/main' into refactoring

This commit is contained in:
ph
2023-07-26 12:10:27 +03:00
11 changed files with 71 additions and 23 deletions
+2 -2
View File
@@ -89,8 +89,8 @@ func Flag(inConfig *InConfig) {
flag.StringVar(&inConfig.Flags.Passfile, "pwdf", "", "password file")
flag.StringVar(&inConfig.Flags.PortFile, "portf", "", "Port File")
flag.StringVar(&inConfig.Flags.PocPath, "pocpath", "", "poc file path")
flag.StringVar(&inConfig.Flags.RedisFile, "rf", "", "redis file to write sshkey file (as: -rf id_rsa.pub) ")
flag.StringVar(&inConfig.Flags.RedisShell, "rs", "", "redis shell to write cron file (as: -rs 192.168.1.1:6666) ")
flag.StringVar(&inConfig.Flags.RedisFile, "rf", "", "redis file to write sshkey file (as: -rf id_rsa.pub)")
flag.StringVar(&inConfig.Flags.RedisShell, "rs", "", "redis shell to write cron file (as: -rs 192.168.1.1:6666)")
flag.BoolVar(&inConfig.Flags.IsWebCan, "nopoc", false, "not to scan web vul")
flag.BoolVar(&inConfig.Flags.IsBrute, "nobr", false, "not to Brute password")
flag.IntVar(&inConfig.Flags.BruteThread, "br", 1, "Brute threads")
+22 -10
View File
@@ -6,6 +6,8 @@ import (
"strings"
"sync"
"time"
"github.com/fatih/color"
)
var Num int64
@@ -32,12 +34,18 @@ func LogSuccess(result string) {
func SaveLog() {
for result := range Results {
if Silent == false || strings.Contains(*result, "[+]") || strings.Contains(*result, "[*]") {
fmt.Println(*result)
if !Silent {
if strings.Contains(*result, "[+]") {
color.Green(*result)
} else if strings.Contains(*result, "[*]") {
color.Cyan(*result)
}
}
if IsSave {
WriteFile(*result, Outputfile)
}
LogWG.Done()
}
}
@@ -49,19 +57,23 @@ func WriteFile(result string, filename string) {
fmt.Printf("Open %s error, %v\n", filename, err)
return
}
_, err = fl.Write(text)
fl.Close()
if err != nil {
defer func() {
_ = fl.Close()
}()
if _, err := fl.Write(text); err != nil {
fmt.Printf("Write %s error, %v\n", filename, err)
}
}
func LogError(errinfo interface{}) {
if WaitTime == 0 {
fmt.Printf("completed %v/%v %v \n", End, Num, errinfo)
} else if (time.Now().Unix()-LogSucTime) > WaitTime && (time.Now().Unix()-LogErrTime) > WaitTime {
fmt.Printf("completed %v/%v %v \n", End, Num, errinfo)
LogErrTime = time.Now().Unix()
if WaitTime == 0 || (time.Now().Unix()-LogSucTime) > WaitTime && (time.Now().Unix()-LogErrTime) > WaitTime {
color.Red(fmt.Sprintf("Completed %v/%v %v \n", End, Num, errinfo))
if WaitTime != 0 {
LogErrTime = time.Now().Unix()
}
}
}