test: extra DSL function test cases

dev
forgedhallpass 2022-06-08 20:58:46 +03:00
parent 04e7e053de
commit 9fd9892f49
3 changed files with 62 additions and 53 deletions

View File

@ -16,57 +16,65 @@ requests:
04: {{base64_py("Hello")}}
05: {{concat("Hello", "world")}}
06: {{contains("Hello", "lo")}}
07: {{generate_java_gadget("commons-collections3.1", "wget http://{{interactsh-url}}", "base64")}}
08: {{gzip("Hello")}}
09: {{hex_decode("6161")}}
10: {{hex_encode("aa")}}
11: {{html_escape("<body>test</body>")}}
12: {{html_unescape("&lt;body&gt;test&lt;/body&gt;")}}
13: {{len("Hello")}}
14: {{len(5555)}}
15: {{md5("Hello")}}
16: {{md5(1234)}}
17: {{mmh3("Hello")}}
18: {{print_debug(1+2, "Hello")}}
19: {{rand_base(5, "abc")}}
20: {{rand_base(5, "")}}
21: {{rand_base(5)}}
22: {{rand_char("abc")}}
23: {{rand_char("")}}
24: {{rand_char()}}
25: {{rand_int(1, 10)}}
26: {{rand_int(10)}}
27: {{rand_int()}}
28: {{rand_ip("192.168.0.0/24")}}
29: {{rand_ip("2002:c0a8::/24")}}
30: {{rand_ip("192.168.0.0/24","10.0.100.0/24")}}
31: {{rand_text_alpha(10, "abc")}}
32: {{rand_text_alpha(10, "")}}
33: {{rand_text_alpha(10)}}
34: {{rand_text_alphanumeric(10, "ab12")}}
35: {{rand_text_alphanumeric(10)}}
36: {{rand_text_numeric(10, 123)}}
37: {{rand_text_numeric(10)}}
38: {{regex("H([a-z]+)o", "Hello")}}
39: {{remove_bad_chars("abcd", "bc")}}
40: {{repeat("a", 5)}}
41: {{replace("Hello", "He", "Ha")}}
42: {{replace_regex("He123llo", "(\\d+)", "")}}
43: {{reverse("abc")}}
44: {{sha1("Hello")}}
45: {{sha256("Hello")}}
46: {{to_lower("HELLO")}}
47: {{to_upper("hello")}}
48: {{trim("aaaHelloddd", "ad")}}
49: {{trim_left("aaaHelloddd", "ad")}}
50: {{trim_prefix("aaHelloaa", "aa")}}
51: {{trim_right("aaaHelloddd", "ad")}}
52: {{trim_space(" Hello ")}}
53: {{trim_suffix("aaHelloaa", "aa")}}
54: {{unix_time(10)}}
55: {{url_decode("https:%2F%2Fprojectdiscovery.io%3Ftest=1")}}
56: {{url_encode("https://projectdiscovery.io/test?a=1")}}
57: {{wait_for(1)}}
07: {{date_time("%Y-%M-%D")}}
08: {{date_time("%Y-%M-%D", unix_time())}}
09: {{date_time("%H-%m")}}
10: {{date_time("02-01-2006 15:04")}}
11: {{date_time("02-01-2006 15:04", unix_time())}}
12: {{generate_java_gadget("commons-collections3.1", "wget http://{{interactsh-url}}", "base64")}}
13: {{gzip("Hello")}}
14: {{hex_decode("6161")}}
15: {{hex_encode("aa")}}
16: {{hmac("sha1", "test", "scrt")}}
17: {{hmac("sha256", "test", "scrt")}}
18: {{html_escape("<body>test</body>")}}
19: {{html_unescape("&lt;body&gt;test&lt;/body&gt;")}}
20: {{join("_", "hello", "world")}}
21: {{len("Hello")}}
22: {{len(5555)}}
23: {{md5("Hello")}}
24: {{md5(1234)}}
25: {{mmh3("Hello")}}
26: {{print_debug(1+2, "Hello")}}
27: {{rand_base(5, "abc")}}
28: {{rand_base(5, "")}}
29: {{rand_base(5)}}
30: {{rand_char("abc")}}
31: {{rand_char("")}}
32: {{rand_char()}}
33: {{rand_int(1, 10)}}
34: {{rand_int(10)}}
35: {{rand_int()}}
36: {{rand_ip("192.168.0.0/24")}}
37: {{rand_ip("2002:c0a8::/24")}}
38: {{rand_ip("192.168.0.0/24","10.0.100.0/24")}}
39: {{rand_text_alpha(10, "abc")}}
40: {{rand_text_alpha(10, "")}}
41: {{rand_text_alpha(10)}}
42: {{rand_text_alphanumeric(10, "ab12")}}
43: {{rand_text_alphanumeric(10)}}
44: {{rand_text_numeric(10, 123)}}
45: {{rand_text_numeric(10)}}
46: {{regex("H([a-z]+)o", "Hello")}}
47: {{remove_bad_chars("abcd", "bc")}}
48: {{repeat("a", 5)}}
49: {{replace("Hello", "He", "Ha")}}
50: {{replace_regex("He123llo", "(\\d+)", "")}}
51: {{reverse("abc")}}
52: {{sha1("Hello")}}
53: {{sha256("Hello")}}
54: {{to_lower("HELLO")}}
55: {{to_upper("hello")}}
56: {{trim("aaaHelloddd", "ad")}}
57: {{trim_left("aaaHelloddd", "ad")}}
58: {{trim_prefix("aaHelloaa", "aa")}}
59: {{trim_right("aaaHelloddd", "ad")}}
60: {{trim_space(" Hello ")}}
61: {{trim_suffix("aaHelloaa", "aa")}}
62: {{unix_time(10)}}
63: {{url_decode("https:%2F%2Fprojectdiscovery.io%3Ftest=1")}}
64: {{url_encode("https://projectdiscovery.io/test?a=1")}}
65: {{wait_for(1)}}
extractors:
- type: regex

View File

@ -256,7 +256,7 @@ func (h *httpDSLFunctions) Execute(filePath string) error {
}
totalExtracted := strings.Split(submatch[1], ",")
numberOfDslFunctions := 57
numberOfDslFunctions := 65
if len(totalExtracted) != numberOfDslFunctions {
return errors.New("incorrect number of results")
}

View File

@ -209,8 +209,9 @@ func TestDslExpressions(t *testing.T) {
`html_escape("<body>test</body>")`: "&lt;body&gt;test&lt;/body&gt;",
`html_unescape("&lt;body&gt;test&lt;/body&gt;")`: "<body>test</body>",
`date_time("%Y-%M-%D")`: fmt.Sprintf("%02d-%02d-%02d", now.Year(), now.Month(), now.Day()),
`date_time("%Y-%M-%D", unix_time())`: fmt.Sprintf("%02d-%02d-%02d", now.Year(), now.Month(), now.Day()),
`date_time("%H-%m")`: fmt.Sprintf("%02d-%02d", now.Hour(), now.Minute()),
`date_time("02-01-2006 15:04")`: now.Format("02-01-2006 15:04"),
`date_time("02-01-2006 15:04", unix_time())`: now.Format("02-01-2006 15:04"),
`md5("Hello")`: "8b1a9953c4611296a827abf8c47804d7",
`md5(1234)`: "81dc9bdb52d04dc20036dbd8313ed055",
`mmh3("Hello")`: "316307400",