1
0
mirror of https://github.com/sairson/Yasso.git synced 2026-11-04 06:37:35 +08:00

4 Commits

5 changed files with 37 additions and 4 deletions

View File

@@ -1,5 +1,10 @@
<h1>👾 Yasso - 亚索 👾</h1>
建议git下来自己编译,编译命令
```
go build -x -v -ldflags "-s -w"
```
![go](https://img.shields.io/badge/Go-1.16.4-blue)
[English Introduce](README_EN.md)
@@ -25,6 +30,11 @@ Yasso [模块] [参数1] [参数2] [参数...]
![image](https://user-images.githubusercontent.com/74412075/148518267-4f72e048-6aee-4ba6-b67d-a447468f2807.png)
2022年1月26日更新 crack 模块中 --ud --pass参数指定,由原本的字典变为字典和用户名指定模式(--ud "administrator,Oadmin" --pd "123456,11223")
![image](https://user-images.githubusercontent.com/74412075/151147036-3aa34477-327b-44ef-a633-0504d40b855a.png)
目前已有用功能模块 :
<b>all模块: 调用全部模块的完全扫描方式,速度更快,能力更强,ants与并发的完美结合</b>

View File

@@ -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))

View File

@@ -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, "")

View File

@@ -1,3 +1,4 @@
123456
P@ssw0rd
930517
kali

View File

@@ -1,2 +1,5 @@
administrator
Oadmin
kali
root