Skip to content

Commit b180682

Browse files
committed
优化,避免目标重复
1 parent ee171e2 commit b180682

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

pkg/naabu/v2/pkg/runner/targets.go

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,27 @@ func (r *Runner) PreProcessTargets() error {
121121
return nil
122122
}
123123

124+
// 避免重复
125+
var noRpt1 = map[string]string{}
126+
127+
func Add2Naabubuffer(target string) {
128+
target = strings.TrimSpace(target)
129+
if _, ok := noRpt1[target]; ok {
130+
return
131+
}
132+
noRpt1[target] = "1"
133+
Naabubuffer.Write([]byte(target))
134+
}
135+
136+
// 避免重复
137+
var noRpt = map[string]string{}
138+
124139
func (r *Runner) AddTarget(target string) error {
125140
target = strings.TrimSpace(target)
141+
if _, ok := noRpt[target]; ok {
142+
return nil
143+
}
144+
noRpt[target] = "1"
126145
if target == "" {
127146
return nil
128147
} else if ipranger.IsCidr(target) {
@@ -141,7 +160,7 @@ func (r *Runner) AddTarget(target string) error {
141160
if strings.HasPrefix(target, "http://") || strings.HasPrefix(target, "https://") {
142161
if u, err := url.Parse(target); err == nil {
143162
s1 := fmt.Sprintf("%s://%s", u.Scheme, u.Host)
144-
Naabubuffer.Write([]byte(fmt.Sprintf("%s\n", s1)))
163+
Add2Naabubuffer(fmt.Sprintf("%s\n", s1))
145164
// target 长度 大于 s1才处理
146165
////UrlPrecise bool // 精准url扫描,不去除url清单上下文 2022-06-08
147166
UrlPrecise := pkg.GetVal(pkg.UrlPrecise)
@@ -154,7 +173,7 @@ func (r *Runner) AddTarget(target string) error {
154173
if r.options.Verbose {
155174
log.Println("Precise scan: ", target)
156175
}
157-
Naabubuffer.Write([]byte(fmt.Sprintf("%s\n", target)))
176+
Add2Naabubuffer(fmt.Sprintf("%s\n", target))
158177
}
159178
}
160179
}

0 commit comments

Comments
 (0)