mirror of
https://github.com/sairson/Yasso.git
synced 2026-11-04 06:37:35 +08:00
Compare commits
4 Commits
v0.0.5-mai
...
v0.06-main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6800b705cf | ||
|
|
c4994fb6e2 | ||
|
|
5e557bd43c | ||
|
|
8e055b4a81 |
10
README.md
10
README.md
@@ -1,5 +1,10 @@
|
||||
<h1>👾 Yasso - 亚索 👾</h1>
|
||||
|
||||
建议git下来自己编译,编译命令
|
||||
```
|
||||
go build -x -v -ldflags "-s -w"
|
||||
```
|
||||
|
||||

|
||||
|
||||
[English Introduce](README_EN.md)
|
||||
@@ -25,6 +30,11 @@ Yasso [模块] [参数1] [参数2] [参数...]
|
||||
|
||||

|
||||
|
||||
2022年1月26日更新 crack 模块中 --ud --pass参数指定,由原本的字典变为字典和用户名指定模式(--ud "administrator,Oadmin" --pd "123456,11223")
|
||||
|
||||

|
||||
|
||||
|
||||
目前已有用功能模块 :
|
||||
|
||||
<b>all模块: 调用全部模块的完全扫描方式,速度更快,能力更强,ants与并发的完美结合</b>
|
||||
|
||||
26
cmd/brute.go
26
cmd/brute.go
@@ -85,6 +85,7 @@ func BurpCall(EncryptMap map[string]interface{}, name string, params ...interfac
|
||||
args[k] = reflect.ValueOf(param)
|
||||
}
|
||||
//Println()(args)
|
||||
//fmt.Println(args)
|
||||
return f.Call(args) // 调用函数并返回结果
|
||||
}
|
||||
|
||||
@@ -163,8 +164,12 @@ func burpTask(host, service string, users []string, pass []string, port int, thr
|
||||
if strings.Contains(p, "{user}") {
|
||||
p = strings.ReplaceAll(p, "{user}", p)
|
||||
}
|
||||
result := BurpCall(BurpModule, service, config.HostIn{Host: host, Port: port, TimeOut: time.Duration(timeout), Domain: Domain}, u, p)
|
||||
burpStatus(result, service, host, Domain, u, p, jsonbool, out)
|
||||
if u == "" || p == "" {
|
||||
continue
|
||||
} else {
|
||||
result := BurpCall(BurpModule, service, config.HostIn{Host: host, Port: port, TimeOut: time.Duration(timeout), Domain: Domain}, u, p)
|
||||
burpStatus(result, service, host, Domain, u, p, jsonbool, out)
|
||||
}
|
||||
}
|
||||
}
|
||||
wg.Done()
|
||||
@@ -209,6 +214,11 @@ func Readiness(file *os.File) []string {
|
||||
return readiness
|
||||
}
|
||||
str := strings.TrimSpace(string(data))
|
||||
// 修复读取时出现空的导致抛出panic
|
||||
if str == "" {
|
||||
continue
|
||||
}
|
||||
|
||||
readiness = append(readiness, str) /*将去除换行符的字符串写入切片*/
|
||||
}
|
||||
return readiness
|
||||
@@ -219,7 +229,15 @@ func ReadTextToDic(service, user, pass string) ([]string, []string) {
|
||||
userdic = config.Userdict[service]
|
||||
passdic = config.Passwords
|
||||
)
|
||||
if user != "" {
|
||||
// 入过不包含.txt的话,按照用户名和密码来算。其中
|
||||
if user != "" && !strings.Contains(user, ".txt") {
|
||||
userdic = strings.Split(user, ",")
|
||||
}
|
||||
if pass != "" && !strings.Contains(pass, ".txt") {
|
||||
passdic = strings.Split(pass, ",")
|
||||
}
|
||||
|
||||
if user != "" && strings.Contains(user, ".txt") {
|
||||
userive, err := os.Open(user)
|
||||
if err != nil {
|
||||
Println(fmt.Sprintf(Clearln+"[ERROR] Open %s is failed,please check your user dic path", UserDic))
|
||||
@@ -227,7 +245,7 @@ func ReadTextToDic(service, user, pass string) ([]string, []string) {
|
||||
}
|
||||
userdic = Readiness(userive)
|
||||
}
|
||||
if pass != "" {
|
||||
if pass != "" && strings.Contains(pass, ".txt") {
|
||||
passive, err := os.Open(pass)
|
||||
if err != nil {
|
||||
Println(fmt.Sprintf(Clearln+"[ERROR] Open %s is failed,please check your pass dic path", PassDic))
|
||||
|
||||
@@ -48,6 +48,7 @@ func BruteSshByUser() {
|
||||
}
|
||||
if BruteFlag == true {
|
||||
users, pass := ReadTextToDic("ssh", UserDic, PassDic)
|
||||
//fmt.Println(users, pass)
|
||||
Println(Clearln + "[*] Brute Module [ssh]")
|
||||
Println(fmt.Sprintf(Clearln+"[*] Have [user:%v] [pass:%v] [request:%v]", len(users), len(pass), len(users)*len(pass)*len(ips)))
|
||||
SwitchBurp("ssh", users, pass, ips, BrutePort, Runtime, TimeDuration, "")
|
||||
|
||||
Reference in New Issue
Block a user