diff --git a/go.mod b/go.mod index e00173c..c05b362 100644 --- a/go.mod +++ b/go.mod @@ -4,23 +4,23 @@ go 1.17 require ( github.com/chainreactors/files v0.2.0 // indirect + github.com/chainreactors/go-metrics v0.0.0-20220926021830-24787b7a10f8 github.com/chainreactors/gogo/v2 v2.8.7 github.com/chainreactors/logs v0.6.1 github.com/chainreactors/parsers v0.0.1 - github.com/chainreactors/words v0.0.1 - github.com/go-dedup/simhash v0.0.0-20170904020510-9ecaca7b509c - github.com/panjf2000/ants/v2 v2.5.0 + github.com/chainreactors/words v0.1.1 ) require ( + github.com/go-dedup/simhash v0.0.0-20170904020510-9ecaca7b509c github.com/gosuri/uiprogress v0.0.1 github.com/jessevdk/go-flags v1.5.0 + github.com/panjf2000/ants/v2 v2.5.0 github.com/valyala/fasthttp v1.40.0 ) require ( github.com/andybalholm/brotli v1.0.4 // indirect - github.com/chainreactors/go-metrics v0.0.0-20220926021830-24787b7a10f8 // indirect github.com/go-dedup/megophone v0.0.0-20170830025436-f01be21026f5 // indirect github.com/go-dedup/text v0.0.0-20170907015346-8bb1b95e3cb7 // indirect github.com/gosuri/uilive v0.0.4 // indirect diff --git a/go.sum b/go.sum index bd328dc..ad60a2f 100644 --- a/go.sum +++ b/go.sum @@ -13,8 +13,8 @@ github.com/chainreactors/logs v0.6.1 h1:+wLVqxErUyWYayAx6x+m5LA6jQBiHcLdTAJtiOUM github.com/chainreactors/logs v0.6.1/go.mod h1:Y0EtAnoF0kiASIJUnXN0pcOt420iRpHOAnOhEphzRHA= github.com/chainreactors/parsers v0.0.1 h1:GrfY4sfdv9TMuYNSKq3Jak2PO4AMJcDRAHocSb8DEx0= github.com/chainreactors/parsers v0.0.1/go.mod h1:pJ7As+BbXlC9SHBPCE4edc9xYPh5xik+YtKGHRclKx0= -github.com/chainreactors/words v0.0.1 h1:d0rLwuKVzwLWD1CtYeTK7u2E5tv8dmebpq6EhUtNhhg= -github.com/chainreactors/words v0.0.1/go.mod h1:QIWX1vMT5j/Mp9zx3/wgZh3FqskhjCbo/3Ffy/Hxj9w= +github.com/chainreactors/words v0.1.1 h1:Zw4HKFtYcIH5SfuCV0X6kj/A5sN99jrQD2ChUonLOV8= +github.com/chainreactors/words v0.1.1/go.mod h1:jRcFgafTKqdkd1+StzPCTJG1ESrZHluXEO2eERdHBMQ= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -46,8 +46,6 @@ github.com/panjf2000/ants/v2 v2.5.0 h1:1rWGWSnxCsQBga+nQbA4/iY6VMeNoOIAM0ZWh9u3q github.com/panjf2000/ants/v2 v2.5.0/go.mod h1:cU93usDlihJZ5CfRGNDYsiBYvoilLvBF5Qp/BT2GNRE= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 h1:N/ElC8H3+5XpJzTSTfLsJV/mx9Q9g7kxmchpfZyxgzM= -github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.7.1 h1:5TQK59W5E3v0r2duFAb7P95B6hEeOyEnHRa8MjYSMTY= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= diff --git a/internal/option.go b/internal/option.go index 380c005..6b4853e 100644 --- a/internal/option.go +++ b/internal/option.go @@ -3,6 +3,7 @@ package internal import ( "github.com/chainreactors/logs" "github.com/chainreactors/spray/pkg" + "github.com/chainreactors/words/mask" "github.com/gosuri/uiprogress" "io/ioutil" "os" @@ -89,7 +90,7 @@ func (opt *Option) PrepareRunner() (*Runner, error) { if err != nil { return nil, err } - logs.Log.Importantf("load %d word from %s", len(r.Wordlist), f) + logs.Log.Importantf("load %d word from %s", len(dicts[i]), f) } if opt.Word == "" { @@ -97,11 +98,13 @@ func (opt *Option) PrepareRunner() (*Runner, error) { r.Wordlist = append(r.Wordlist, w...) } } else { - + mask.CustomWords = dicts + r.Wordlist, err = mask.Run(opt.Word) + if err != nil { + return nil, err + } } - // todo mask - // prepare header for _, h := range opt.Headers { i := strings.Index(h, ":")