arachni 0.4.4 → 0.4.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (148) hide show
  1. checksums.yaml +8 -8
  2. data/CHANGELOG.md +37 -0
  3. data/README.md +18 -3
  4. data/lib/arachni/element/capabilities/auditable.rb +5 -1
  5. data/lib/arachni/element/capabilities/auditable/taint.rb +37 -2
  6. data/lib/arachni/platform/fingerprinter.rb +4 -4
  7. data/lib/arachni/platform/manager.rb +15 -1
  8. data/lib/arachni/platforms.rb +2 -1
  9. data/lib/arachni/rpc/server/framework/distributor.rb +2 -2
  10. data/lib/arachni/spider.rb +1 -1
  11. data/lib/arachni/ui/cli/utilities.rb +1 -1
  12. data/lib/version +1 -1
  13. data/modules/audit/file_inclusion.rb +126 -0
  14. data/modules/audit/os_cmd_injection.rb +11 -9
  15. data/modules/audit/path_traversal.rb +21 -21
  16. data/modules/audit/source_code_disclosure.rb +16 -15
  17. data/modules/audit/sqli.rb +13 -6
  18. data/modules/audit/sqli/patterns/access +3 -0
  19. data/modules/audit/sqli/patterns/coldfusion +1 -0
  20. data/modules/audit/sqli/patterns/db2 +5 -0
  21. data/modules/audit/sqli/patterns/emc +2 -0
  22. data/modules/audit/sqli/patterns/firebird +2 -0
  23. data/modules/audit/sqli/patterns/frontbase +1 -0
  24. data/modules/audit/sqli/patterns/hsqldb +1 -0
  25. data/modules/audit/sqli/patterns/informix +3 -0
  26. data/modules/audit/sqli/patterns/ingres +3 -0
  27. data/modules/audit/sqli/patterns/interbase +2 -0
  28. data/modules/audit/sqli/patterns/maxdb +2 -0
  29. data/modules/audit/sqli/patterns/mssql +24 -0
  30. data/modules/audit/sqli/patterns/mysql +15 -0
  31. data/modules/audit/sqli/patterns/oracle +6 -0
  32. data/modules/audit/sqli/patterns/pgsql +8 -0
  33. data/modules/audit/sqli/patterns/sqlite +5 -0
  34. data/modules/audit/sqli/patterns/sybase +3 -0
  35. data/modules/recon/common_files/filenames.txt +1 -0
  36. data/modules/recon/localstart_asp.rb +67 -0
  37. data/path_extractors/comments.rb +30 -0
  38. data/path_extractors/meta_refresh.rb +8 -4
  39. data/plugins/uncommon_headers.rb +91 -0
  40. data/reports/html/default/issue.erb +1 -1
  41. data/reports/html/default/plugins.erb +3 -3
  42. data/reports/plugin_formatters/html/uncommon_headers.rb +47 -0
  43. data/reports/plugin_formatters/stdout/uncommon_headers.rb +37 -0
  44. data/reports/plugin_formatters/xml/discovery.rb +2 -0
  45. data/reports/plugin_formatters/xml/timing_attacks.rb +2 -0
  46. data/reports/plugin_formatters/xml/uncommon_headers.rb +38 -0
  47. data/reports/plugin_formatters/xml/uniformity.rb +2 -1
  48. data/reports/xml/buffer.rb +9 -5
  49. data/spec/arachni/element/capabilities/auditable/taint_spec.rb +295 -82
  50. data/spec/arachni/framework_spec.rb +48 -35
  51. data/spec/arachni/platform/manager_spec.rb +3 -2
  52. data/spec/modules/audit/file_inclusion_spec.rb +25 -0
  53. data/spec/modules/audit/path_traversal_spec.rb +3 -3
  54. data/spec/modules/audit/sqli_spec.rb +2 -1
  55. data/spec/modules/recon/localstart_asp_spec.rb +19 -0
  56. data/spec/path_extractors/comments_spec.rb +22 -0
  57. data/spec/path_extractors/meta_refresh_spec.rb +3 -3
  58. data/spec/plugins/uncommon_headers_spec.rb +64 -0
  59. data/spec/support/logs/Dispatcher - 1755-58492.log +9 -0
  60. data/spec/support/logs/Dispatcher - 1783-39171.log +21 -0
  61. data/spec/support/logs/Dispatcher - 1920-39032.log +9 -0
  62. data/spec/support/logs/Dispatcher - 1931-5309.log +19 -0
  63. data/spec/support/logs/Dispatcher - 1943-59691.log +17 -0
  64. data/spec/support/logs/Dispatcher - 1953-29898.log +13 -0
  65. data/spec/support/logs/Dispatcher - 1962-41002.log +9 -0
  66. data/spec/support/logs/Dispatcher - 1973-27626.log +9 -0
  67. data/spec/support/logs/Dispatcher - 1983-18043.log +11 -0
  68. data/spec/support/logs/Dispatcher - 1996-23139.log +11 -0
  69. data/spec/support/logs/Dispatcher - 2010-10568.log +35 -0
  70. data/spec/support/logs/Dispatcher - 2072-29284.log +21 -0
  71. data/spec/support/logs/Dispatcher - 2081-3234.log +21 -0
  72. data/spec/support/logs/Dispatcher - 2090-18129.log +23 -0
  73. data/spec/support/logs/Dispatcher - 2132-43806.log +19 -0
  74. data/spec/support/logs/Dispatcher - 2141-1327.log +17 -0
  75. data/spec/support/logs/Dispatcher - 2150-52559.log +15 -0
  76. data/spec/support/logs/Dispatcher - 2163-60400.log +11 -0
  77. data/spec/support/logs/Dispatcher - 2176-6021.log +9 -0
  78. data/spec/support/logs/Dispatcher - 2185-22991.log +9 -0
  79. data/spec/support/logs/Dispatcher - 2194-15317.log +9 -0
  80. data/spec/support/logs/Dispatcher - 2203-51674.log +9 -0
  81. data/spec/support/logs/Dispatcher - 2212-25563.log +11 -0
  82. data/spec/support/logs/Dispatcher - 2225-7249.log +9 -0
  83. data/spec/support/logs/Dispatcher - 2234-36714.log +9 -0
  84. data/spec/support/logs/Dispatcher - 2291-34161.log +63 -0
  85. data/spec/support/logs/Dispatcher - 2300-29645.log +43 -0
  86. data/spec/support/logs/Dispatcher - 2309-26961.log +39 -0
  87. data/spec/support/logs/Dispatcher - 2320-25486.log +34 -0
  88. data/spec/support/logs/Dispatcher - 2394-20678.log +28 -0
  89. data/spec/support/logs/Dispatcher - 2409-35315.log +21 -0
  90. data/spec/support/logs/Dispatcher - 2428-13197.log +13 -0
  91. data/spec/support/logs/Dispatcher - 2444-26232.log +9 -0
  92. data/spec/support/logs/Dispatcher - 2573-19232.log +19 -0
  93. data/spec/support/logs/Dispatcher - 2583-26954.log +21 -0
  94. data/spec/support/logs/Dispatcher - 2592-57040.log +15 -0
  95. data/spec/support/logs/Dispatcher - 2606-55321.log +19 -0
  96. data/spec/support/logs/Dispatcher - 2615-56847.log +21 -0
  97. data/spec/support/logs/Dispatcher - 2624-51835.log +15 -0
  98. data/spec/support/logs/Dispatcher - 2745-54916.log +17 -0
  99. data/spec/support/logs/Dispatcher - 2754-32405.log +21 -0
  100. data/spec/support/logs/Dispatcher - 2763-13372.log +13 -0
  101. data/spec/support/logs/Dispatcher - 2776-6861.log +19 -0
  102. data/spec/support/logs/Dispatcher - 2785-19122.log +21 -0
  103. data/spec/support/logs/Dispatcher - 2794-54279.log +15 -0
  104. data/spec/support/logs/Dispatcher - 2847-13871.log +17 -0
  105. data/spec/support/logs/Dispatcher - 2856-56546.log +21 -0
  106. data/spec/support/logs/Dispatcher - 2865-22921.log +13 -0
  107. data/spec/support/logs/Dispatcher - 2878-27922.log +17 -0
  108. data/spec/support/logs/Dispatcher - 2888-5399.log +21 -0
  109. data/spec/support/logs/Dispatcher - 2897-6079.log +13 -0
  110. data/spec/support/logs/Dispatcher - 3129-24131.log +19 -0
  111. data/spec/support/logs/Dispatcher - 3139-17731.log +21 -0
  112. data/spec/support/logs/Dispatcher - 3148-33704.log +15 -0
  113. data/spec/support/logs/Dispatcher - 3172-16517.log +21 -0
  114. data/spec/support/logs/Dispatcher - 3181-26384.log +25 -0
  115. data/spec/support/logs/Dispatcher - 3190-37513.log +15 -0
  116. data/spec/support/logs/Dispatcher - 3232-40996.log +17 -0
  117. data/spec/support/logs/Dispatcher - 3241-14948.log +21 -0
  118. data/spec/support/logs/Dispatcher - 3250-40285.log +13 -0
  119. data/spec/support/logs/Dispatcher - 3263-26987.log +21 -0
  120. data/spec/support/logs/Dispatcher - 3272-2729.log +25 -0
  121. data/spec/support/logs/Dispatcher - 3297-52308.log +15 -0
  122. data/spec/support/logs/Dispatcher - 3335-17008.log +17 -0
  123. data/spec/support/logs/Dispatcher - 3344-33205.log +21 -0
  124. data/spec/support/logs/Dispatcher - 3353-22917.log +13 -0
  125. data/spec/support/logs/Dispatcher - 3367-34935.log +17 -0
  126. data/spec/support/logs/Dispatcher - 3376-35370.log +21 -0
  127. data/spec/support/logs/Dispatcher - 3385-26487.log +13 -0
  128. data/spec/support/logs/Instance - 2588-19460.error.log +314 -0
  129. data/spec/support/logs/Instance - 2861-5917.error.log +314 -0
  130. data/spec/support/logs/Instance - 2893-61274.error.log +413 -0
  131. data/spec/support/logs/Instance - 2913-11030.error.log +312 -0
  132. data/spec/support/logs/Instance - 2919-17549.error.log +314 -0
  133. data/spec/support/logs/Instance - 3054-17565.error.log +312 -0
  134. data/spec/support/servers/modules/audit/file_inclusion.rb +202 -0
  135. data/spec/support/servers/modules/audit/sqli/access +3 -0
  136. data/spec/support/servers/modules/audit/sqli/firebird +1 -0
  137. data/spec/support/servers/modules/audit/sqli/frontbase +1 -0
  138. data/spec/support/servers/modules/audit/sqli/hsqldb +1 -0
  139. data/spec/support/servers/modules/audit/sqli/ingres +3 -0
  140. data/spec/support/servers/modules/audit/sqli/maxdb +2 -0
  141. data/spec/support/servers/modules/audit/sqli/mssql +0 -5
  142. data/spec/support/servers/modules/audit/sqli/oracle +1 -1
  143. data/spec/support/servers/modules/audit/sqli/sybase +3 -0
  144. data/spec/support/servers/modules/recon/localstart_asp.rb +5 -0
  145. data/spec/support/servers/plugins/uncommon_headers.rb +16 -0
  146. metadata +202 -4
  147. data/modules/audit/sqli/regexp_ids.txt +0 -69
  148. data/plugins/redundant_vectors.rb +0 -34
@@ -0,0 +1,312 @@
1
+
2
+ 2013-09-12 19:43:02 +0300 --------------------------------------------------------------------------------
3
+ ENV:
4
+ ---
5
+ !binary "U1NIX0FHRU5UX1BJRA==": !binary |-
6
+ Mzc3Ng==
7
+ !binary "S0RFX01VTFRJSEVBRA==": !binary |-
8
+ ZmFsc2U=
9
+ !binary "cnZtX2Jpbl9wYXRo": !binary |-
10
+ L2hvbWUvemFwb3Rlay8ucnZtL2Jpbg==
11
+ !binary "Tk9LT0dJUklfVVNFX1NZU1RFTV9MSUJSQVJJRVM=": !binary |-
12
+ dHJ1ZQ==
13
+ !binary "R0VNX0hPTUU=": !binary |-
14
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vZ2Vtcw==
15
+ !binary "R1BHX0FHRU5UX0lORk8=": !binary |-
16
+ L3RtcC9ncGctcDloZDRzL1MuZ3BnLWFnZW50OjM3Nzg6MQ==
17
+ !binary "U0hFTEw=": !binary |-
18
+ L2Jpbi9iYXNo
19
+ !binary "VEVSTQ==": !binary |-
20
+ eHRlcm0=
21
+ !binary "WERHX1NFU1NJT05fQ09PS0lF": !binary |-
22
+ ZmNmYzVlNDQxYzcxZjM3YzgzODdjOGI1MDAwMDAwMDMtMTM3NTM5MjM5MS4y
23
+ MjQ2MzEtMjAyNTg2NTc3NA==
24
+ !binary "SVJCUkM=": !binary |-
25
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vdXNyL2xpYi9y
26
+ dWJ5Ly5pcmJyYw==
27
+ !binary "R1RLMl9SQ19GSUxFUw==": !binary |-
28
+ L2V0Yy9ndGstMi4wL2d0a3JjOi9ob21lL3phcG90ZWsvLmd0a3JjLTIuMDov
29
+ aG9tZS96YXBvdGVrLy5rZGUvc2hhcmUvY29uZmlnL2d0a3JjLTIuMA==
30
+ !binary "S09OU09MRV9EQlVTX1NFUlZJQ0U=": !binary |-
31
+ OjEuNjI=
32
+ !binary "S09OU09MRV9QUk9GSUxFX05BTUU=": !binary |-
33
+ U2hlbGw=
34
+ !binary "R1NfTElC": !binary |-
35
+ L2hvbWUvemFwb3Rlay8uZm9udHM=
36
+ !binary "R1RLX1JDX0ZJTEVT": !binary |-
37
+ L2V0Yy9ndGsvZ3RrcmM6L2hvbWUvemFwb3Rlay8uZ3RrcmM6L2hvbWUvemFw
38
+ b3Rlay8ua2RlL3NoYXJlL2NvbmZpZy9ndGtyYw==
39
+ !binary "V0lORE9XSUQ=": !binary |-
40
+ NzEzMDMxOTM=
41
+ !binary "R05PTUVfS0VZUklOR19DT05UUk9M": !binary |-
42
+ L3J1bi91c2VyL3phcG90ZWsva2V5cmluZy1mOFlUOG8=
43
+ !binary "TVlfUlVCWV9IT01F": !binary |-
44
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vdXNyL2xpYi9y
45
+ dWJ5
46
+ !binary "U0hFTExfU0VTU0lPTl9JRA==": !binary |-
47
+ NDdjMDkwOTY5ZmYxNDAwMDllNGIxMjBlZGUxYTNlMzU=
48
+ !binary "R1RLX01PRFVMRVM=": !binary |-
49
+ b3ZlcmxheS1zY3JvbGxiYXI=
50
+ !binary "S0RFX0ZVTExfU0VTU0lPTg==": !binary |-
51
+ dHJ1ZQ==
52
+ !binary "VVNFUg==": !binary |-
53
+ emFwb3Rlaw==
54
+ !binary "TERfTElCUkFSWV9QQVRI": !binary |-
55
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vdXNyL2xpYg==
56
+ !binary "TFNfQ09MT1JT": !binary |-
57
+ cnM9MDpkaT0wMTszNDpsbj0wMTszNjptaD0wMDpwaT00MDszMzpzbz0wMTsz
58
+ NTpkbz0wMTszNTpiZD00MDszMzswMTpjZD00MDszMzswMTpvcj00MDszMTsw
59
+ MTpzdT0zNzs0MTpzZz0zMDs0MzpjYT0zMDs0MTp0dz0zMDs0Mjpvdz0zNDs0
60
+ MjpzdD0zNzs0NDpleD0wMTszMjoqLnRhcj0wMTszMToqLnRnej0wMTszMToq
61
+ LmFyaj0wMTszMToqLnRhej0wMTszMToqLmx6aD0wMTszMToqLmx6bWE9MDE7
62
+ MzE6Ki50bHo9MDE7MzE6Ki50eHo9MDE7MzE6Ki56aXA9MDE7MzE6Ki56PTAx
63
+ OzMxOiouWj0wMTszMToqLmR6PTAxOzMxOiouZ3o9MDE7MzE6Ki5sej0wMTsz
64
+ MToqLnh6PTAxOzMxOiouYnoyPTAxOzMxOiouYno9MDE7MzE6Ki50Yno9MDE7
65
+ MzE6Ki50YnoyPTAxOzMxOioudHo9MDE7MzE6Ki5kZWI9MDE7MzE6Ki5ycG09
66
+ MDE7MzE6Ki5qYXI9MDE7MzE6Ki53YXI9MDE7MzE6Ki5lYXI9MDE7MzE6Ki5z
67
+ YXI9MDE7MzE6Ki5yYXI9MDE7MzE6Ki5hY2U9MDE7MzE6Ki56b289MDE7MzE6
68
+ Ki5jcGlvPTAxOzMxOiouN3o9MDE7MzE6Ki5yej0wMTszMToqLmpwZz0wMTsz
69
+ NToqLmpwZWc9MDE7MzU6Ki5naWY9MDE7MzU6Ki5ibXA9MDE7MzU6Ki5wYm09
70
+ MDE7MzU6Ki5wZ209MDE7MzU6Ki5wcG09MDE7MzU6Ki50Z2E9MDE7MzU6Ki54
71
+ Ym09MDE7MzU6Ki54cG09MDE7MzU6Ki50aWY9MDE7MzU6Ki50aWZmPTAxOzM1
72
+ OioucG5nPTAxOzM1Oiouc3ZnPTAxOzM1Oiouc3Znej0wMTszNToqLm1uZz0w
73
+ MTszNToqLnBjeD0wMTszNToqLm1vdj0wMTszNToqLm1wZz0wMTszNToqLm1w
74
+ ZWc9MDE7MzU6Ki5tMnY9MDE7MzU6Ki5ta3Y9MDE7MzU6Ki53ZWJtPTAxOzM1
75
+ Oioub2dtPTAxOzM1OioubXA0PTAxOzM1OioubTR2PTAxOzM1OioubXA0dj0w
76
+ MTszNToqLnZvYj0wMTszNToqLnF0PTAxOzM1OioubnV2PTAxOzM1Oioud212
77
+ PTAxOzM1OiouYXNmPTAxOzM1Oioucm09MDE7MzU6Ki5ybXZiPTAxOzM1Oiou
78
+ ZmxjPTAxOzM1OiouYXZpPTAxOzM1OiouZmxpPTAxOzM1OiouZmx2PTAxOzM1
79
+ OiouZ2w9MDE7MzU6Ki5kbD0wMTszNToqLnhjZj0wMTszNToqLnh3ZD0wMTsz
80
+ NToqLnl1dj0wMTszNToqLmNnbT0wMTszNToqLmVtZj0wMTszNToqLmF4dj0w
81
+ MTszNToqLmFueD0wMTszNToqLm9ndj0wMTszNToqLm9neD0wMTszNToqLmFh
82
+ Yz0wMDszNjoqLmF1PTAwOzM2OiouZmxhYz0wMDszNjoqLm1pZD0wMDszNjoq
83
+ Lm1pZGk9MDA7MzY6Ki5ta2E9MDA7MzY6Ki5tcDM9MDA7MzY6Ki5tcGM9MDA7
84
+ MzY6Ki5vZ2c9MDA7MzY6Ki5yYT0wMDszNjoqLndhdj0wMDszNjoqLmF4YT0w
85
+ MDszNjoqLm9nYT0wMDszNjoqLnNweD0wMDszNjoqLnhzcGY9MDA7MzY6
86
+ !binary "WENVUlNPUl9TSVpF": !binary |-
87
+ MA==
88
+ !binary "cnZtX3BhdGg=": !binary |-
89
+ L2hvbWUvemFwb3Rlay8ucnZt
90
+ !binary "U1NIX0FVVEhfU09DSw==": !binary |-
91
+ L3RtcC9zc2gtdTNZSWNjY1V2Q29TL2FnZW50LjM3MTA=
92
+ !binary "VVNFUk5BTUU=": !binary |-
93
+ emFwb3Rlaw==
94
+ !binary "U0VTU0lPTl9NQU5BR0VS": !binary |-
95
+ bG9jYWwvem9uc3RlcjpAL3RtcC8uSUNFLXVuaXgvMzg5Myx1bml4L3pvbnN0
96
+ ZXI6L3RtcC8uSUNFLXVuaXgvMzg5Mw==
97
+ !binary "REVGQVVMVFNfUEFUSA==": !binary |-
98
+ L3Vzci9zaGFyZS9nY29uZi9rZGUtcGxhc21hLmRlZmF1bHQucGF0aA==
99
+ !binary "WERHX0NPTkZJR19ESVJT": !binary |-
100
+ L2V0Yy94ZGcveGRnLWtkZS1wbGFzbWE6L2V0Yy94ZGc=
101
+ !binary "cnZtX3ByZWZpeA==": !binary |-
102
+ L2hvbWUvemFwb3Rlaw==
103
+ !binary "REVTS1RPUF9TRVNTSU9O": !binary |-
104
+ a2RlLXBsYXNtYQ==
105
+ !binary "UEFUSA==": !binary |-
106
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vZ2Vtcy9iaW46
107
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vLi4vYmluOi9o
108
+ b21lL3phcG90ZWsvYnVpbGRzL2FyYWNobmkvc3lzdGVtL3Vzci9iaW46L3Vz
109
+ ci9saWIveDg2XzY0LWxpbnV4LWdudS9xdDQvYmluOi91c3IvbG9jYWwvc2Jp
110
+ bjovdXNyL2xvY2FsL2JpbjovdXNyL3NiaW46L3Vzci9iaW46L3NiaW46L2Jp
111
+ bjovdXNyL2dhbWVzOi91c3IvbG9jYWwvZ2FtZXM=
112
+ !binary "UFdE": !binary |-
113
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaQ==
114
+ !binary "S09OU09MRV9EQlVTX1dJTkRPVw==": !binary |-
115
+ L1dpbmRvd3MvMQ==
116
+ !binary "S0RFX1NFU1NJT05fVUlE": !binary |-
117
+ MTAwMA==
118
+ !binary "TEFORw==": !binary |-
119
+ ZW5fVVMuVVRGLTg=
120
+ !binary "R05PTUVfS0VZUklOR19QSUQ=": !binary |-
121
+ MzY5Mg==
122
+ !binary "TUFOREFUT1JZX1BBVEg=": !binary |-
123
+ L3Vzci9zaGFyZS9nY29uZi9rZGUtcGxhc21hLm1hbmRhdG9yeS5wYXRo
124
+ !binary "R0RNX0xBTkc=": !binary |-
125
+ ZW5fVVM=
126
+ !binary "VUJVTlRVX01FTlVQUk9YWQ==": !binary |-
127
+ bGliYXBwbWVudS5zbw==
128
+ !binary "S09OU09MRV9EQlVTX1NFU1NJT04=": !binary |-
129
+ L1Nlc3Npb25zLzIx
130
+ !binary "R0RNU0VTU0lPTg==": !binary |-
131
+ a2RlLXBsYXNtYQ==
132
+ !binary "cnZtX3ZlcnNpb24=": !binary |-
133
+ MS4yMS44IChzdGFibGUp
134
+ !binary "U0hMVkw=": !binary |-
135
+ MQ==
136
+ !binary "SE9NRQ==": !binary |-
137
+ L2hvbWUvemFwb3Rlaw==
138
+ !binary "Q09MT1JGR0JH": !binary |-
139
+ MTU7MA==
140
+ !binary "S0RFX1NFU1NJT05fVkVSU0lPTg==": !binary |-
141
+ NA==
142
+ !binary "TEFOR1VBR0U=": !binary |-
143
+ ZW5fVVM6ZW4=
144
+ !binary "WENVUlNPUl9USEVNRQ==": !binary |-
145
+ b3h5LXdoaXRl
146
+ !binary "RFlMRF9MSUJSQVJZX1BBVEg=": !binary |-
147
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vdXNyL2xpYjo=
148
+ !binary "TE9HTkFNRQ==": !binary |-
149
+ emFwb3Rlaw==
150
+ !binary "R0VNX1BBVEg=": !binary |-
151
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vZ2Vtcw==
152
+ !binary "WERHX0RBVEFfRElSUw==": !binary |-
153
+ L3Vzci9zaGFyZTovdXNyL3NoYXJlL2tkZS1wbGFzbWE6L3Vzci9sb2NhbC9z
154
+ aGFyZS86L3Vzci9zaGFyZS8=
155
+ !binary "REJVU19TRVNTSU9OX0JVU19BRERSRVNT": !binary |-
156
+ dW5peDphYnN0cmFjdD0vdG1wL2RidXMtS2VkQWNjbTVjUyxndWlkPTJkZDcx
157
+ ZWVhM2NkNjAwNGZlOGFlOWQ2NzUxZmFkMjg3
158
+ !binary "TEVTU09QRU4=": !binary |-
159
+ fCAvdXNyL2Jpbi9sZXNzcGlwZSAlcw==
160
+ !binary "VEVYVERPTUFJTg==": !binary |-
161
+ aW0tY29uZmln
162
+ !binary "V0lORE9XUEFUSA==": !binary |-
163
+ Nw==
164
+ !binary "UFJPRklMRUhPTUU=": !binary ""
165
+ !binary "WERHX1JVTlRJTUVfRElS": !binary |-
166
+ L3J1bi91c2VyL3phcG90ZWs=
167
+ !binary "RElTUExBWQ==": !binary |-
168
+ OjE=
169
+ !binary "UVRfUExVR0lOX1BBVEg=": !binary |-
170
+ L2hvbWUvemFwb3Rlay8ua2RlL2xpYi9rZGU0L3BsdWdpbnMvOi91c3IvbGli
171
+ L2tkZTQvcGx1Z2lucy8=
172
+ !binary "WERHX0NVUlJFTlRfREVTS1RPUA==": !binary |-
173
+ S0RF
174
+ !binary "UlVCWUxJQg==": !binary |-
175
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vdXNyL2xpYi9y
176
+ dWJ5Oi9ob21lL3phcG90ZWsvYnVpbGRzL2FyYWNobmkvc3lzdGVtL3Vzci9s
177
+ aWIvcnVieS9zaXRlX3J1YnkvMS45LjE6L2hvbWUvemFwb3Rlay9idWlsZHMv
178
+ YXJhY2huaS9zeXN0ZW0vdXNyL2xpYi9ydWJ5LzEuOS4xOi9ob21lL3phcG90
179
+ ZWsvYnVpbGRzL2FyYWNobmkvc3lzdGVtL3Vzci9saWIvcnVieS8xLjkuMS94
180
+ ODZfNjQtbGludXg6L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0
181
+ ZW0vdXNyL2xpYi9ydWJ5L3NpdGVfcnVieS8xLjkuMS94ODZfNjQtbGludXg=
182
+ !binary "UlVCWV9WRVJTSU9O": !binary |-
183
+ cnVieS0xLjkuMy1wNDQ4
184
+ !binary "TEVTU0NMT1NF": !binary |-
185
+ L3Vzci9iaW4vbGVzc3BpcGUgJXMgJXM=
186
+ !binary "VEVYVERPTUFJTkRJUg==": !binary |-
187
+ L3Vzci9zaGFyZS9sb2NhbGUv
188
+ !binary "WEFVVEhPUklUWQ==": !binary |-
189
+ L3RtcC9rZGUtemFwb3Rlay94YXV0aC0xMDAwLV8x
190
+ !binary "Xw==": !binary |-
191
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vdXNyL2Jpbi9y
192
+ YWtl
193
+ !binary "X09SSUdJTkFMX0dFTV9QQVRI": !binary |-
194
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vZ2Vtcw==
195
+ !binary "QlVORExFX0JJTl9QQVRI": !binary |-
196
+ L2hvbWUvemFwb3Rlay9idWlsZHMvYXJhY2huaS9zeXN0ZW0vZ2Vtcy9nZW1z
197
+ L2J1bmRsZXItMS4zLjUvYmluL2J1bmRsZQ==
198
+ !binary "QlVORExFX0dFTUZJTEU=": !binary |-
199
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9HZW1maWxl
200
+ !binary "UlVCWU9QVA==": !binary |-
201
+ LUkvaG9tZS96YXBvdGVrL2J1aWxkcy9hcmFjaG5pL3N5c3RlbS9nZW1zL2dl
202
+ bXMvYnVuZGxlci0xLjMuNS9saWIgLXJidW5kbGVyL3NldHVw
203
+ --------------------------------------------------------------------------------
204
+ OPTIONS:
205
+ --- !ruby/object:Arachni::Options
206
+ dir:
207
+ root: !binary |-
208
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS8=
209
+ gfx: !binary |-
210
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9nZngv
211
+ conf: !binary |-
212
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9jb25mLw==
213
+ logs: !binary |-
214
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9zcGVjL3N1cHBvcnQv
215
+ bG9ncy8=
216
+ data: !binary |-
217
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9kYXRhLw==
218
+ modules: !binary |-
219
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9zcGVjL3N1cHBvcnQv
220
+ Zml4dHVyZXMvbW9kdWxlcy8=
221
+ reports: !binary |-
222
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9yZXBvcnRzLw==
223
+ plugins: !binary |-
224
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9zcGVjL3N1cHBvcnQv
225
+ Zml4dHVyZXMvcGx1Z2lucy8=
226
+ rpcd_handlers: !binary |-
227
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9ycGNkX2hhbmRsZXJz
228
+ Lw==
229
+ path_extractors: !binary |-
230
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9wYXRoX2V4dHJhY3Rv
231
+ cnMv
232
+ fingerprinters: !binary |-
233
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9zcGVjL3N1cHBvcnQv
234
+ Zml4dHVyZXMvZmluZ2VycHJpbnRlcnMv
235
+ lib: !binary |-
236
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9saWIvYXJhY2huaS8=
237
+ support: !binary |-
238
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9saWIvYXJhY2huaS9z
239
+ dXBwb3J0Lw==
240
+ mixins: !binary |-
241
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9saWIvYXJhY2huaS9t
242
+ aXhpbnMv
243
+ arachni: !binary |-
244
+ L2hvbWUvemFwb3Rlay93b3Jrc3BhY2UvYXJhY2huaS9saWIvYXJhY2huaQ==
245
+ user_agent: Arachni/v0.4.5
246
+ http_timeout: 50000
247
+ datastore:
248
+ :token: !binary |-
249
+ OWUzMjEzY2VkZjRkMjgyNDlmZmZmYzRkN2M2N2JjZTA3OWFiY2U3ZThiOTBm
250
+ YzBlYTlmZjg5NGVmMDhiYTUyNw==
251
+ redundant: {}
252
+ grid_mode:
253
+ https_only: false
254
+ obey_robots_txt: false
255
+ fuzz_methods: false
256
+ audit_cookies_extensively: false
257
+ exclude_binaries: false
258
+ auto_redundant:
259
+ depth_limit:
260
+ link_count_limit:
261
+ redirect_limit: 20
262
+ lsmod: []
263
+ lsrep: []
264
+ http_req_limit: 20
265
+ http_username:
266
+ http_password:
267
+ mods: []
268
+ reports: {}
269
+ exclude: []
270
+ exclude_pages: []
271
+ exclude_cookies: []
272
+ exclude_vectors: []
273
+ include: []
274
+ lsplug: []
275
+ plugins: {}
276
+ rpc_instance_port_range:
277
+ - 1025
278
+ - 65535
279
+ load_profile: []
280
+ restrict_paths: []
281
+ extend_paths: []
282
+ custom_headers: {}
283
+ min_pages_per_instance: 30
284
+ max_slaves: 10
285
+ no_fingerprinting: false
286
+ platforms: []
287
+ spawns: 0
288
+ rpc_address: localhost
289
+ url:
290
+ start_datetime:
291
+ cookies:
292
+ finish_datetime:
293
+ delta_time:
294
+ audit_links:
295
+ audit_forms:
296
+ audit_cookies:
297
+ audit_headers:
298
+ authed_by:
299
+ cookie_jar:
300
+ cookie_string:
301
+ no_protocol_for_url:
302
+ save_profile:
303
+ nickname:
304
+ rpc_port: 17565
305
+ rpc_socket:
306
+ neighbour:
307
+ node_ping_interval:
308
+ pipe_id:
309
+ weight:
310
+ cost:
311
+ --------------------------------------------------------------------------------
312
+ [2013-09-12 19:43:02 +0300] Test
@@ -0,0 +1,202 @@
1
+ require 'sinatra'
2
+ require 'sinatra/contrib'
3
+
4
+ def default
5
+ "default.html"
6
+ end
7
+
8
+ FILE_TO_PLATFORM = {
9
+ '/boot.ini' => :windows,
10
+ '/windows/win.ini' => :windows,
11
+ '/winnt/win.ini' => :windows,
12
+ '/etc/passwd' => :unix,
13
+ '/proc/self/environ' => :unix,
14
+ '/WEB-INF/web.xml' => :tomcat
15
+ }
16
+
17
+ OUT = {
18
+ unix: 'root:x:0:0:root:/root:/bin/bash
19
+ daemon:x:1:1:daemon:/usr/sbin:/bin/sh
20
+ mail:x:8:8:mail:/var/mail:/bin/sh
21
+
22
+ DOCUMENT_ROOT=/home/www/web424/htmlGATEWAY_INTERFACE=CGI/1.1HTTP_ACCEPT=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8HTTP_ACCEPT_ENCODING=gzip, deflateHTTP_ACCEPT_LANGUAGE=en-US,en;q=0.5HTTP_CONNECTION=keep-aliveHTTP_DNT=1HTTP_HOST=www.kaffeehausleclub.deHTTP_USER_AGENT=Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0PATH=/bin:/usr/binPHPRC=/etc/apache2/confixx_php/web424/1QUERY_STRING=inhalt=/proc/self/environREDIRECT_STATUS=200REMOTE_ADDR=79.107.71.228REMOTE_PORT=48720REQUEST_METHOD=GETREQUEST_URI=/inhalt/start.php?inhalt=/proc/self/environSCRIPT_FILENAME=/home/www/web424/html/inhalt/start.phpSCRIPT_NAME=/inhalt/start.phpSERVER_ADDR=87.119.215.14SERVER_ADMIN=[no address given]SERVER_NAME=www.kaffeehausleclub.deSERVER_PORT=80SERVER_PROTOCOL=HTTP/1.1SERVER_SIGNATURE=
23
+ Apache/2.2.16 (Debian) Server at www.kaffeehausleclub.de Port 80
24
+ SERVER_SOFTWARE=Apache/2.2.16 (Debian)UNIQUE_ID=Uf6y2Fd31w4AAHYyW8AAAAAk
25
+ ',
26
+ windows: '[boot loader]
27
+ timeout=30
28
+ default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
29
+ [operating systems]
30
+ multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
31
+
32
+ ; for 16-bit app support
33
+ [fonts]
34
+ [extensions]
35
+ [mci extensions]
36
+ [files]
37
+ [Mail]
38
+ MAPI=1
39
+ CMC=1
40
+ CMCDLLNAME32=mapi32.dll
41
+ CMCDLLNAME=mapi.dll
42
+ MAPIX=1
43
+ ',
44
+ tomcat: '<?xml version="1.0" encoding="UTF-8"?>
45
+ <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
46
+ <display-name>VulnerabilityDetectionChallenge</display-name>
47
+ <welcome-file-list>
48
+ <welcome-file>index.html</welcome-file>
49
+ <welcome-file>index.htm</welcome-file>
50
+ <welcome-file>index.jsp</welcome-file>
51
+ <welcome-file>default.html</welcome-file>
52
+ <welcome-file>default.htm</welcome-file>
53
+ <welcome-file>default.jsp</welcome-file>
54
+ </welcome-file-list>
55
+
56
+ <!-- Define a Security Constraint on this Application -->
57
+ <security-constraint>
58
+ <web-resource-collection>
59
+ <web-resource-name>Weak authentication - basic</web-resource-name>
60
+ <url-pattern>/passive/session/weak-authentication-basic.jsp</url-pattern>
61
+ </web-resource-collection>
62
+ <auth-constraint>
63
+ <role-name>tomcat</role-name>
64
+ <role-name>role1</role-name>
65
+ </auth-constraint>
66
+ </security-constraint>
67
+
68
+ <!-- Define the Login Configuration for this Application -->
69
+ <login-config>
70
+ <auth-method>BASIC</auth-method>
71
+ <realm-name>Application</realm-name>
72
+ <!--realm-name>Weak authentication - basic</realm-name-->
73
+ </login-config>
74
+
75
+ <!-- Security roles referenced by this web application -->
76
+ <security-role>
77
+ <description>
78
+ The role that is required to access protected pages
79
+ </description>
80
+ <role-name>tomcat</role-name>
81
+ </security-role>
82
+
83
+ <security-role>
84
+ <description>
85
+ The role that is required to access protected pages
86
+ </description>
87
+ <role-name>role1</role-name>
88
+ </security-role>
89
+ ',
90
+ php: '
91
+ An error occurred in script,
92
+ Failed opening \'stuff\' for inclusion,
93
+ Failed opening required,
94
+ failed to open stream: stuff,
95
+ <b>Warning<b>: file,
96
+ <b>Warning<b>: read_file,
97
+ <b>Warning<b>: highlight_file,
98
+ <b>Warning<b>: show_source
99
+ ',
100
+ perl: '
101
+ in stuff at stuff line 10.'
102
+ }
103
+
104
+ def get_variations( system, str )
105
+ return if !str
106
+ str = str.split( "\0" ).first
107
+ str = str.split( 'file:/' ).last
108
+ str = str.split( 'c:' ).last
109
+ file = File.expand_path( str ).gsub( /\/+/, '/' )
110
+
111
+ return if system != FILE_TO_PLATFORM[file] && system != :php && system != :perl
112
+
113
+ OUT[FILE_TO_PLATFORM[file]]
114
+ end
115
+
116
+ OUT.keys.each do |system|
117
+ system_str = system.to_s
118
+
119
+ get '/' + system_str do
120
+ <<-EOHTML
121
+ <a href="/#{system_str}/link?input=default">Link</a>
122
+ <a href="/#{system_str}/form">Form</a>
123
+ <a href="/#{system_str}/cookie">Cookie</a>
124
+ <a href="/#{system_str}/header">Header</a>
125
+ EOHTML
126
+ end
127
+
128
+ get "/#{system_str}/link" do
129
+ <<-EOHTML
130
+ <a href="/#{system_str}/link/straight?input=#{default}">Link</a>
131
+ <a href="/#{system_str}/link/with_null?input=#{default}">Link</a>
132
+ EOHTML
133
+ end
134
+
135
+ get "/#{system_str}/link/straight" do
136
+ return if params['input'].start_with?( default ) || params['input'].include?( "\0" )
137
+ get_variations( system, params['input'] )
138
+ end
139
+
140
+ get "/#{system_str}/link/with_null" do
141
+ return if !params['input'].end_with?( "\00.html" )
142
+ get_variations( system, params['input'].split( "\0.html" ).first )
143
+ end
144
+
145
+ get "/#{system_str}/form" do
146
+ <<-EOHTML
147
+ <form action="/#{system_str}/form/straight" method='post'>
148
+ <input name='input' value='#{default}' />
149
+ </form>
150
+
151
+ <form action="/#{system_str}/form/with_null" method='post'>
152
+ <input name='input' value='#{default}' />
153
+ </form>
154
+
155
+ EOHTML
156
+ end
157
+
158
+ post "/#{system_str}/form/straight" do
159
+ return if params['input'].start_with?( default ) || params['input'].include?( "\0" )
160
+ get_variations( system, params['input'] )
161
+ end
162
+
163
+ post "/#{system_str}/form/with_null" do
164
+ return if !params['input'].end_with?( "\00.html" )
165
+ get_variations( system, params['input'].split( "\0.html" ).first )
166
+ end
167
+
168
+ get "/#{system_str}/cookie" do
169
+ <<-HTML
170
+ <a href="/#{system_str}/cookie/straight">Cookie</a>
171
+ HTML
172
+ end
173
+
174
+ get "/#{system_str}/cookie/straight" do
175
+ cookies['cookie'] ||= default
176
+ return if cookies['cookie'].start_with?( default )
177
+
178
+ get_variations( system, cookies['cookie'] )
179
+ end
180
+
181
+ get "/#{system_str}/header" do
182
+ <<-EOHTML
183
+ <a href="/#{system_str}/header/straight">Header</a>
184
+ <a href="/#{system_str}/header/with_null">Header</a>
185
+ EOHTML
186
+ end
187
+
188
+ get "/#{system_str}/header/straight" do
189
+ default = 'arachni_user'
190
+ return if env['HTTP_USER_AGENT'].start_with?( default ) || env['HTTP_USER_AGENT'].include?( "\0" )
191
+
192
+ get_variations( system, env['HTTP_USER_AGENT'] )
193
+ end
194
+
195
+ get "/#{system_str}/header/with_null" do
196
+ default = 'arachni_user'
197
+ return if !env['HTTP_USER_AGENT'].end_with?( "\00.html" )
198
+
199
+ get_variations( system, env['HTTP_USER_AGENT'] )
200
+ end
201
+
202
+ end