Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adding dns srv type #5034

Merged
merged 3 commits into from
Apr 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion cmd/integration-test/dns.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,12 @@ import (
)

var dnsTestCases = []TestCaseInfo{
{Path: "protocols/dns/basic.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/a.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/aaaa.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/cname.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/srv.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/ns.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/txt.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/ptr.yaml", TestCase: &dnsPtr{}},
{Path: "protocols/dns/caa.yaml", TestCase: &dnsCAA{}},
{Path: "protocols/dns/tlsa.yaml", TestCase: &dnsTLSA{}},
Expand Down
18 changes: 18 additions & 0 deletions cmd/nuclei/srv.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
id: basic-dns-a-example

info:
name: Test DNS A Query Template
author: pdteam
severity: info

dns:
- name: "{{FQDN}}"
type: SRV
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "SRV"
2 changes: 1 addition & 1 deletion integration_tests/protocols/code/pre-condition.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ code:
- type: dsl
dsl:
- true
# digest: 4a0a00473045022100c7215ce9f11e6a51c193bb54643a05cdd1cde18a3abb6c9983c5c7524d3ff03002203d93581c81d3ad5db463570cbbd2bdee529328d32a5b00e037610c211e448cef:4a3eb6b4988d95847d4203be25ed1d46
# digest: 490a004630440220192fb8f704b078c2885047b85ac1a0491be86485c033a976d201599683a35aab0220604b1c3781e9d97079d0e5c23c18e6a2d87493c8e2b930536e692ee7d06e9247:4a3eb6b4988d95847d4203be25ed1d46
2 changes: 1 addition & 1 deletion integration_tests/protocols/code/py-env-var.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@ code:
- type: word
words:
- "hello from input baz"
# digest: 4a0a0047304502207e3a5eda5f3207c3c01c820562243281926c1215224a7c80ed7528559b9f52cb022100f6ef99bb45843f481705778630f2cfd8f4d1cc3acb96392ff016f22e06aa91af:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4a0a00473045022033f72f1b9d5143f58a2dc79c2597000f34080251ac3702c36c3fad00917dfeeb0221009ba05c715c9e2e36dba471be6c0106a09ae3822d8a3e9e4bcf377e9f4a395a01:4a3eb6b4988d95847d4203be25ed1d46
2 changes: 1 addition & 1 deletion integration_tests/protocols/code/py-file.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ code:
- type: word
words:
- "hello from input"
# digest: 4a0a004730450220069673af9bd6d6677f9529d06f5d8bd46d543089a4731ed18ee806761d75fd60022100913a3e27b0a5809baf710ba9585bf9fe729634c0e19e3e13eef70a6bd100df34:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4a0a004730450220377128cb11d9f6f0fee1f4dbd841e46783de26e90a216fa55a7609ee2bc823c60221009166ee0f85e3a1811588ab19e73ea96ab3d582dc8180dbcbbad0ea9ab7e9025d:4a3eb6b4988d95847d4203be25ed1d46
2 changes: 1 addition & 1 deletion integration_tests/protocols/code/py-interactsh.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,4 @@ code:
part: interactsh_protocol
words:
- "http"
# digest: 490a00463044022003b8d069e3c84412729c43e33013a52ee04eabcf096d511979691d71d8e905f60220011f4475899abed4f86b4bd5e6c2423750759135206e4729826afe1ed8a44f4d:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4b0a00483046022100d472d50bd83117d334f5217c7a40dcdf34138e90029eaace51697d902296bf37022100a393b49420a96f60d6d89b79b5135ee2233b2468d374851890eea114b08195d1:4a3eb6b4988d95847d4203be25ed1d46
2 changes: 1 addition & 1 deletion integration_tests/protocols/code/py-snippet.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ code:
- type: word
words:
- "hello from input"
# digest: 4a0a00473045022100c291615cf2a8005450c17a6554e81a9cdab14743b299f0679c644247929198b502206fdacc8ab173bde2b4015340012637916bf2659f66f320fcc06b97ac639072a1:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4b0a004830460221008886054bb5dd6345e434e30f31c8fddce3c484a4f33aa6321b5185675866029d022100d188a83d0fde029f8b586061c65ab72b43755c3fb10fdd59501bb9bbadbb1ff7:4a3eb6b4988d95847d4203be25ed1d46
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
id: basic-dns-example
id: dns-a-query-example

info:
name: Test DNS Template
name: Test DNS A Query Template
author: pdteam
severity: info

Expand All @@ -14,4 +14,4 @@ dns:
matchers:
- type: word
words:
- "1.1.1.1"
- "1.1.1.1"
17 changes: 17 additions & 0 deletions integration_tests/protocols/dns/aaaa.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
id: dns-aaaa-query-example

info:
name: Test DNS AAAA Query Template
author: pdteam
severity: info

dns:
- name: "{{FQDN}}"
type: AAAA
class: inet
recursion: true
retries: 3
matchers:
- type: word
words:
- "2606:4700:4700::1001"
18 changes: 18 additions & 0 deletions integration_tests/protocols/dns/cname.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
id: dns-cname-query-example

info:
name: Test DNS CNAME Query Template
author: pdteam
severity: info

dns:
- name: "{{FQDN}}"
type: CNAME
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "CNAME"
18 changes: 18 additions & 0 deletions integration_tests/protocols/dns/ns.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
id: dns-ns-query-example

info:
name: Test DNS NS Query Template
author: pdteam
severity: info

dns:
- name: "{{FQDN}}"
type: NS
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "NS"
18 changes: 18 additions & 0 deletions integration_tests/protocols/dns/srv.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
id: dns-a-query-example

info:
name: Test DNS SRV Query Template
author: pdteam
severity: info

dns:
- name: "{{FQDN}}"
type: SRV
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "SRV"
18 changes: 18 additions & 0 deletions integration_tests/protocols/dns/txt.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
id: dns-txt-query-example

info:
name: Test DNS TXT Query Template
author: pdteam
severity: info

dns:
- name: "{{FQDN}}"
type: TXT
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "TXT"
2 changes: 2 additions & 0 deletions pkg/protocols/dns/dns.go
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,8 @@ func questionTypeToInt(questionType string) uint16 {
question = dns.TypeTLSA
case "ANY":
question = dns.TypeANY
case "SRV":
question = dns.TypeSRV
}
return question
}
Expand Down
3 changes: 3 additions & 0 deletions pkg/protocols/dns/dns_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ const (
TLSA
// name:ANY
ANY
// name:SRV
SRV
limit
)

Expand All @@ -54,6 +56,7 @@ var DNSRequestTypeMapping = map[DNSRequestType]string{
CAA: "CAA",
TLSA: "TLSA",
ANY: "ANY",
SRV: "SRV",
}

// GetSupportedDNSRequestTypes returns list of supported types
Expand Down
Loading