Skip to content

Commit db34c66

Browse files
authored
Merge pull request #226 from projectdiscovery/dev
shuffledns v1.0.9 (maintenance release)
2 parents a2ae07f + efcf75e commit db34c66

13 files changed

+304
-104
lines changed

.github/workflows/build-test.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ jobs:
1313
steps:
1414
- uses: actions/checkout@v3
1515

16-
- uses: actions/setup-go@v3
16+
- uses: actions/setup-go@v4
1717
with:
18-
go-version: 1.18
18+
go-version: 1.19
1919

2020
- name: Test
2121
run: go test ./...

.github/workflows/dockerhub-push.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- name: Get Github tag
1818
id: meta
1919
run: |
20-
echo "::set-output name=tag::$(curl --silent "https://api.github.com/repos/projectdiscovery/shuffledns/releases/latest" | jq -r .tag_name)"
20+
curl --silent "https://api.github.com/repos/projectdiscovery/shuffledns/releases/latest" | jq -r .tag_name | xargs -I {} echo TAG={} >> $GITHUB_OUTPUT
2121
2222
- name: Set up QEMU
2323
uses: docker/setup-qemu-action@v2
@@ -32,9 +32,9 @@ jobs:
3232
password: ${{ secrets.DOCKER_TOKEN }}
3333

3434
- name: Build and push
35-
uses: docker/build-push-action@v3
35+
uses: docker/build-push-action@v4
3636
with:
3737
context: .
3838
platforms: linux/amd64,linux/arm64,linux/arm
3939
push: true
40-
tags: projectdiscovery/shuffledns:latest,projectdiscovery/shuffledns:${{ steps.meta.outputs.tag }}
40+
tags: projectdiscovery/shuffledns:latest,projectdiscovery/shuffledns:${{ steps.meta.outputs.TAG }}

.github/workflows/lint-test.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@ jobs:
1010
runs-on: ubuntu-latest
1111
steps:
1212
- name: Set up Go
13-
uses: actions/setup-go@v3
13+
uses: actions/setup-go@v4
1414
with:
15-
go-version: 1.18
15+
go-version: 1.19
1616

1717
- name: Checkout code
1818
uses: actions/checkout@v3
1919

2020
- name: Run golangci-lint
21-
uses: golangci/golangci-lint-action@v3.2.0
21+
uses: golangci/golangci-lint-action@v3.4.0
2222
with:
2323
version: latest
2424
args: --timeout 5m

.github/workflows/release-binary.yml

+8-5
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,16 @@ jobs:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- uses: actions/checkout@v3
14-
- uses: actions/setup-go@v3
14+
- uses: actions/setup-go@v4
1515
with:
16-
go-version: 1.18
17-
- uses: goreleaser/goreleaser-action@v2
16+
go-version: 1.19
17+
- uses: goreleaser/goreleaser-action@v4
1818
with:
1919
args: "release --rm-dist"
2020
version: latest
2121
workdir: .
22-
env:
23-
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
22+
env:
23+
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
24+
SLACK_WEBHOOK: "${{ secrets.RELEASE_SLACK_WEBHOOK }}"
25+
DISCORD_WEBHOOK_ID: "${{ secrets.DISCORD_WEBHOOK_ID }}"
26+
DISCORD_WEBHOOK_TOKEN: "${{ secrets.DISCORD_WEBHOOK_TOKEN }}"

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
cmd/shuffledns/shuffledns*
2-
cmd/shuffledns/build.sh
2+
cmd/shuffledns/build.sh
3+
dist/

.goreleaser.yml

+12-1
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,15 @@ archives:
3131
darwin: macOS
3232

3333
checksum:
34-
algorithm: sha256
34+
algorithm: sha256
35+
36+
announce:
37+
slack:
38+
enabled: true
39+
channel: '#release'
40+
username: GoReleaser
41+
message_template: 'New Release: {{ .ProjectName }} {{ .Tag }} is published! Check it out at {{ .ReleaseURL }}'
42+
43+
discord:
44+
enabled: true
45+
message_template: '**New Release: {{ .ProjectName }} {{.Tag}}** is published! Check it out at {{ .ReleaseURL }}'

Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
FROM golang:1.18.4-alpine as build-env
1+
FROM golang:1.20.4-alpine as build-env
22
RUN apk --no-cache add git
33
RUN go install -v github.com/projectdiscovery/shuffledns/cmd/shuffledns@latest
44

5-
FROM alpine:3.16.0
5+
FROM alpine:3.17.3
66
RUN apk --update --no-cache add ldns \
77
&& apk --no-cache --virtual .deps add ldns-dev \
88
git \

README.md

+13-3
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,12 @@ shuffledns -h
5151
This will display help for the tool. Here are all the switches it supports.
5252

5353
```yaml
54+
shuffleDNS is a wrapper around massdns written in go that allows you to enumerate valid subdomains using active bruteforce as well as resolve subdomains with wildcard handling and easy input-output support.
55+
56+
Usage:
57+
./shuffledns [flags]
58+
59+
Flags:
5460
INPUT:
5561
-d, -domain string Domain to find or resolve subdomains for
5662
-l, -list string File containing list of subdomains to resolve
@@ -61,14 +67,18 @@ INPUT:
6167
RATE-LIMIT:
6268
-t int Number of concurrent massdns resolves (default 10000)
6369

70+
UPDATE:
71+
-up, -update update shuffledns to latest version
72+
-duc, -disable-update-check disable automatic shuffledns update check
73+
6474
OUTPUT:
6575
-o, -output string File to write output to (optional)
6676
-j, -json Make output format as ndjson
6777
-wo, -wildcard-output string Dump wildcard ips to output file
6878

6979
CONFIGURATIONS:
7080
-m, -massdns string Path to the massdns binary
71-
-mcmd, -massdns-cmd string Optional massdns commands to run (example '-q -i 10')
81+
-mcmd, -massdns-cmd string Optional massdns commands to run (example '-i 10')
7282
-directory string Temporary directory for enumeration
7383

7484
OPTIMIZATIONS:
@@ -99,7 +109,7 @@ The tool also needs a list of valid resolvers. The [dnsvalidator](https://github
99109

100110
## Installation Instructions
101111

102-
`shuffledns` requires `go1.17+` to install successfully. Run the following command to install the latest version:
112+
`shuffledns` requires `go1.19+` to install successfully. Run the following command to install the latest version:
103113

104114
```bash
105115
go install -v github.com/projectdiscovery/shuffledns/cmd/shuffledns@latest
@@ -162,4 +172,4 @@ A special feature of `shuffleDNS` is its ability to handle multi-level DNS based
162172

163173
### License
164174

165-
`shuffledns` is distributed under [GPL v3 License](https://github.com/projectdiscovery/shuffledns/blob/master/LICENSE.md)
175+
`shuffledns` is distributed under [GPL v3 License](https://github.com/projectdiscovery/shuffledns/blob/main/LICENSE.md)

go.mod

+59-19
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,75 @@
11
module github.com/projectdiscovery/shuffledns
22

3-
go 1.17
3+
go 1.19
44

55
require (
6-
github.com/miekg/dns v1.1.50
7-
github.com/projectdiscovery/fileutil v0.0.0-20220215113056-ba188a0c8abc
8-
github.com/projectdiscovery/goflags v0.0.7
9-
github.com/projectdiscovery/gologger v1.1.4
10-
github.com/projectdiscovery/roundrobin v0.0.0-20220414090253-f09184199ebd
6+
github.com/miekg/dns v1.1.54
7+
github.com/projectdiscovery/goflags v0.1.8
8+
github.com/projectdiscovery/gologger v1.1.9
9+
github.com/projectdiscovery/roundrobin v0.0.6
1110
github.com/remeh/sizedwaitgroup v1.0.0
12-
github.com/rs/xid v1.4.0
13-
github.com/stretchr/testify v1.8.0
11+
github.com/rs/xid v1.5.0
12+
github.com/stretchr/testify v1.8.2
1413
)
1514

1615
require (
17-
github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d // indirect
16+
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
17+
github.com/aymerick/douceur v0.2.0 // indirect
1818
github.com/cnf/structhash v0.0.0-20201127153200-e1b16c1ebc08 // indirect
1919
github.com/davecgh/go-spew v1.1.1 // indirect
20-
github.com/json-iterator/go v1.1.10 // indirect
21-
github.com/karrick/godirwalk v1.16.1 // indirect
20+
github.com/gorilla/css v1.0.0 // indirect
21+
github.com/json-iterator/go v1.1.12 // indirect
2222
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
23+
github.com/microcosm-cc/bluemonday v1.0.23 // indirect
2324
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
24-
github.com/modern-go/reflect2 v1.0.1 // indirect
25+
github.com/modern-go/reflect2 v1.0.2 // indirect
2526
github.com/pkg/errors v0.9.1 // indirect
2627
github.com/pmezard/go-difflib v1.0.0 // indirect
27-
github.com/projectdiscovery/stringsutil v0.0.0-20210804142656-fd3c28dbaafe // indirect
28-
golang.org/x/mod v0.4.2 // indirect
29-
golang.org/x/net v0.0.0-20210726213435-c6fcb2dbf985 // indirect
30-
golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365 // indirect
31-
golang.org/x/tools v0.1.6-0.20210726203631-07bc1bf47fb2 // indirect
32-
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
33-
gopkg.in/yaml.v2 v2.4.0 // indirect
28+
github.com/projectdiscovery/utils v0.0.28
29+
github.com/saintfish/chardet v0.0.0-20230101081208-5e3ef4b5456d // indirect
30+
golang.org/x/mod v0.9.0 // indirect
31+
golang.org/x/net v0.9.0 // indirect
32+
golang.org/x/sys v0.8.0 // indirect
33+
golang.org/x/tools v0.7.0 // indirect
3434
gopkg.in/yaml.v3 v3.0.1 // indirect
3535
)
36+
37+
require (
38+
aead.dev/minisign v0.2.0 // indirect
39+
github.com/Masterminds/semver/v3 v3.2.1 // indirect
40+
github.com/VividCortex/ewma v1.2.0 // indirect
41+
github.com/alecthomas/chroma v0.10.0 // indirect
42+
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
43+
github.com/charmbracelet/glamour v0.6.0 // indirect
44+
github.com/cheggaaa/pb/v3 v3.1.2 // indirect
45+
github.com/dlclark/regexp2 v1.8.1 // indirect
46+
github.com/dsnet/compress v0.0.1 // indirect
47+
github.com/fatih/color v1.14.1 // indirect
48+
github.com/golang/protobuf v1.5.2 // indirect
49+
github.com/golang/snappy v0.0.4 // indirect
50+
github.com/google/go-github/v30 v30.1.0 // indirect
51+
github.com/google/go-querystring v1.1.0 // indirect
52+
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
53+
github.com/mattn/go-colorable v0.1.13 // indirect
54+
github.com/mattn/go-isatty v0.0.17 // indirect
55+
github.com/mattn/go-runewidth v0.0.14 // indirect
56+
github.com/mholt/archiver v3.1.1+incompatible // indirect
57+
github.com/minio/selfupdate v0.6.0 // indirect
58+
github.com/muesli/reflow v0.3.0 // indirect
59+
github.com/muesli/termenv v0.15.1 // indirect
60+
github.com/nwaples/rardecode v1.1.3 // indirect
61+
github.com/olekukonko/tablewriter v0.0.5 // indirect
62+
github.com/pierrec/lz4 v2.6.1+incompatible // indirect
63+
github.com/rivo/uniseg v0.4.4 // indirect
64+
github.com/rogpeppe/go-internal v1.9.0 // indirect
65+
github.com/ulikunitz/xz v0.5.11 // indirect
66+
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
67+
github.com/yuin/goldmark v1.5.4 // indirect
68+
github.com/yuin/goldmark-emoji v1.0.1 // indirect
69+
golang.org/x/crypto v0.7.0 // indirect
70+
golang.org/x/exp v0.0.0-20230315142452-642cacee5cc0 // indirect
71+
golang.org/x/oauth2 v0.7.0 // indirect
72+
google.golang.org/appengine v1.6.7 // indirect
73+
google.golang.org/protobuf v1.28.1 // indirect
74+
gopkg.in/djherbis/times.v1 v1.3.0 // indirect
75+
)

0 commit comments

Comments
 (0)