Compare commits
604 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
16c7edb0f1 | ||
|
|
65cf4a0336 | ||
|
|
89dcf33a6e | ||
|
|
d4758bd22f | ||
|
|
a391453213 | ||
|
|
e18f2c9988 | ||
|
|
4e06939463 | ||
|
|
f833181d81 | ||
|
|
f16692e3ae | ||
|
|
d02108ece2 | ||
|
|
71b056a1b5 | ||
|
|
cc0ce769b7 | ||
|
|
43c7586b61 | ||
|
|
cfa222c3b6 | ||
|
|
30709091b3 | ||
|
|
5c93540f91 | ||
|
|
bf8b1e92fa | ||
|
|
c00576e06d | ||
|
|
7f9b49059b | ||
|
|
c292c4ba9e | ||
|
|
46570ecc2b | ||
|
|
ed7e352d3a | ||
|
|
5e38d68adb | ||
|
|
32cb6f86f4 | ||
|
|
ab16368b09 | ||
|
|
804db84b9a | ||
|
|
48ad1a9af2 | ||
|
|
8014093d33 | ||
|
|
d7f6389ca8 | ||
|
|
6ecd538364 | ||
|
|
f58794f797 | ||
|
|
fe71c2e543 | ||
|
|
02a013bdfa | ||
|
|
098e75f12d | ||
|
|
dd7c793966 | ||
|
|
a4662d0519 | ||
|
|
a7d64b0e1d | ||
|
|
02545340f0 | ||
|
|
58ebf4786d | ||
|
|
843f783a7a | ||
|
|
5e6efb4cb7 | ||
|
|
b6cc3400e8 | ||
|
|
39724afc81 | ||
|
|
47f2545a50 | ||
|
|
01c45afa10 | ||
|
|
b14ded2994 | ||
|
|
c751009130 | ||
|
|
7122ca872a | ||
|
|
a825774341 | ||
|
|
cfc53f67f9 | ||
|
|
24466b779b | ||
|
|
ce6881fdc7 | ||
|
|
9de59d7243 | ||
|
|
71b821a653 | ||
|
|
17fec7a161 | ||
|
|
99181a3bd9 | ||
|
|
529660e622 | ||
|
|
16ba490f3f | ||
|
|
73af9b2922 | ||
|
|
0d80c1dc06 | ||
|
|
942676a493 | ||
|
|
6e16ae32cf | ||
|
|
4f441d2b40 | ||
|
|
e4c93e2707 | ||
|
|
916ce80869 | ||
|
|
1ac72096af | ||
|
|
81e3ff6dc0 | ||
|
|
ac9647d2b2 | ||
|
|
81d17639eb | ||
|
|
924770f73e | ||
|
|
383b2ad563 | ||
|
|
aca4d8ac50 | ||
|
|
9fb0597a3e | ||
|
|
5921458fc4 | ||
|
|
fb921f8f78 | ||
|
|
93597fe3ac | ||
|
|
42576a9c7e | ||
|
|
7b26d0e105 | ||
|
|
10323a59af | ||
|
|
95755f8d46 | ||
|
|
a7d9927584 | ||
|
|
ac1228d97c | ||
|
|
fa9f4c0ab7 | ||
|
|
77ee2494f0 | ||
|
|
30e4fe2671 | ||
|
|
5f2edac86a | ||
|
|
bc14c6d040 | ||
|
|
803a5a7409 | ||
|
|
dcc443ac9a | ||
|
|
6fedeffe03 | ||
|
|
392283d786 | ||
|
|
0c406d72f6 | ||
|
|
bec7b5ed22 | ||
|
|
7ddbae4144 | ||
|
|
96b6e5db87 | ||
|
|
be3937c361 | ||
|
|
f2430171c6 | ||
|
|
e148933c11 | ||
|
|
4bd0999c2e | ||
|
|
40f1fd5c4b | ||
|
|
5bbe846adb | ||
|
|
bb3ed08614 | ||
|
|
2d5a77060e | ||
|
|
9f06b61e9f | ||
|
|
32588554da | ||
|
|
c7c1c1d3e7 | ||
|
|
a8d99ac61b | ||
|
|
56b983db45 | ||
|
|
6e10bfceb2 | ||
|
|
a64a1d6a7c | ||
|
|
10cb883904 | ||
|
|
a57340059d | ||
|
|
19f9bda237 | ||
|
|
7288c82994 | ||
|
|
ee06694b81 | ||
|
|
62e84cc88c | ||
|
|
42b94ab0c3 | ||
|
|
5c4ce81793 | ||
|
|
35a75739e6 | ||
|
|
706774bf61 | ||
|
|
b123317fcc | ||
|
|
45d642d215 | ||
|
|
88611ad3e8 | ||
|
|
edf2ac481b | ||
|
|
49883bbc3a | ||
|
|
bf3795bced | ||
|
|
6dee0c7e4b | ||
|
|
d0c57e7cff | ||
|
|
986e3e5960 | ||
|
|
2c97f68726 | ||
|
|
5a7ab231be | ||
|
|
246970c525 | ||
|
|
65e9339740 | ||
|
|
52f6de1962 | ||
|
|
3a085e364e | ||
|
|
f5204a7efa | ||
|
|
45db305d44 | ||
|
|
9e2a327ca6 | ||
|
|
68698847f8 | ||
|
|
8ef89f193a | ||
|
|
d35b83518e | ||
|
|
d657c4d4b3 | ||
|
|
29f340ae21 | ||
|
|
7ed351bc28 | ||
|
|
ecf4005339 | ||
|
|
66fa24130b | ||
|
|
bd53f8e07f | ||
|
|
8598101760 | ||
|
|
596a25678f | ||
|
|
d94714b335 | ||
|
|
aa8aa3aad9 | ||
|
|
b15635ebc2 | ||
|
|
6ad0f0f08d | ||
|
|
587f6adaa1 | ||
|
|
c3f31e2aee | ||
|
|
6fe3bafd4d | ||
|
|
83f9312b35 | ||
|
|
9605594d8f | ||
|
|
ad18788c83 | ||
|
|
ec4f7d1638 | ||
|
|
920a900e90 | ||
|
|
7f6cd57e51 | ||
|
|
b01559ce52 | ||
|
|
f5fa36f2fd | ||
|
|
db82b2584c | ||
|
|
9e87d1f4d5 | ||
|
|
b72ce7caf5 | ||
|
|
9654408ae8 | ||
|
|
9d6e50c8e2 | ||
|
|
f711c2098b | ||
|
|
af66a4bf48 | ||
|
|
ff9dd1c69d | ||
|
|
27b6e15e11 | ||
|
|
2d3cfb2952 | ||
|
|
ed3c05c13d | ||
|
|
4d7680959e | ||
|
|
1cf9983ce7 | ||
|
|
8daa1c8c31 | ||
|
|
6d4e69050e | ||
|
|
6ffc66362e | ||
|
|
8df95035da | ||
|
|
bdc60cbb97 | ||
|
|
b24075791d | ||
|
|
d469a94cf2 | ||
|
|
26d8398fcc | ||
|
|
73198fdcec | ||
|
|
19dd9d26b4 | ||
|
|
f03ca005c3 | ||
|
|
4b8115978e | ||
|
|
fc2a66ab51 | ||
|
|
2c94454858 | ||
|
|
aa4a636cce | ||
|
|
1c1a6d23d7 | ||
|
|
7549d3778c | ||
|
|
3e3f11a273 | ||
|
|
c6cae028e4 | ||
|
|
fed48e6c76 | ||
|
|
6432c6e04d | ||
|
|
eb2bc58a59 | ||
|
|
7726b3ae32 | ||
|
|
d0f357332a | ||
|
|
54036d562b | ||
|
|
cfb53e5560 | ||
|
|
90d48feef2 | ||
|
|
8ca50428f1 | ||
|
|
ab36d750f5 | ||
|
|
fccd093ea6 | ||
|
|
5ebbf2392b | ||
|
|
76444d2b3a | ||
|
|
c4985b406d | ||
|
|
053d83df2b | ||
|
|
a1a68dfd11 | ||
|
|
0ba35e41b5 | ||
|
|
9c53273d1c | ||
|
|
971f7e21cc | ||
|
|
ab65571ee5 | ||
|
|
75b3ea0bc4 | ||
|
|
fb95754e65 | ||
|
|
5112bea511 | ||
|
|
584c930858 | ||
|
|
3494bc47cf | ||
|
|
861841ef86 | ||
|
|
556b2f3d21 | ||
|
|
b16ea75dd6 | ||
|
|
db62f6f680 | ||
|
|
9d4481de0d | ||
|
|
db91d5041c | ||
|
|
828f8c48eb | ||
|
|
5bee1f1ffd | ||
|
|
51ad9bd4bd | ||
|
|
1b36a2d2b3 | ||
|
|
d8c7d16879 | ||
|
|
b573b5559f | ||
|
|
2a943dcce8 | ||
|
|
f2dd880fdb | ||
|
|
dfd08e1e66 | ||
|
|
2a349415b8 | ||
|
|
08d073415d | ||
|
|
3de3c8fe8c | ||
|
|
8d549a98c6 | ||
|
|
30d75e9f1e | ||
|
|
76f45f128d | ||
|
|
bb73c66fe6 | ||
|
|
c4881490a0 | ||
|
|
0fc85e212a | ||
|
|
254b4084b7 | ||
|
|
ab51b0536b | ||
|
|
70dc987d45 | ||
|
|
474816762f | ||
|
|
90ade58842 | ||
|
|
f4460f315e | ||
|
|
8adfcf5866 | ||
|
|
06ab77b2fc | ||
|
|
d1ceb9cc72 | ||
|
|
7128cd2844 | ||
|
|
ae4c0c5405 | ||
|
|
27acb896c6 | ||
|
|
95557ce095 | ||
|
|
4a4df8e1c4 | ||
|
|
2cbb48f23f | ||
|
|
61001c2aef | ||
|
|
6b93a0191c | ||
|
|
870201de14 | ||
|
|
2c6ec234ac | ||
|
|
39af0d5541 | ||
|
|
d833940f3b | ||
|
|
e00dddaac6 | ||
|
|
5bfdde158a | ||
|
|
8a26848086 | ||
|
|
c54fb6ee23 | ||
|
|
176bc75a71 | ||
|
|
125f4102bd | ||
|
|
1c3146359e | ||
|
|
c00269c905 | ||
|
|
5cc9df9599 | ||
|
|
a032b7c134 | ||
|
|
115241f16c | ||
|
|
fc75b315f9 | ||
|
|
1f5cb4b0a0 | ||
|
|
55089646c2 | ||
|
|
25915b0cbb | ||
|
|
f704efb2af | ||
|
|
a97f9cd695 | ||
|
|
259004e226 | ||
|
|
7c1241c6f6 | ||
|
|
03f8b02ac1 | ||
|
|
81f9612de2 | ||
|
|
264bc834b5 | ||
|
|
7acea5f4b2 | ||
|
|
9015834b15 | ||
|
|
086e6e86a5 | ||
|
|
d107613e40 | ||
|
|
8896f8bf79 | ||
|
|
6cedd672cb | ||
|
|
3583db6a92 | ||
|
|
faf234b482 | ||
|
|
5ea911c9b3 | ||
|
|
6c008015e9 | ||
|
|
6c8e76060a | ||
|
|
57d0af562e | ||
|
|
94ee5e15ac | ||
|
|
678184e24b | ||
|
|
fa0e4658cb | ||
|
|
7951e442a8 | ||
|
|
3870fc0b2c | ||
|
|
2a9bd99f97 | ||
|
|
de30802491 | ||
|
|
973c0da4f2 | ||
|
|
3a3cbfdf7d | ||
|
|
21663ae519 | ||
|
|
3a53936a88 | ||
|
|
eac24ebbc8 | ||
|
|
9a70b8e2af | ||
|
|
e9374e4fe3 | ||
|
|
5afdbded7e | ||
|
|
3f6087b180 | ||
|
|
1c577084b1 | ||
|
|
a242ca094e | ||
|
|
c3b9611f76 | ||
|
|
d32b20a529 | ||
|
|
f4946525bb | ||
|
|
3eb7639ce7 | ||
|
|
48e6ba4a1c | ||
|
|
41f6cf1463 | ||
|
|
1722025a2c | ||
|
|
697b72836d | ||
|
|
b6777fd0d7 | ||
|
|
6d2165acc3 | ||
|
|
c33e553175 | ||
|
|
ab1381e830 | ||
|
|
669e1458da | ||
|
|
73f42bb73d | ||
|
|
f50a6477bc | ||
|
|
501fbd825a | ||
|
|
02111bf9b4 | ||
|
|
0f7bc49992 | ||
|
|
2fb6f7169a | ||
|
|
95b1264f7f | ||
|
|
fc2ba604ea | ||
|
|
9743f60991 | ||
|
|
7239c8d848 | ||
|
|
bf10b25291 | ||
|
|
3b4790163c | ||
|
|
fd1e0da4df | ||
|
|
57755417f9 | ||
|
|
9caabfd586 | ||
|
|
37bffd6f1c | ||
|
|
99ea17127d | ||
|
|
bb35837ea1 | ||
|
|
f49b53b095 | ||
|
|
e93daabd8b | ||
|
|
6bb6dfff2d | ||
|
|
0f8f49f19c | ||
|
|
85b4f987bb | ||
|
|
a75dae8128 | ||
|
|
f2fc5294e8 | ||
|
|
c81a87d154 | ||
|
|
bc435a6266 | ||
|
|
d3362bac75 | ||
|
|
87d7657dec | ||
|
|
6aa62ce20c | ||
|
|
eb143af967 | ||
|
|
a8c5b68d1a | ||
|
|
698f998307 | ||
|
|
18ed982aea | ||
|
|
7ac467923a | ||
|
|
09e2045b5b | ||
|
|
61b13e4543 | ||
|
|
a436bb059a | ||
|
|
934625905a | ||
|
|
cd4f3103cb | ||
|
|
9cef6612b7 | ||
|
|
fdacd06730 | ||
|
|
1731cc7798 | ||
|
|
55fe1c4115 | ||
|
|
97a2f07f83 | ||
|
|
be154bfed5 | ||
|
|
102585e4c7 | ||
|
|
385b250c01 | ||
|
|
db6a0aa584 | ||
|
|
3363006a83 | ||
|
|
78a24630ac | ||
|
|
5709422978 | ||
|
|
b7d28479e0 | ||
|
|
4594933c93 | ||
|
|
f75bd90fcf | ||
|
|
01ea9657a7 | ||
|
|
b544ee12d9 | ||
|
|
4874d3bfa3 | ||
|
|
a89cc332c3 | ||
|
|
bde27aff7b | ||
|
|
81676bf9ec | ||
|
|
24e039c177 | ||
|
|
837d4c85fd | ||
|
|
6d362a453e | ||
|
|
ff08b5920d | ||
|
|
5b1a8b03b7 | ||
|
|
6a8e14b161 | ||
|
|
6e9922eab2 | ||
|
|
e040d79280 | ||
|
|
7403bd7d16 | ||
|
|
d9dcc73f8b | ||
|
|
d2696a53ef | ||
|
|
cd5b45f98b | ||
|
|
c63beaa35d | ||
|
|
1bcabbad4c | ||
|
|
a669a33774 | ||
|
|
bbefdfc4e5 | ||
|
|
7b2f1d562e | ||
|
|
fc0373fccc | ||
|
|
d6386c05a4 | ||
|
|
fd7017f530 | ||
|
|
8c9d82cb6d | ||
|
|
ebfe2ef08d | ||
|
|
628c9a0f4f | ||
|
|
c217cd7c64 | ||
|
|
47df347b69 | ||
|
|
084c140eb7 | ||
|
|
f5fa5060b6 | ||
|
|
cf7d905d20 | ||
|
|
50808d8ca4 | ||
|
|
e8a81cce4d | ||
|
|
4b34cf90f7 | ||
|
|
7f10462189 | ||
|
|
57f4239832 | ||
|
|
fe5bef0f3b | ||
|
|
46d5dcf8f8 | ||
|
|
5a4dd31ba7 | ||
|
|
7a7450f98e | ||
|
|
42efc9f9ec | ||
|
|
160ee4dcec | ||
|
|
cdd2c96b5e | ||
|
|
cdd74b535b | ||
|
|
b635168fb3 | ||
|
|
3e9c51f18e | ||
|
|
4ce6396e3f | ||
|
|
9c0ce2a1cd | ||
|
|
77ebd9d4fd | ||
|
|
b06dcf555e | ||
|
|
7a963e346a | ||
|
|
ebe35cb7b2 | ||
|
|
a38c709d74 | ||
|
|
dca987b64b | ||
|
|
fb16a8a43d | ||
|
|
3f9be29606 | ||
|
|
e071851271 | ||
|
|
2f7db7312e | ||
|
|
471ebb733c | ||
|
|
5a097d429d | ||
|
|
662d94e958 | ||
|
|
4c57a00660 | ||
|
|
0c8c5e2928 | ||
|
|
4df1c605a2 | ||
|
|
eca90894e0 | ||
|
|
788122c5d6 | ||
|
|
f904c3241a | ||
|
|
3f8bc5e01a | ||
|
|
bb88a1105e | ||
|
|
7143c7ffe9 | ||
|
|
de1bc6a369 | ||
|
|
b1ce7bdcc5 | ||
|
|
da4ee57e58 | ||
|
|
698197248e | ||
|
|
7c2c2305fb | ||
|
|
df5b8b9c35 | ||
|
|
446910767b | ||
|
|
927c37e6db | ||
|
|
6cd349cb24 | ||
|
|
271cd71c20 | ||
|
|
f7a15e67cd | ||
|
|
c570c1798a | ||
|
|
5acaff356f | ||
|
|
4af7a19eb0 | ||
|
|
4f182dc41b | ||
|
|
704c6b1669 | ||
|
|
5d327f5060 | ||
|
|
4ecbf7fe79 | ||
|
|
92d690e357 | ||
|
|
7db63bb3e0 | ||
|
|
777f06608b | ||
|
|
5db00e257b | ||
|
|
1475ba810c | ||
|
|
bdedf6f63f | ||
|
|
3245063a74 | ||
|
|
dc109f12d8 | ||
|
|
1615c0f84e | ||
|
|
2466ca9eb0 | ||
|
|
b9524499bf | ||
|
|
47fb8b9938 | ||
|
|
3525fb87e2 | ||
|
|
2a45878a55 | ||
|
|
333c52ac45 | ||
|
|
3565b25719 | ||
|
|
fecaa613e4 | ||
|
|
748b5d3166 | ||
|
|
e07bb73eeb | ||
|
|
22dc2c175a | ||
|
|
8bee5fcff8 | ||
|
|
2221857199 | ||
|
|
8f8ad708f8 | ||
|
|
e4e506e62d | ||
|
|
38b51d55f4 | ||
|
|
3ce42b641c | ||
|
|
f71d39fe36 | ||
|
|
d87901921a | ||
|
|
0b46f67551 | ||
|
|
d1cfb8287f | ||
|
|
9b0d2784e1 | ||
|
|
d8ff653956 | ||
|
|
a828ee6b1e | ||
|
|
7141c1fb09 | ||
|
|
7cb2c6844f | ||
|
|
31735c4ca7 | ||
|
|
9207493f31 | ||
|
|
794321d925 | ||
|
|
84574533ef | ||
|
|
3af01e7ded | ||
|
|
91f9a1e84f | ||
|
|
86d53c73a8 | ||
|
|
a9b25edafe | ||
|
|
21f5acf62f | ||
|
|
07e5a532c1 | ||
|
|
e65c4f4497 | ||
|
|
f26ece827c | ||
|
|
09c9554e4b | ||
|
|
68876bffb9 | ||
|
|
565bfceb49 | ||
|
|
e33dad8492 | ||
|
|
a7bd5044c4 | ||
|
|
2179dc5066 | ||
|
|
ec9eadda8e | ||
|
|
52c1bd3558 | ||
|
|
1d5e7dccb7 | ||
|
|
99cd96f33c | ||
|
|
e3fbd07e41 | ||
|
|
be0aad2c66 | ||
|
|
65ca256a73 | ||
|
|
da1c556896 | ||
|
|
ba0af6edda | ||
|
|
40f4057d47 | ||
|
|
130a2a44e8 | ||
|
|
1168cf7305 | ||
|
|
d6f18943b7 | ||
|
|
d946ef55a8 | ||
|
|
95041945ff | ||
|
|
2ad2b8866b | ||
|
|
5bb9aa29fa | ||
|
|
276952ffb9 | ||
|
|
2ee2fe494d | ||
|
|
6f49584546 | ||
|
|
e058b204f4 | ||
|
|
d937b20d79 | ||
|
|
af4ecc4084 | ||
|
|
92414d0c2f | ||
|
|
cb9717f6e7 | ||
|
|
a635b3aef6 | ||
|
|
ad6ff2f7f0 | ||
|
|
4d687544d2 | ||
|
|
543a6fbaa2 | ||
|
|
4c5f02865f | ||
|
|
dfcfaa2041 | ||
|
|
d016d33747 | ||
|
|
634a6222f7 | ||
|
|
0db4740a82 | ||
|
|
3201620700 | ||
|
|
17eb43df64 | ||
|
|
08f9d0e67a | ||
|
|
5e36be4f63 | ||
|
|
a795b3b124 | ||
|
|
696a1262a8 | ||
|
|
692c8e27fa | ||
|
|
b6188cb0ba | ||
|
|
28300814f5 | ||
|
|
a298e431cc | ||
|
|
0a50bcadc2 | ||
|
|
de3d62ba92 | ||
|
|
64c3c29597 | ||
|
|
ae61b95707 | ||
|
|
669bb3892e | ||
|
|
c0312bbbe5 | ||
|
|
2f14be09b5 | ||
|
|
9b5ee28f04 | ||
|
|
2043adb76e | ||
|
|
eaffb139ef | ||
|
|
763bd5a10c | ||
|
|
5f7ca09e55 | ||
|
|
eadebd387a | ||
|
|
9434db242b | ||
|
|
97ec9a6aa7 | ||
|
|
7a9a72d285 | ||
|
|
ae6485bfd1 | ||
|
|
19d7c3122d | ||
|
|
ed2eb44b38 | ||
|
|
7c110bf6d3 | ||
|
|
a4656c1837 | ||
|
|
fd4359433c | ||
|
|
8d5ae7f94f | ||
|
|
08e66a86ce | ||
|
|
9525b33988 | ||
|
|
b8ccfa23d9 | ||
|
|
5f584f92a7 | ||
|
|
1adadcb4bb | ||
|
|
2607e91833 | ||
|
|
8bc8d7e7cd |
6
.gitignore
vendored
@@ -1,5 +1,6 @@
|
||||
cache/*
|
||||
cache
|
||||
coverage
|
||||
.bundle
|
||||
.DS_Store
|
||||
.DS_Store?
|
||||
*.sublime-*
|
||||
@@ -7,3 +8,6 @@ coverage
|
||||
.*.swp
|
||||
Gemfile.lock
|
||||
log.txt
|
||||
.yardoc
|
||||
debug.log
|
||||
wordlist.txt
|
||||
|
||||
@@ -3,4 +3,6 @@ SimpleCov.start do
|
||||
add_filter "_helper.rb"
|
||||
add_filter "environment.rb"
|
||||
add_filter "_plugin.rb"
|
||||
add_filter "hacks.rb"
|
||||
add_filter "output.rb"
|
||||
end
|
||||
|
||||
133
CHANGELOG.md
Normal file
@@ -0,0 +1,133 @@
|
||||
# Changelog
|
||||
|
||||
## Version 2.2
|
||||
Released: 2013-11-12
|
||||
|
||||
Added
|
||||
* Output the vulnerability fix if available
|
||||
* Added 'WordPress Version Vulnerability' statistics
|
||||
* Added Kali Linux on the list of pre-installed Linux distributions
|
||||
* Added hosted wordpress detection. See issue #343.
|
||||
* Add detection for all-in-one-seo-pack
|
||||
* Use less memory when brute forcing with a large wordlist
|
||||
* Memory Usage output
|
||||
* Added cve tag to xml file
|
||||
* Add documentation to readme
|
||||
* Add --version switch
|
||||
* Parse robots.txt
|
||||
* Show twitter usernames
|
||||
* Clean logfile on wpstools too
|
||||
* Added pingback header
|
||||
* Request_timeout and connect_timeout implemented
|
||||
* Output interesting http-headers
|
||||
* Kali Linux detection
|
||||
* Ensure that brute forcing results are output even if an error occurs or the user exits
|
||||
* Added debug output
|
||||
* Fixed Version compare for issue #179
|
||||
* Added ruby-progressbar version to Gemfile
|
||||
* Use the redirect_to parameter on bruteforce
|
||||
* Readded "junk removal" from usernames before output
|
||||
* Add license file
|
||||
* Output the timthumb version if found
|
||||
* New enumeration system
|
||||
* More error details for XSD checks
|
||||
* Added default wp-content dir detection, see Issue #141.
|
||||
* Added checks for well formed xml
|
||||
|
||||
Changed
|
||||
* Trying a fix for Kali Linux
|
||||
* Make a seperator between plugin name and vulnerability name
|
||||
* It's WordPress, not Wordpress
|
||||
* Changed wordpress.com scanning error to warning. See issue #343.
|
||||
* Make output lines consistent
|
||||
* Replace packetstormsecurity.org to packetstormsecurity.com
|
||||
* Same URL syntax for all Packet Storm Security URL's
|
||||
* Packet Storm Security URL's don't need the 'friendly part' of the URL. So it can be neglected.
|
||||
* Use online documentation
|
||||
* User prompt on same line
|
||||
* Don't skip passwords that start with a hash. This is fairly common (see RockYou list for example).
|
||||
* Updated Fedora install instructions as per Issue #92
|
||||
* Slight update to security plugin warning. Issue #212.
|
||||
* Ruby-progressbar Gemfile version bump
|
||||
* Fix error with the -U option (undefined method 'merge' for #WpTarget:)
|
||||
* Banner artwork
|
||||
* Fix hacks.rb conflict
|
||||
* Handle when there are 2 headers of the same name
|
||||
* Releasing the Typhoeus version constraint
|
||||
* Amended Arch Linux install instructions. See issue #183.
|
||||
|
||||
Updated
|
||||
* Plugins & Themes updated
|
||||
* Update README.md
|
||||
* Updated documentation
|
||||
|
||||
Removed
|
||||
* Removed 'smileys' in output messages
|
||||
* Removed 'for WordPress' and 'plugin' in title strings.
|
||||
* Removed reference
|
||||
* Removed useless code
|
||||
* Removed duplicate vulnerabilities
|
||||
|
||||
General core
|
||||
* Code cleaning
|
||||
* Fix typo's
|
||||
* Clean up rspecs
|
||||
* Themes & Plugins lists regenerated
|
||||
* Rspecs update
|
||||
* Code Factoring
|
||||
* Added checks for old ruby. Otherwise there will be syntax errors
|
||||
|
||||
Vulnerabilities
|
||||
* Update WordPress Vulnerabilities
|
||||
* Update timthumb due to Secunia #54801
|
||||
* Added WP vuln: 3.4 - 3.5.1 wp-admin/users.php FPD
|
||||
|
||||
WPScan Databse Statistics:
|
||||
* Total vulnerable versions: 76, 4 are new
|
||||
* Total vulnerable plugins: 606, 197 are new
|
||||
* Total vulnerable themes: 194, 45 are new
|
||||
* Total version vulnerabilities: 274, 53 are new
|
||||
* Total plugin vulnerabilities: 764, 270 are new
|
||||
* Total theme vulnerabilities: 198, 46 are new
|
||||
|
||||
Add WP Fingerprints
|
||||
* WP 3.7.1 Fingerprinting
|
||||
* WP 3.7 Fingerprinting
|
||||
* Ref #280 WP 3.6.1 fingerprint
|
||||
* Added WP 3.6 advanced fingerprint hash. See Issue #255.
|
||||
* Updated MD5 hash of WP 3.6 detection. See Issue #277.
|
||||
* WP 3.5.2 Fingerprint
|
||||
* Bug Fix : Wp 3.5 & 3.5.1 not detected from advanced fingerprinting.
|
||||
|
||||
Fixed issues
|
||||
* Fix #249 - [ERROR] "\xF1" on US-ASCII
|
||||
* Fix #275 - [ERROR] "\xC3" on US-ASCII
|
||||
* Fix #271 - Further Instructions added to the Mac Install
|
||||
* Fix #266 - passive detection regex
|
||||
* Fix #265 - remove base64 images before passive detection
|
||||
* Fix #262 - [ERROR] bad component(expected absolute path component)
|
||||
* Fix #260 - Fixes Travis Fail, due to rspec-mock v2.14.3
|
||||
* Fix #208 - Fixed vulnerable plugins still appear in the results
|
||||
* Fix #245 - all theme enumeration error
|
||||
* Fix #241 - Cant convert array to string
|
||||
* Fix #232 - Crash while enumerating usernames
|
||||
* Fix #223 - New wordpress urls for most popular plugins & themes
|
||||
* Fix #177 - Passive Cache plugins detection (no spec)
|
||||
* Fix #169 - False reports
|
||||
* Fix #182 - Remove the progress-bar static length (120), and let it to automatic
|
||||
* Fix #181 - Don't exit if no usernames found during a simple enumeration (but exit if a brute force is asked)
|
||||
* Fix #200 - Log file not recording the list of username retireved
|
||||
* Fix #164 - README.txt detection
|
||||
* Fix #166 - ListGenerator using the old Browser#get method for full generation
|
||||
* Fix #153 - Disable error trace when it's from the main script
|
||||
* Fix #163 - in the proper way
|
||||
* Fix #144 - Use cookie jar to prevent infinite redirections loop
|
||||
* Fix #158 - Add the solution to 'no such file to load -- rubygems' in the README
|
||||
* Fix #152 - invalid ssl_certificate - response code 0
|
||||
* Fix #147 - can't modify frozen string
|
||||
* Fix #140 - xml_rpc_url in the body
|
||||
* Fix #153 - No error trace when 'No argument supplied'
|
||||
|
||||
## Version 2.1
|
||||
Released 2013-3-4
|
||||
|
||||
1
CREDITS
@@ -17,3 +17,4 @@ Callum Pember - Implemented proxy support - callumpember at gmail.com
|
||||
g0tmi1k - Additional timthumb checks + bug reports.
|
||||
Melvin Lammerts - Reported a couple of fake vulnerabilities - melvin at 12k.nl
|
||||
Paolo Perego - @thesp0nge - Basic authentication
|
||||
Peter van der Laan - The Vuln Hunter and Code Cleaner
|
||||
|
||||
10
Gemfile
@@ -1,11 +1,15 @@
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem "typhoeus", "~>0.6.2"
|
||||
# Seg fault in Typhoeus 0.6.3 (and ethon > 0.5.11) with rspec
|
||||
gem "typhoeus", ">=0.6.3"
|
||||
gem "nokogiri"
|
||||
gem "json"
|
||||
gem "terminal-table"
|
||||
gem "ruby-progressbar", ">=1.2.0"
|
||||
|
||||
group :development, :test do
|
||||
gem "webmock", "~>1.9.3"
|
||||
group :test do
|
||||
gem "webmock", ">=1.9.3"
|
||||
gem "simplecov"
|
||||
gem "rspec", :require => "spec"
|
||||
gem "rspec-mocks", "<=2.14.2" # 2.14.3 just messed around :/
|
||||
end
|
||||
|
||||
15
LICENSE
Normal file
@@ -0,0 +1,15 @@
|
||||
WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2012-2013
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
49
README
@@ -32,15 +32,16 @@ ryandewhurst at gmail
|
||||
WPScan comes pre-installed on the following Linux distributions:
|
||||
|
||||
* BackBox Linux
|
||||
* BackTrack Linux (outdated WPScan installed, update needed)
|
||||
* BackTrack Linux
|
||||
* Pentoo
|
||||
* SamuraiWTF
|
||||
|
||||
Prerequisites:
|
||||
|
||||
* Windows not supported
|
||||
* Ruby => 1.9
|
||||
* RubyGems
|
||||
* Ruby >= 1.9.2 - Recommended: 1.9.3
|
||||
* Curl >= 7.21 - Recommended: latest - FYI the 7.29 has a segfault
|
||||
* RubyGems - Recommended: latest
|
||||
* Git
|
||||
|
||||
-> Installing on Debian/Ubuntu:
|
||||
@@ -48,32 +49,34 @@ ryandewhurst at gmail
|
||||
sudo apt-get install libcurl4-gnutls-dev libopenssl-ruby libxml2 libxml2-dev libxslt1-dev ruby-dev
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && bundle install --without test development
|
||||
sudo gem install bundler && bundle install --without test
|
||||
|
||||
-> Installing on Fedora:
|
||||
|
||||
sudo yum install libcurl-devel
|
||||
sudo yum install gcc ruby-devel libxml2 libxml2-devel libxslt libxslt-devel libcurl-devel
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && bundle install --without test development
|
||||
sudo gem install bundler && bundle install --without test
|
||||
|
||||
-> Installing on Archlinux:
|
||||
|
||||
pacman -Sy ruby
|
||||
pacman -Sy libyaml
|
||||
pacman -Syu ruby
|
||||
pacman -Syu libyaml
|
||||
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && bundle install --without test development
|
||||
sudo gem install bundler && bundle install --without test
|
||||
|
||||
gem install typhoeus
|
||||
gem install nokogiri
|
||||
|
||||
-> Installing on Mac OS X:
|
||||
|
||||
Apple Xcode, Command Line Tools and the libffi are needed (to be able to install the FFI gem), See http://stackoverflow.com/questions/17775115/cant-setup-ruby-environment-installing-fii-gem-error
|
||||
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && bundle install --without test development
|
||||
sudo gem install bundler && bundle install --without test
|
||||
|
||||
==KNOWN ISSUES==
|
||||
|
||||
@@ -105,6 +108,12 @@ ryandewhurst at gmail
|
||||
|
||||
See http://vvv.tobiassjosten.net/ruby-on-rails/fixing-readline-for-the-ruby-on-rails-console/ for more details
|
||||
|
||||
- no such file to load -- rubygems
|
||||
Run update-alternatives --config ruby
|
||||
And select your ruby version
|
||||
|
||||
See https://github.com/wpscanteam/wpscan/issues/148
|
||||
|
||||
|
||||
==WPSCAN ARGUMENTS==
|
||||
|
||||
@@ -174,6 +183,22 @@ Enumerate installed plugins...
|
||||
|
||||
ruby wpscan.rb --url www.example.com --enumerate p
|
||||
|
||||
Run all enumeration tools...
|
||||
|
||||
ruby wpscan.rb --url www.example.com --enumerate
|
||||
|
||||
Use custom content directory...
|
||||
|
||||
ruby wpscan.rb -u www.example.com --wp-content-dir custom-content
|
||||
|
||||
Update WPScan...
|
||||
|
||||
ruby wpscan.rb --update
|
||||
|
||||
Debug output...
|
||||
|
||||
ruby wpscan.rb --url www.example.com --debug-output 2>debug.log
|
||||
|
||||
==WPSTOOLS ARGUMENTS==
|
||||
|
||||
--help | -h This help screen.
|
||||
@@ -203,6 +228,10 @@ https://github.com/wpscanteam/wpscan
|
||||
|
||||
https://github.com/wpscanteam/wpscan/issues
|
||||
|
||||
===DEVELOPER DOCUMENTATION===
|
||||
|
||||
http://rdoc.info/github/wpscanteam/wpscan/frames
|
||||
|
||||
===SPONSOR===
|
||||
|
||||
WPScan is sponsored by the RandomStorm Open Source Initiative.
|
||||
|
||||
42
README.md
@@ -1,5 +1,7 @@
|
||||

|
||||
|
||||
[](https://travis-ci.org/wpscanteam/wpscan)
|
||||
|
||||
#### LICENSE
|
||||
|
||||
WPScan - WordPress Security Scanner
|
||||
@@ -25,15 +27,17 @@ ryandewhurst at gmail
|
||||
WPScan comes pre-installed on the following Linux distributions:
|
||||
|
||||
- [BackBox Linux](http://www.backbox.org/)
|
||||
- [BackTrack Linux](http://www.backtrack-linux.org/) (outdated WPScan installed, update needed)
|
||||
- [BackTrack Linux](http://www.backtrack-linux.org/)
|
||||
- [Kali Linux](http://www.kali.org/)
|
||||
- [Pentoo](http://www.pentoo.ch/)
|
||||
- [SamuraiWTF](http://samurai.inguardians.com/)
|
||||
|
||||
Prerequisites:
|
||||
|
||||
- Windows not supported
|
||||
- Ruby => 1.9
|
||||
- RubyGems
|
||||
- Ruby >= 1.9.2 - Recommended: 1.9.3
|
||||
- Curl >= 7.21 - Recommended: latest - FYI the 7.29 has a segfault
|
||||
- RubyGems - Recommended: latest
|
||||
- Git
|
||||
|
||||
*Installing on Debian/Ubuntu:*
|
||||
@@ -44,29 +48,29 @@ Prerequisites:
|
||||
|
||||
```cd wpscan```
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
```sudo gem install bundler && bundle install --without test```
|
||||
|
||||
*Installing on Fedora:*
|
||||
|
||||
```sudo yum install libcurl-devel```
|
||||
```sudo yum install gcc ruby-devel libxml2 libxml2-devel libxslt libxslt-devel libcurl-devel```
|
||||
|
||||
```git clone https://github.com/wpscanteam/wpscan.git```
|
||||
|
||||
```cd wpscan```
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
```sudo gem install bundler && bundle install --without test```
|
||||
|
||||
*Installing on Archlinux:*
|
||||
|
||||
```pacman -Sy ruby```
|
||||
```pacman -Syu ruby```
|
||||
|
||||
```pacman -Sy libyaml```
|
||||
```pacman -Syu libyaml```
|
||||
|
||||
```git clone https://github.com/wpscanteam/wpscan.git```
|
||||
|
||||
```cd wpscan```
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
```sudo gem install bundler && bundle install --without test```
|
||||
|
||||
```gem install typhoeus```
|
||||
|
||||
@@ -74,11 +78,13 @@ Prerequisites:
|
||||
|
||||
*Installing on Mac OSX:*
|
||||
|
||||
Apple Xcode, Command Line Tools and the libffi are needed (to be able to install the FFI gem), See http://stackoverflow.com/questions/17775115/cant-setup-ruby-environment-installing-fii-gem-error
|
||||
|
||||
```git clone https://github.com/wpscanteam/wpscan.git```
|
||||
|
||||
```cd wpscan```
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
```sudo gem install bundler && bundle install --without test```
|
||||
|
||||
#### KNOWN ISSUES
|
||||
|
||||
@@ -116,6 +122,14 @@ Prerequisites:
|
||||
|
||||
See http://vvv.tobiassjosten.net/ruby-on-rails/fixing-readline-for-the-ruby-on-rails-console/ for more details
|
||||
|
||||
- no such file to load -- rubygems
|
||||
|
||||
```update-alternatives --config ruby```
|
||||
|
||||
And select your ruby version
|
||||
|
||||
See https://github.com/wpscanteam/wpscan/issues/148
|
||||
|
||||
#### WPSCAN ARGUMENTS
|
||||
|
||||
--update Update to the latest revision
|
||||
@@ -196,6 +210,10 @@ Update WPScan...
|
||||
|
||||
```ruby wpscan.rb --update```
|
||||
|
||||
Debug output...
|
||||
|
||||
```ruby wpscan.rb --url www.example.com --debug-output 2>debug.log```
|
||||
|
||||
#### WPSTOOLS ARGUMENTS
|
||||
|
||||
--help | -h This help screen.
|
||||
@@ -227,6 +245,10 @@ https://github.com/wpscanteam/wpscan
|
||||
|
||||
https://github.com/wpscanteam/wpscan/issues
|
||||
|
||||
#### DEVELOPER DOCUMENTATION
|
||||
|
||||
http://rdoc.info/github/wpscanteam/wpscan/frames
|
||||
|
||||
#### SPONSOR
|
||||
|
||||
WPScan is sponsored by the [RandomStorm](http://www.randomstorm.com) Open Source Initiative.
|
||||
|
||||
4
cache/.gitignore
vendored
@@ -1,4 +0,0 @@
|
||||
# Ignore everything in this directory
|
||||
*
|
||||
# Except this file
|
||||
!.gitignore
|
||||
@@ -18,6 +18,8 @@
|
||||
|
||||
"request_timeout": 2000, // 2s
|
||||
|
||||
"connect_timeout": 1000, // 1s
|
||||
|
||||
"max_threads": 20,
|
||||
|
||||
// Some user_agents can be found there http://techpatterns.com/downloads/firefox/useragentswitcher.xml (thx to Gianluca Brindisi)
|
||||
|
||||
@@ -1,23 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2012-2013
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<!--
|
||||
Only he following extensions are scanned : js, php, swf, html, htm
|
||||
If you want to add one, modify the variable file_extension_to_scan, line 191 in wpstools.rb
|
||||
|
||||
@@ -1,23 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2012-2013
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
|
||||
<xs:simpleType name="stringtype">
|
||||
@@ -55,4 +37,4 @@
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
</xs:schema>
|
||||
</xs:schema>
|
||||
|
||||
1429
data/plugins.txt
1222
data/theme_vulns.xml
1591
data/themes.txt
1007
data/themes_full.txt
4899
data/timthumbs.txt
@@ -1,23 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2012-2013
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
|
||||
<xs:simpleType name="stringtype">
|
||||
@@ -26,12 +8,22 @@
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="inttype">
|
||||
<xs:restriction base="xs:positiveInteger" />
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="uritype">
|
||||
<xs:restriction base="xs:anyURI">
|
||||
<xs:minLength value="1" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="cvetype">
|
||||
<xs:restriction base="xs:token">
|
||||
<xs:pattern value="[0-9]{4}-[0-9]{4,}"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="typetype">
|
||||
<xs:restriction base="stringtype">
|
||||
<xs:enumeration value="SQLI"/>
|
||||
@@ -44,41 +36,58 @@
|
||||
<xs:enumeration value="UNKNOWN"/>
|
||||
<xs:enumeration value="XSS"/>
|
||||
<xs:enumeration value="CSRF"/>
|
||||
<xs:enumeration value="SSRF"/>
|
||||
<xs:enumeration value="AUTHBYPASS"/>
|
||||
<xs:enumeration value="FPD"/>
|
||||
<xs:enumeration value="XXE"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:complexType name="itemtype">
|
||||
<xs:sequence>
|
||||
<xs:element name="vulnerability" type="vulntype" maxOccurs="unbounded" minOccurs="1" />
|
||||
<xs:sequence minOccurs="1" maxOccurs="unbounded">
|
||||
<xs:element name="vulnerability" type="vulntype" />
|
||||
</xs:sequence>
|
||||
<xs:attribute type="stringtype" name="name" use="required"/>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="wordpresstype">
|
||||
<xs:sequence>
|
||||
<xs:element name="vulnerability" type="vulntype" maxOccurs="unbounded" minOccurs="1" />
|
||||
<xs:sequence minOccurs="1" maxOccurs="unbounded">
|
||||
<xs:element name="vulnerability" type="vulntype"/>
|
||||
</xs:sequence>
|
||||
<xs:attribute type="stringtype" name="version" use="required"/>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="vulntype">
|
||||
<xs:sequence minOccurs="1" maxOccurs="1">
|
||||
<xs:element name="title" type="stringtype"/>
|
||||
<xs:element name="reference" type="uritype" maxOccurs="unbounded" minOccurs="1"/>
|
||||
<xs:element name="metasploit" type="stringtype" maxOccurs="unbounded" minOccurs="0"/>
|
||||
<xs:element name="type" type="typetype"/>
|
||||
<xs:sequence minOccurs="1" maxOccurs="unbounded">
|
||||
<xs:choice>
|
||||
<xs:element name="title" type="stringtype"/>
|
||||
<xs:element name="type" type="typetype"/>
|
||||
<xs:element name="fixed_in" type="stringtype"/>
|
||||
<xs:element name="references" type="referencetype"/>
|
||||
</xs:choice>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="referencetype">
|
||||
<xs:sequence minOccurs="1" maxOccurs="unbounded">
|
||||
<xs:choice>
|
||||
<xs:element name="url" type="uritype" minOccurs="0" maxOccurs="unbounded"/>
|
||||
<xs:element name="cve" type="cvetype" minOccurs="0" maxOccurs="unbounded"/>
|
||||
<xs:element name="secunia" type="inttype" minOccurs="0" maxOccurs="unbounded"/>
|
||||
<xs:element name="osvdb" type="inttype" minOccurs="0" maxOccurs="unbounded"/>
|
||||
<xs:element name="metasploit" type="stringtype" minOccurs="0" maxOccurs="unbounded"/>
|
||||
<xs:element name="exploitdb" type="inttype" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:choice>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:element name="vulnerabilities">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:choice>
|
||||
<xs:element name="plugin" type="itemtype" maxOccurs="unbounded" minOccurs="0"/>
|
||||
<xs:element name="theme" type="itemtype" maxOccurs="unbounded" minOccurs="0"/>
|
||||
<xs:element name="wordpress" type="wordpresstype" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:choice>
|
||||
</xs:complexType>
|
||||
<xs:unique name="uniquePlugin">
|
||||
<xs:selector xpath="plugin"/>
|
||||
@@ -94,4 +103,4 @@
|
||||
</xs:unique>
|
||||
</xs:element>
|
||||
|
||||
</xs:schema>
|
||||
</xs:schema>
|
||||
|
||||
@@ -1,25 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2012-2013
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This file contains identification data to identify WordPress verions.
|
||||
This file contains identification data to identify WordPress versions.
|
||||
http://wordpress.org/download/release-archive/
|
||||
|
||||
Position is important, DO NOT change anything unless you know what you are doing :p
|
||||
@@ -28,7 +10,38 @@
|
||||
<wp-versions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="wp_versions.xsd">
|
||||
|
||||
<file src="wp-includes/js/tiny_mce.js">
|
||||
<file src="wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin_src.js">
|
||||
<hash md5="5d01c0e812cdcd6356b78ee0cb4e5426">
|
||||
<version>3.7.1</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/jquery/jquery.form.js">
|
||||
<hash md5="e5afd8e41d2ec22c19932b068cd90a71">
|
||||
<version>3.7</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-admin/js/common.js">
|
||||
<hash md5="03eaffeef39119f0523a49c7f9767f3b">
|
||||
<version>3.6.1</version>
|
||||
</hash>
|
||||
<hash md5="4516252d47a73630280869994d510180">
|
||||
<version>3.3</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/jquery/jquery.js">
|
||||
<hash md5="9dcde2d5e8aeda556a0c52239fa2f44c">
|
||||
<version>3.6</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/tinymce/tiny_mce.js">
|
||||
<hash md5="eddb5fda74d41dbdac018167536d8d53">
|
||||
<version>3.5.2</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="6e79ab6d786c5c95920064add33ee599">
|
||||
<version>3.5.1</version>
|
||||
</hash>
|
||||
@@ -59,11 +72,9 @@
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/plupload/plupload.js">
|
||||
|
||||
<hash md5="85199c05db63fcb5880de4af8be7b571">
|
||||
<version>3.3.2</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
@@ -89,22 +100,10 @@
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-admin/js/common.js">
|
||||
|
||||
<hash md5="4516252d47a73630280869994d510180">
|
||||
<version>3.3</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/css/admin-bar.css">
|
||||
|
||||
<hash md5="181250fab3a7e2549a7e7fa21c2e6079">
|
||||
<version>3.1</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
|
||||
@@ -1,23 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2012-2013
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
|
||||
<xs:simpleType name="stringtype">
|
||||
@@ -54,4 +36,4 @@
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
</xs:schema>
|
||||
</xs:schema>
|
||||
|
||||
1380
data/wp_vulns.xml
291
doc/Array.html
@@ -1,291 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class Array - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/common_helper.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-_grep_">#_grep_</a>
|
||||
|
||||
<li><a href="#method-i-grep">#grep</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class Array</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-_grep_" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">_grep_</span><span
|
||||
class="method-args">(regexp)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Fix for grep with symbols in ruby <= 1.8.7</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="_grep_-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 111</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">_grep_</span>(<span class="ruby-identifier">regexp</span>)
|
||||
<span class="ruby-identifier">matches</span> = []
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">value</span> = <span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">matches</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">value</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">regexp</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">matches</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- _grep_-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="aliases">
|
||||
Also aliased as: <a href="Array.html#method-i-grep">grep</a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div><!-- _grep_-method -->
|
||||
|
||||
|
||||
<div id="method-i-grep" class="method-detail method-alias">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">grep</span><span
|
||||
class="method-args">(regexp)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="aliases">
|
||||
Alias for: <a href="Array.html#method-i-_grep_">_grep_</a>
|
||||
</div>
|
||||
|
||||
</div><!-- grep-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
756
doc/Browser.html
@@ -1,756 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class Browser - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/browser.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-instance">::instance</a>
|
||||
|
||||
<li><a href="#method-c-reset">::reset</a>
|
||||
|
||||
<li><a href="#method-i-forge_request">#forge_request</a>
|
||||
|
||||
<li><a href="#method-i-get">#get</a>
|
||||
|
||||
<li><a href="#method-i-load_config">#load_config</a>
|
||||
|
||||
<li><a href="#method-i-max_threads-3D">#max_threads=</a>
|
||||
|
||||
<li><a href="#method-i-merge_request_params">#merge_request_params</a>
|
||||
|
||||
<li><a href="#method-i-post">#post</a>
|
||||
|
||||
<li><a href="#method-i-proxy_auth-3D">#proxy_auth=</a>
|
||||
|
||||
<li><a href="#method-i-raise_invalid_proxy_auth_format">#raise_invalid_proxy_auth_format</a>
|
||||
|
||||
<li><a href="#method-i-user_agent">#user_agent</a>
|
||||
|
||||
<li><a href="#method-i-user_agent_mode-3D">#user_agent_mode=</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class Browser</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Constants -->
|
||||
<section id="constants-list" class="section">
|
||||
<h3 class="section-header">Constants</h3>
|
||||
<dl>
|
||||
|
||||
<dt id="ACCESSOR_OPTIONS">ACCESSOR_OPTIONS
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="USER_AGENT_MODES">USER_AGENT_MODES
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
</dl>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-config_file" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">config_file</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-hydra" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">hydra</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-instance" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">instance</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="instance-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 64</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">instance</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">@@instance</span>
|
||||
<span class="ruby-identifier">@@instance</span> = <span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">@@instance</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- instance-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- instance-method -->
|
||||
|
||||
|
||||
<div id="method-c-reset" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">reset</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="reset-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 71</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">reset</span>
|
||||
<span class="ruby-identifier">@@instance</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- reset-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- reset-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-forge_request" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">forge_request</span><span
|
||||
class="method-args">(url, params = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="forge_request-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 178</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">url</span>, <span class="ruby-identifier">params</span> = {})
|
||||
<span class="ruby-constant">Typhoeus</span><span class="ruby-operator">::</span><span class="ruby-constant">Request</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">url</span>.<span class="ruby-identifier">to_s</span>,
|
||||
<span class="ruby-identifier">merge_request_params</span>(<span class="ruby-identifier">params</span>)
|
||||
)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- forge_request-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- forge_request-method -->
|
||||
|
||||
|
||||
<div id="method-i-get" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get</span><span
|
||||
class="method-args">(url, params = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 166</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>, <span class="ruby-identifier">params</span> = {})
|
||||
<span class="ruby-identifier">run_request</span>(
|
||||
<span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">url</span>, <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:method</span> =<span class="ruby-operator">></span> <span class="ruby-value">:get</span>))
|
||||
)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get-method -->
|
||||
|
||||
|
||||
<div id="method-i-load_config" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">load_config</span><span
|
||||
class="method-args">(config_file = nil)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>TODO reload hydra (if the .<a
|
||||
href="Browser.html#method-i-load_config">#load_config</a> is called on a
|
||||
browser object, hydra will not have the new @max_threads and
|
||||
@request_timeout)</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="load_config-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 136</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load_config</span>(<span class="ruby-identifier">config_file</span> = <span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-ivar">@config_file</span> = <span class="ruby-identifier">config_file</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@config_file</span>
|
||||
|
||||
<span class="ruby-identifier">data</span> = <span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-ivar">@config_file</span>))
|
||||
|
||||
<span class="ruby-constant">ACCESSOR_OPTIONS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">option</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">option_name</span> = <span class="ruby-identifier">option</span>.<span class="ruby-identifier">to_s</span>
|
||||
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:"#{option_name}="</span>, <span class="ruby-identifier">data</span>[<span class="ruby-identifier">option_name</span>])
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- load_config-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- load_config-method -->
|
||||
|
||||
|
||||
<div id="method-i-max_threads-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">max_threads=</span><span
|
||||
class="method-args">(max_threads)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="max_threads-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 101</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">max_threads=</span>(<span class="ruby-identifier">max_threads</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">max_threads</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">max_threads</span> <span class="ruby-operator"><=</span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">max_threads</span> = <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@max_threads</span> = <span class="ruby-identifier">max_threads</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- max_threads-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- max_threads-3D-method -->
|
||||
|
||||
|
||||
<div id="method-i-merge_request_params" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">merge_request_params</span><span
|
||||
class="method-args">(params = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="merge_request_params-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 185</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">merge_request_params</span>(<span class="ruby-identifier">params</span> = {})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@proxy</span>
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:proxy</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@proxy</span>)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@proxy_auth</span>
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-ivar">@proxy_auth</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@basic_auth</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">params</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:headers</span>)
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:headers</span> =<span class="ruby-operator">></span> {<span class="ruby-string">'Authorization'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@basic_auth</span>})
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-operator">!</span><span class="ruby-identifier">params</span>[<span class="ruby-value">:headers</span>].<span class="ruby-identifier">has_key?</span>(<span class="ruby-string">'Authorization'</span>)
|
||||
<span class="ruby-identifier">params</span>[<span class="ruby-value">:headers</span>][<span class="ruby-string">'Authorization'</span>] = <span class="ruby-ivar">@basic_auth</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:disable_ssl_host_verification</span>)
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:disable_ssl_host_verification</span> =<span class="ruby-operator">></span> <span class="ruby-keyword">true</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:disable_ssl_peer_verification</span>)
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:disable_ssl_peer_verification</span> =<span class="ruby-operator">></span> <span class="ruby-keyword">true</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">params</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:headers</span>)
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:headers</span> =<span class="ruby-operator">></span> {<span class="ruby-string">'user-agent'</span> =<span class="ruby-operator">></span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">user_agent</span>})
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-operator">!</span><span class="ruby-identifier">params</span>[<span class="ruby-value">:headers</span>].<span class="ruby-identifier">has_key?</span>(<span class="ruby-string">'user-agent'</span>)
|
||||
<span class="ruby-identifier">params</span>[<span class="ruby-value">:headers</span>][<span class="ruby-string">'user-agent'</span>] = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">user_agent</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-comment"># Used to enable the cache system if :cache_timeout > 0</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:cache_timeout</span>)
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:cache_timeout</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@cache_timeout</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">params</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- merge_request_params-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- merge_request_params-method -->
|
||||
|
||||
|
||||
<div id="method-i-post" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">post</span><span
|
||||
class="method-args">(url, params = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="post-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 172</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">post</span>(<span class="ruby-identifier">url</span>, <span class="ruby-identifier">params</span> = {})
|
||||
<span class="ruby-identifier">run_request</span>(
|
||||
<span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">url</span>, <span class="ruby-identifier">params</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:method</span> =<span class="ruby-operator">></span> <span class="ruby-value">:post</span>))
|
||||
)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- post-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- post-method -->
|
||||
|
||||
|
||||
<div id="method-i-proxy_auth-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">proxy_auth=</span><span
|
||||
class="method-args">(auth)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="proxy_auth-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 108</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">proxy_auth=</span>(<span class="ruby-identifier">auth</span>)
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">auth</span>.<span class="ruby-identifier">nil?</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">auth</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">auth</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value">:proxy_username</span>) <span class="ruby-keyword">or</span> <span class="ruby-operator">!</span><span class="ruby-identifier">auth</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value">:proxy_password</span>)
|
||||
<span class="ruby-identifier">raise_invalid_proxy_format</span>()
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@proxy_auth</span> = <span class="ruby-identifier">auth</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">auth</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">matches</span> = <span class="ruby-regexp">%r{([^:]+):(.*)}</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">auth</span>)
|
||||
<span class="ruby-ivar">@proxy_auth</span> = {
|
||||
<span class="ruby-identifier">proxy_username</span><span class="ruby-operator">:</span> <span class="ruby-identifier">matches</span>[<span class="ruby-value">1</span>],
|
||||
<span class="ruby-identifier">proxy_password</span><span class="ruby-operator">:</span> <span class="ruby-identifier">matches</span>[<span class="ruby-value">2</span>]
|
||||
}
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise_invalid_proxy_auth_format</span>()
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise_invalid_proxy_auth_format</span>()
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- proxy_auth-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- proxy_auth-3D-method -->
|
||||
|
||||
|
||||
<div id="method-i-raise_invalid_proxy_auth_format" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">raise_invalid_proxy_auth_format</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="raise_invalid_proxy_auth_format-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 130</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">raise_invalid_proxy_auth_format</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Invalid proxy auth format, expected username:password or {proxy_username: username, proxy_password: password}'</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- raise_invalid_proxy_auth_format-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- raise_invalid_proxy_auth_format-method -->
|
||||
|
||||
|
||||
<div id="method-i-user_agent" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">user_agent</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>return the user agent, according to the user_agent_mode</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="user_agent-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 89</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">user_agent</span>
|
||||
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@user_agent_mode</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'semi-static'</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@user_agent</span>
|
||||
<span class="ruby-ivar">@user_agent</span> = <span class="ruby-ivar">@available_user_agents</span>.<span class="ruby-identifier">sample</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'random'</span>
|
||||
<span class="ruby-ivar">@user_agent</span> = <span class="ruby-ivar">@available_user_agents</span>.<span class="ruby-identifier">sample</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@user_agent</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- user_agent-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- user_agent-method -->
|
||||
|
||||
|
||||
<div id="method-i-user_agent_mode-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">user_agent_mode=</span><span
|
||||
class="method-args">(ua_mode)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="user_agent_mode-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/browser.rb, line 75</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">user_agent_mode=</span>(<span class="ruby-identifier">ua_mode</span>)
|
||||
<span class="ruby-identifier">ua_mode</span> <span class="ruby-operator">||=</span> <span class="ruby-string">'static'</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-constant">USER_AGENT_MODES</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">ua_mode</span>)
|
||||
<span class="ruby-ivar">@user_agent_mode</span> = <span class="ruby-identifier">ua_mode</span>
|
||||
<span class="ruby-comment"># For semi-static user agent mode, the user agent has to</span>
|
||||
<span class="ruby-comment"># be nil the first time (it will be set with the getter)</span>
|
||||
<span class="ruby-ivar">@user_agent</span> = <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">ua_mode</span> <span class="ruby-operator">===</span> <span class="ruby-string">'semi-static'</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Unknow user agent mode : '#{ua_mode}'"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- user_agent_mode-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- user_agent_mode-3D-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,375 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module BruteForce - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/brute_force.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-lines_in_file">::lines_in_file</a>
|
||||
|
||||
<li><a href="#method-i-brute_force">#brute_force</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module BruteForce</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-lines_in_file" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">lines_in_file</span><span
|
||||
class="method-args">(file_path)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Counts the number of lines in the wordlist It can take a couple of minutes
|
||||
on large wordlists, although bareable.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="lines_in_file-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/brute_force.rb, line 117</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">lines_in_file</span>(<span class="ruby-identifier">file_path</span>)
|
||||
<span class="ruby-identifier">lines</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">file_path</span>, <span class="ruby-string">'r'</span>).<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">_</span><span class="ruby-operator">|</span> <span class="ruby-identifier">lines</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span> }
|
||||
<span class="ruby-identifier">lines</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- lines_in_file-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- lines_in_file-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-brute_force" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">brute_force</span><span
|
||||
class="method-args">(logins, wordlist_path, options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>param array of string logins param string wordlist_path param hash options</p>
|
||||
|
||||
<pre>boolean :show_progression If true, will output the details (Sucess, error etc)</pre>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="brute_force-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/brute_force.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">brute_force</span>(<span class="ruby-identifier">logins</span>, <span class="ruby-identifier">wordlist_path</span>, <span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-identifier">hydra</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">hydra</span>
|
||||
<span class="ruby-identifier">number_of_passwords</span> = <span class="ruby-constant">BruteForce</span>.<span class="ruby-identifier">lines_in_file</span>(<span class="ruby-identifier">wordlist_path</span>)
|
||||
<span class="ruby-identifier">login_url</span> = <span class="ruby-identifier">login_url</span>()
|
||||
<span class="ruby-identifier">found</span> = []
|
||||
<span class="ruby-identifier">show_progression</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:show_progression</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword">false</span>
|
||||
|
||||
<span class="ruby-identifier">logins</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">login</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">request_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">password_found</span> = <span class="ruby-keyword">false</span>
|
||||
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">wordlist_path</span>, <span class="ruby-string">'r'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">password</span><span class="ruby-operator">|</span>
|
||||
|
||||
<span class="ruby-comment"># ignore file comments, but will miss passwords if they start with a hash...</span>
|
||||
<span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">password</span>[<span class="ruby-value">0</span>, <span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'#'</span>
|
||||
|
||||
<span class="ruby-comment"># keep a count of the amount of requests to be sent</span>
|
||||
<span class="ruby-identifier">request_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">queue_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
|
||||
<span class="ruby-comment"># create local vars for on_complete call back, Issue 51.</span>
|
||||
<span class="ruby-identifier">username</span> = <span class="ruby-identifier">login</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">!=</span> <span class="ruby-string">'empty'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">login</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">login</span>.<span class="ruby-identifier">nickname</span> <span class="ruby-comment"># Issue #66</span>
|
||||
<span class="ruby-identifier">password</span> = <span class="ruby-identifier">password</span>
|
||||
|
||||
<span class="ruby-comment"># the request object</span>
|
||||
<span class="ruby-identifier">request</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">login_url</span>,
|
||||
{
|
||||
<span class="ruby-identifier">method</span><span class="ruby-operator">:</span> <span class="ruby-value">:post</span>,
|
||||
<span class="ruby-identifier">params</span><span class="ruby-operator">:</span> { <span class="ruby-identifier">log</span><span class="ruby-operator">:</span> <span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-identifier">encode</span>(<span class="ruby-identifier">username</span>), <span class="ruby-identifier">pwd</span><span class="ruby-operator">:</span> <span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-identifier">encode</span>(<span class="ruby-identifier">password</span>) },
|
||||
<span class="ruby-identifier">cache_timeout</span><span class="ruby-operator">:</span> <span class="ruby-value">0</span>
|
||||
}
|
||||
)
|
||||
|
||||
<span class="ruby-comment"># tell hydra what to do when the request completes</span>
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">on_complete</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"\n Trying Username : #{username} Password : #{password}"</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rlogin_error/</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">"\nIncorrect username and/or password."</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">302</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">"\n "</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">green</span>(<span class="ruby-string">'[SUCCESS]'</span>) <span class="ruby-operator">+</span> <span class="ruby-node">" Username : #{username} Password : #{password}\n"</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">show_progression</span>
|
||||
<span class="ruby-identifier">found</span> <span class="ruby-operator"><<</span> { <span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">username</span>, <span class="ruby-identifier">password</span><span class="ruby-operator">:</span> <span class="ruby-identifier">password</span> }
|
||||
<span class="ruby-identifier">password_found</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">timed_out?</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">red</span>(<span class="ruby-string">'ERROR:'</span>) <span class="ruby-operator">+</span> <span class="ruby-string">' Request timed out.'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">show_progression</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">red</span>(<span class="ruby-string">'ERROR:'</span>) <span class="ruby-operator">+</span> <span class="ruby-string">' No response from remote server. WAF/IPS?'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">show_progression</span>
|
||||
<span class="ruby-comment"># code is a fixnum, needs a string for regex</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r^50/</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">red</span>(<span class="ruby-string">'ERROR:'</span>) <span class="ruby-operator">+</span> <span class="ruby-string">' Server error, try reducing the number of threads.'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">show_progression</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">"\n"</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">red</span>(<span class="ruby-string">'ERROR:'</span>) <span class="ruby-operator">+</span> <span class="ruby-node">" We recieved an unknown response for #{password}..."</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">show_progression</span>
|
||||
|
||||
<span class="ruby-comment"># HACK to get the coverage :/ (otherwise some output is present in the rspec)</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">red</span>(<span class="ruby-node">"Code: #{response.code.to_s}"</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">red</span>(<span class="ruby-node">"Body: #{response.body}"</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-comment"># move onto the next username if we have found a valid password</span>
|
||||
<span class="ruby-keyword">break</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">password_found</span>
|
||||
|
||||
<span class="ruby-comment"># queue the request to be sent later</span>
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">queue</span>(<span class="ruby-identifier">request</span>)
|
||||
|
||||
<span class="ruby-comment"># progress indicator</span>
|
||||
<span class="ruby-identifier">print</span> <span class="ruby-node">"\r Brute forcing user '#{username}' with #{number_of_passwords} passwords... #{(request_count * 100) / number_of_passwords}% complete."</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">show_progression</span>
|
||||
|
||||
<span class="ruby-comment"># it can take a long time to queue 2 million requests,</span>
|
||||
<span class="ruby-comment"># for that reason, we queue @threads, send @threads, queue @threads and so on.</span>
|
||||
<span class="ruby-comment"># hydra.run only returns when it has recieved all of its,</span>
|
||||
<span class="ruby-comment"># responses. This means that while we are waiting for @threads,</span>
|
||||
<span class="ruby-comment"># responses, we are waiting...</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">queue_count</span> <span class="ruby-operator">>=</span> <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">max_threads</span>
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">run</span>
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"Sent #{Browser.instance.max_threads} requests ..."</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-comment"># run all of the remaining requests</span>
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">run</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">found</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- brute_force-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- brute_force-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
182
doc/CREDITS.html
@@ -1,182 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>CREDITS - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body class="file">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation" class="description">
|
||||
|
||||
<p>*<strong><a href="CREDITS.html">CREDITS</a></strong>*</p>
|
||||
|
||||
<p>This file is to give credit to WPScan’s contributors. If you feel your name
|
||||
should be in here, email ryandewhurst at gmail.</p>
|
||||
|
||||
<p>*WPScan Team*</p>
|
||||
|
||||
<p>Erwan.LR - @erwan_lr - (Project Developer) Christian Mehlmauer -
|
||||
@<em>FireFart</em> - (Project Developer) Gianluca Brindisi - @gbrindisi
|
||||
(Project Developer) Ryan Dewhurst - @ethicalhack3r (Project Lead)</p>
|
||||
|
||||
<p>*Other Contributors*</p>
|
||||
|
||||
<p>Alip AKA Undead - alip.aswalid at gmail.com michee08 - Reported and gave
|
||||
potential solutions to bugs. Callum Pember - Implemented proxy support -
|
||||
callumpember at gmail.com g0tmi1k - Additional timthumb checks + bug
|
||||
reports. Melvin Lammerts - Reported a couple of fake vulnerabilities -
|
||||
melvin at 12k.nl Paolo Perego - @thesp0nge - Basic authentification</p>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,442 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class CacheFileStore - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/cache_file_store.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-clean">#clean</a>
|
||||
|
||||
<li><a href="#method-i-get_entry_file_path">#get_entry_file_path</a>
|
||||
|
||||
<li><a href="#method-i-read_entry">#read_entry</a>
|
||||
|
||||
<li><a href="#method-i-write_entry">#write_entry</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class CacheFileStore</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-serializer" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">serializer</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-storage_path" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">storage_path</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(storage_path, serializer = Marshal)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>The serializer must have the 2 methods .load and .dump</p>
|
||||
|
||||
<pre>(Marshal and YAML have them)</pre>
|
||||
|
||||
<p>YAML is Human Readable, contrary to Marshal which store in a binary format
|
||||
Marshal does not need any “require”</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/cache_file_store.rb, line 36</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">storage_path</span>, <span class="ruby-identifier">serializer</span> = <span class="ruby-constant">Marshal</span>)
|
||||
<span class="ruby-ivar">@storage_path</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">storage_path</span>)
|
||||
<span class="ruby-ivar">@serializer</span> = <span class="ruby-identifier">serializer</span>
|
||||
|
||||
<span class="ruby-comment"># File.directory? for ruby <= 1.9 otherwise,</span>
|
||||
<span class="ruby-comment"># it makes more sense to do Dir.exist? :/</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-ivar">@storage_path</span>)
|
||||
<span class="ruby-constant">Dir</span>.<span class="ruby-identifier">mkdir</span>(<span class="ruby-ivar">@storage_path</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-clean" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">clean</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="clean-source">
|
||||
<pre><span class="ruby-comment"># File lib/cache_file_store.rb, line 47</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">clean</span>
|
||||
<span class="ruby-constant">Dir</span>[<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-ivar">@storage_path</span>, <span class="ruby-string">'*'</span>)].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">f</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- clean-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- clean-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_entry_file_path" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_entry_file_path</span><span
|
||||
class="method-args">(key)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_entry_file_path-source">
|
||||
<pre><span class="ruby-comment"># File lib/cache_file_store.rb, line 69</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_entry_file_path</span>(<span class="ruby-identifier">key</span>)
|
||||
<span class="ruby-ivar">@storage_path</span> <span class="ruby-operator">+</span> <span class="ruby-string">'/'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">key</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_entry_file_path-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_entry_file_path-method -->
|
||||
|
||||
|
||||
<div id="method-i-read_entry" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">read_entry</span><span
|
||||
class="method-args">(key)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="read_entry-source">
|
||||
<pre><span class="ruby-comment"># File lib/cache_file_store.rb, line 53</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_entry</span>(<span class="ruby-identifier">key</span>)
|
||||
<span class="ruby-identifier">entry_file_path</span> = <span class="ruby-identifier">get_entry_file_path</span>(<span class="ruby-identifier">key</span>)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exists?</span>(<span class="ruby-identifier">entry_file_path</span>)
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-ivar">@serializer</span>.<span class="ruby-identifier">load</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">entry_file_path</span>))
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- read_entry-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- read_entry-method -->
|
||||
|
||||
|
||||
<div id="method-i-write_entry" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">write_entry</span><span
|
||||
class="method-args">(key, data_to_store, cache_timeout)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="write_entry-source">
|
||||
<pre><span class="ruby-comment"># File lib/cache_file_store.rb, line 61</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_entry</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">data_to_store</span>, <span class="ruby-identifier">cache_timeout</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">cache_timeout</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">get_entry_file_path</span>(<span class="ruby-identifier">key</span>), <span class="ruby-string">'w'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">write</span>(<span class="ruby-ivar">@serializer</span>.<span class="ruby-identifier">dump</span>(<span class="ruby-identifier">data_to_store</span>))
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- write_entry-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- write_entry-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,483 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class CheckerPlugin - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpstools/plugins/checker/checker_plugin.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Plugin.html">Plugin</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-check_local_vulnerable_files">#check_local_vulnerable_files</a>
|
||||
|
||||
<li><a href="#method-i-check_vuln_ref_urls">#check_vuln_ref_urls</a>
|
||||
|
||||
<li><a href="#method-i-run">#run</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class CheckerPlugin</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<pre>WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2012-2013
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.</pre>
|
||||
|
||||
<p>++</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/checker/checker_plugin.rb, line 21</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
|
||||
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">author</span><span class="ruby-operator">:</span> <span class="ruby-string">'WPScanTeam - @erwanlr'</span>)
|
||||
|
||||
<span class="ruby-identifier">register_options</span>(
|
||||
[<span class="ruby-string">'--check-vuln-ref-urls'</span>, <span class="ruby-string">'--cvru'</span>, <span class="ruby-string">'Check all the vulnerabilities reference urls for 404'</span>],
|
||||
[<span class="ruby-string">'--check-local-vulnerable-files LOCAL_DIRECTORY'</span>, <span class="ruby-string">'--clvf'</span>, <span class="ruby-string">'Perform a recursive scan in the LOCAL_DIRECTORY to find vulnerable files or shells'</span>]
|
||||
)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-check_local_vulnerable_files" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">check_local_vulnerable_files</span><span
|
||||
class="method-args">(dir_to_scan)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="check_local_vulnerable_files-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/checker/checker_plugin.rb, line 93</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">check_local_vulnerable_files</span>(<span class="ruby-identifier">dir_to_scan</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-constant">Dir</span><span class="ruby-operator">::</span><span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">dir_to_scan</span>)
|
||||
<span class="ruby-identifier">xml_file</span> = <span class="ruby-constant">LOCAL_FILES_FILE</span>
|
||||
<span class="ruby-identifier">local_hashes</span> = {}
|
||||
<span class="ruby-identifier">file_extension_to_scan</span> = <span class="ruby-string">'*.{js,php,swf,html,htm}'</span>
|
||||
|
||||
<span class="ruby-identifier">print</span> <span class="ruby-string">'[+] Generating local hashes ... '</span>
|
||||
|
||||
<span class="ruby-constant">Dir</span>[<span class="ruby-constant">File</span><span class="ruby-operator">::</span><span class="ruby-identifier">join</span>(<span class="ruby-identifier">dir_to_scan</span>, <span class="ruby-string">'**'</span>, <span class="ruby-identifier">file_extension_to_scan</span>)].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">filename</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">sha1sum</span> = <span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">file</span>(<span class="ruby-identifier">filename</span>).<span class="ruby-identifier">hexdigest</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">local_hashes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">sha1sum</span>)
|
||||
<span class="ruby-identifier">local_hashes</span>[<span class="ruby-identifier">sha1sum</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">filename</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">local_hashes</span>[<span class="ruby-identifier">sha1sum</span>] = [<span class="ruby-identifier">filename</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'done.'</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'[+] Checking for vulnerable files ...'</span>
|
||||
|
||||
<span class="ruby-identifier">xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">xml_file</span>)) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">config</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">noblanks</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">xml</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">'//hash'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">sha1sum</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-string">'sha1'</span>).<span class="ruby-identifier">text</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">local_hashes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">sha1sum</span>)
|
||||
<span class="ruby-identifier">local_filenames</span> = <span class="ruby-identifier">local_hashes</span>[<span class="ruby-identifier">sha1sum</span>]
|
||||
<span class="ruby-identifier">vuln_title</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'title'</span>).<span class="ruby-identifier">text</span>
|
||||
<span class="ruby-identifier">vuln_filename</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'file'</span>).<span class="ruby-identifier">text</span>
|
||||
<span class="ruby-identifier">vuln_refrence</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'reference'</span>).<span class="ruby-identifier">text</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">" #{vuln_filename} found :"</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' | Location(s):'</span>
|
||||
<span class="ruby-identifier">local_filenames</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">" | - #{file}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' |'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">" | Title: #{vuln_title}"</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">" | Refrence: #{vuln_refrence}"</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">vuln_refrence</span>.<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'done.'</span>
|
||||
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"The supplied directory '#{dir_to_scan}' does not exist"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- check_local_vulnerable_files-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- check_local_vulnerable_files-method -->
|
||||
|
||||
|
||||
<div id="method-i-check_vuln_ref_urls" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">check_vuln_ref_urls</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="check_vuln_ref_urls-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/checker/checker_plugin.rb, line 40</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">check_vuln_ref_urls</span>
|
||||
<span class="ruby-identifier">vuln_ref_files</span> = [<span class="ruby-constant">PLUGINS_VULNS_FILE</span>, <span class="ruby-constant">THEMES_VULNS_FILE</span>, <span class="ruby-constant">WP_VULNS_FILE</span>]
|
||||
<span class="ruby-identifier">error_codes</span> = [<span class="ruby-value">404</span>, <span class="ruby-value">500</span>, <span class="ruby-value">403</span>]
|
||||
<span class="ruby-identifier">not_found_regexp</span> = <span class="ruby-regexp">%r{No Results Found|error 404|ID Invalid or Not Found}</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'[+] Checking vulnerabilities reference urls'</span>
|
||||
|
||||
<span class="ruby-identifier">vuln_ref_files</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">vuln_ref_file</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">vuln_ref_file</span>)) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">config</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">noblanks</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">urls</span> = []
|
||||
<span class="ruby-identifier">xml</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">'//reference'</span>).<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span> <span class="ruby-identifier">urls</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">text</span> }
|
||||
|
||||
<span class="ruby-identifier">urls</span>.<span class="ruby-identifier">uniq!</span>
|
||||
|
||||
<span class="ruby-identifier">dead_urls</span> = []
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">request_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">browser</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>
|
||||
<span class="ruby-identifier">hydra</span> = <span class="ruby-identifier">browser</span>.<span class="ruby-identifier">hydra</span>
|
||||
<span class="ruby-identifier">number_of_urls</span> = <span class="ruby-identifier">urls</span>.<span class="ruby-identifier">size</span>
|
||||
|
||||
<span class="ruby-identifier">urls</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">url</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">request</span> = <span class="ruby-identifier">browser</span>.<span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">url</span>, { <span class="ruby-identifier">cache_timeout</span><span class="ruby-operator">:</span> <span class="ruby-value">0</span>, <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span> })
|
||||
<span class="ruby-identifier">request_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">on_complete</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">print</span> <span class="ruby-node">"\r [+] Checking #{vuln_ref_file} #{number_of_urls} total ... #{(request_count * 100) / number_of_urls}% complete."</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">error_codes</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>) <span class="ruby-keyword">or</span> <span class="ruby-identifier">not_found_regexp</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
||||
<span class="ruby-identifier">dead_urls</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">url</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">queue</span>(<span class="ruby-identifier">request</span>)
|
||||
<span class="ruby-identifier">queue_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">queue_count</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">browser</span>.<span class="ruby-identifier">max_threads</span>
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">run</span>
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">run</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">dead_urls</span>.<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-identifier">dead_urls</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">url</span><span class="ruby-operator">|</span> <span class="ruby-identifier">puts</span> <span class="ruby-node">" Not Found #{url}"</span> }
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- check_vuln_ref_urls-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- check_vuln_ref_urls-method -->
|
||||
|
||||
|
||||
<div id="method-i-run" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">run</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="run-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/checker/checker_plugin.rb, line 30</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">run</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:check_vuln_ref_urls</span>]
|
||||
<span class="ruby-identifier">check_vuln_ref_urls</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:check_local_vulnerable_files</span>]
|
||||
<span class="ruby-identifier">check_local_vulnerable_files</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:check_local_vulnerable_files</span>])
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- run-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- run-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,474 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class CustomOptionParser - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/common/custom_option_parser.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link">OptionParser
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-c-option_to_symbol">::option_to_symbol</a>
|
||||
|
||||
<li><a href="#method-i-add">#add</a>
|
||||
|
||||
<li><a href="#method-i-add_option">#add_option</a>
|
||||
|
||||
<li><a href="#method-i-results">#results</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class CustomOptionParser</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<pre>WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2012-2013
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.</pre>
|
||||
|
||||
<p>++</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-symbols_used" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">symbols_used</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(banner = nil, width = 32, indent = ' ' * 4)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/custom_option_parser.rb, line 23</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">banner</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">width</span> = <span class="ruby-value">32</span>, <span class="ruby-identifier">indent</span> = <span class="ruby-string">' '</span> * <span class="ruby-value">4</span>)
|
||||
<span class="ruby-ivar">@results</span> = {}
|
||||
<span class="ruby-ivar">@symbols_used</span> = []
|
||||
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">banner</span>, <span class="ruby-identifier">width</span>, <span class="ruby-identifier">indent</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="protected-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-option_to_symbol" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">option_to_symbol</span><span
|
||||
class="method-args">(option)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>param <a href="Array.html">Array</a> option</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="option_to_symbol-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/custom_option_parser.rb, line 73</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">option_to_symbol</span>(<span class="ruby-identifier">option</span>)
|
||||
<span class="ruby-identifier">option_name</span> = <span class="ruby-keyword">nil</span>
|
||||
|
||||
<span class="ruby-identifier">option</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">option_attr</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">option_attr</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r^--/</span>
|
||||
<span class="ruby-identifier">option_name</span> = <span class="ruby-identifier">option_attr</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">option_name</span>
|
||||
<span class="ruby-identifier">option_name</span> = <span class="ruby-identifier">option_name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">%r^--/</span>, <span class="ruby-string">''</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">%r-/</span>, <span class="ruby-string">'_'</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">%r .*$/</span>, <span class="ruby-string">''</span>)
|
||||
<span class="ruby-value">:"#{option_name}"</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Could not find the option name for #{option}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- option_to_symbol-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- option_to_symbol-method -->
|
||||
|
||||
|
||||
</section><!-- protected-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-add" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">add</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>param Array(<a href="Array.html">Array</a>) or <a
|
||||
href="Array.html">Array</a> options</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="add-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/custom_option_parser.rb, line 31</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">option</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">add_option</span>(<span class="ruby-identifier">option</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">add_option</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Options must be at least an Array, or an Array(Array). #{options.class} supplied"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- add-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- add-method -->
|
||||
|
||||
|
||||
<div id="method-i-add_option" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">add_option</span><span
|
||||
class="method-args">(option)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>param <a href="Array.html">Array</a> option</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="add_option-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/custom_option_parser.rb, line 46</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_option</span>(<span class="ruby-identifier">option</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">option</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">option_symbol</span> = <span class="ruby-constant">CustomOptionParser</span><span class="ruby-operator">::</span><span class="ruby-identifier">option_to_symbol</span>(<span class="ruby-identifier">option</span>)
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@symbols_used</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">option_symbol</span>)
|
||||
<span class="ruby-ivar">@symbols_used</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">option_symbol</span>
|
||||
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">on</span>(*<span class="ruby-identifier">option</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-ivar">@results</span>[<span class="ruby-identifier">option_symbol</span>] = <span class="ruby-identifier">arg</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"The option #{option_symbol} is already used !"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"The option must be an array, #{option.class} supplied : '#{option}'"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- add_option-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- add_option-method -->
|
||||
|
||||
|
||||
<div id="method-i-results" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">results</span><span
|
||||
class="method-args">(argv = default_argv)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>return Hash</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="results-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/custom_option_parser.rb, line 65</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">results</span>(<span class="ruby-identifier">argv</span> = <span class="ruby-identifier">default_argv</span>)
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">parse!</span>(<span class="ruby-identifier">argv</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@results</span>.<span class="ruby-identifier">empty?</span>
|
||||
|
||||
<span class="ruby-ivar">@results</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- results-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- results-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
176
doc/Gemfile.html
@@ -1,176 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>Gemfile - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body class="file">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation" class="description">
|
||||
|
||||
<p>source “<a href="https://rubygems.org">rubygems.org</a>”</p>
|
||||
|
||||
<p>gem “typhoeus”, “0.4.2” gem “nokogiri” gem “json”</p>
|
||||
|
||||
<p>group :development, :test do</p>
|
||||
|
||||
<pre class="ruby"><span class="ruby-identifier">gem</span> <span class="ruby-string">"webmock"</span>, <span class="ruby-string">"1.8.11"</span>
|
||||
<span class="ruby-identifier">gem</span> <span class="ruby-string">"simplecov"</span>
|
||||
<span class="ruby-identifier">gem</span> <span class="ruby-string">"rspec"</span>, :<span class="ruby-identifier">require</span> =<span class="ruby-operator">></span> <span class="ruby-string">"spec"</span>
|
||||
</pre>
|
||||
|
||||
<p>end</p>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,518 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class GenerateList - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpstools/plugins/list_generator/generate_list.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-generate_full_list">#generate_full_list</a>
|
||||
|
||||
<li><a href="#method-i-generate_popular_list">#generate_popular_list</a>
|
||||
|
||||
<li><a href="#method-i-get_popular_items">#get_popular_items</a>
|
||||
|
||||
<li><a href="#method-i-save">#save</a>
|
||||
|
||||
<li><a href="#method-i-set_file_name">#set_file_name</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class GenerateList</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<p>This tool generates a list to use for plugin and theme enumeration</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-verbose" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">verbose</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(type, verbose)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>type = themes | plugins</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/generate_list.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">verbose</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rplugins/</span>
|
||||
<span class="ruby-ivar">@type</span> = <span class="ruby-string">'plugin'</span>
|
||||
<span class="ruby-ivar">@svn_url</span> = <span class="ruby-string">'http://plugins.svn.wordpress.org/'</span>
|
||||
<span class="ruby-ivar">@popular_url</span> = <span class="ruby-string">'http://wordpress.org/extend/plugins/browse/popular/'</span>
|
||||
<span class="ruby-ivar">@popular_regex</span> = <span class="ruby-regexp">%r{<h3><a href="http://wordpress.org/extend/plugins/(.+)/">.+</a></h3>}</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rthemes/</span>
|
||||
<span class="ruby-ivar">@type</span> = <span class="ruby-string">'theme'</span>
|
||||
<span class="ruby-ivar">@svn_url</span> = <span class="ruby-string">'http://themes.svn.wordpress.org/'</span>
|
||||
<span class="ruby-ivar">@popular_url</span> = <span class="ruby-string">'http://wordpress.org/extend/themes/browse/popular/'</span>
|
||||
<span class="ruby-ivar">@popular_regex</span> = <span class="ruby-regexp">%r{<h3><a href="http://wordpress.org/extend/themes/(.+)">.+</a></h3>}</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Type #{type} not defined"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@verbose</span> = <span class="ruby-identifier">verbose</span>
|
||||
<span class="ruby-ivar">@browser</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>
|
||||
<span class="ruby-ivar">@hydra</span> = <span class="ruby-ivar">@browser</span>.<span class="ruby-identifier">hydra</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-generate_full_list" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">generate_full_list</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="generate_full_list-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/generate_list.rb, line 69</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">generate_full_list</span>
|
||||
<span class="ruby-identifier">set_file_name</span>(<span class="ruby-value">:full</span>)
|
||||
<span class="ruby-identifier">items</span> = <span class="ruby-constant">SvnParser</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@svn_url</span>).<span class="ruby-identifier">parse</span>
|
||||
<span class="ruby-identifier">save</span> <span class="ruby-identifier">items</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- generate_full_list-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- generate_full_list-method -->
|
||||
|
||||
|
||||
<div id="method-i-generate_popular_list" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">generate_popular_list</span><span
|
||||
class="method-args">(pages)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="generate_popular_list-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/generate_list.rb, line 75</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">generate_popular_list</span>(<span class="ruby-identifier">pages</span>)
|
||||
<span class="ruby-identifier">set_file_name</span>(<span class="ruby-value">:popular</span>)
|
||||
<span class="ruby-identifier">items</span> = <span class="ruby-identifier">get_popular_items</span>(<span class="ruby-identifier">pages</span>)
|
||||
<span class="ruby-identifier">save</span> <span class="ruby-identifier">items</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- generate_popular_list-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- generate_popular_list-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_popular_items" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_popular_items</span><span
|
||||
class="method-args">(pages)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Send a HTTP request to the WordPress most popular theme or plugin webpage
|
||||
parse the response for the names.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_popular_items-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/generate_list.rb, line 83</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_popular_items</span>(<span class="ruby-identifier">pages</span>)
|
||||
<span class="ruby-identifier">found_items</span> = []
|
||||
<span class="ruby-identifier">page_count</span> = <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
|
||||
(<span class="ruby-value">1</span><span class="ruby-operator">...</span>(<span class="ruby-identifier">pages</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>)).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">page</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-comment"># First page has another URL</span>
|
||||
<span class="ruby-identifier">url</span> = (<span class="ruby-identifier">page</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>) <span class="ruby-operator">?</span> <span class="ruby-ivar">@popular_url</span> <span class="ruby-operator">:</span> <span class="ruby-ivar">@popular_url</span> <span class="ruby-operator">+</span> <span class="ruby-string">'page/'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">page</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> <span class="ruby-string">'/'</span>
|
||||
<span class="ruby-identifier">request</span> = <span class="ruby-ivar">@browser</span>.<span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">url</span>)
|
||||
|
||||
<span class="ruby-identifier">queue_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">on_complete</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"[+] Parsing page #{page_count}"</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
<span class="ruby-identifier">page_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-ivar">@popular_regex</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">item</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"[+] Found popular #@type: #{item}"</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@verbose</span>
|
||||
<span class="ruby-identifier">found_items</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">item</span>[<span class="ruby-value">0</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-ivar">@hydra</span>.<span class="ruby-identifier">queue</span>(<span class="ruby-identifier">request</span>)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">queue_count</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@browser</span>.<span class="ruby-identifier">max_threads</span>
|
||||
<span class="ruby-ivar">@hydra</span>.<span class="ruby-identifier">run</span>
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-ivar">@hydra</span>.<span class="ruby-identifier">run</span>
|
||||
|
||||
<span class="ruby-identifier">found_items</span>.<span class="ruby-identifier">sort!</span>
|
||||
<span class="ruby-identifier">found_items</span>.<span class="ruby-identifier">uniq</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_popular_items-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_popular_items-method -->
|
||||
|
||||
|
||||
<div id="method-i-save" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">save</span><span
|
||||
class="method-args">(items)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Save the file</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="save-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/generate_list.rb, line 120</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">save</span>(<span class="ruby-identifier">items</span>)
|
||||
<span class="ruby-identifier">items</span>.<span class="ruby-identifier">sort!</span>
|
||||
<span class="ruby-identifier">items</span>.<span class="ruby-identifier">uniq!</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"[*] We have parsed #{items.length} #@types"</span>
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-ivar">@file_name</span>, <span class="ruby-string">'w'</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-identifier">items</span>) }
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"New #@file_name file created"</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- save-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- save-method -->
|
||||
|
||||
|
||||
<div id="method-i-set_file_name" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">set_file_name</span><span
|
||||
class="method-args">(type)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="set_file_name-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/generate_list.rb, line 44</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">set_file_name</span>(<span class="ruby-identifier">type</span>)
|
||||
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@type</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'plugin'</span>
|
||||
<span class="ruby-keyword">case</span> <span class="ruby-identifier">type</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-value">:full</span>
|
||||
<span class="ruby-ivar">@file_name</span> = <span class="ruby-constant">PLUGINS_FULL_FILE</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-value">:popular</span>
|
||||
<span class="ruby-ivar">@file_name</span> = <span class="ruby-constant">PLUGINS_FILE</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Unknown type'</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'theme'</span>
|
||||
<span class="ruby-keyword">case</span> <span class="ruby-identifier">type</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-value">:full</span>
|
||||
<span class="ruby-ivar">@file_name</span> = <span class="ruby-constant">THEMES_FULL_FILE</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-value">:popular</span>
|
||||
<span class="ruby-ivar">@file_name</span> = <span class="ruby-constant">THEMES_FILE</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Unknown type'</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Unknown type #@type"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- set_file_name-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- set_file_name-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,423 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class GitUpdater - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/updater/git_updater.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Updater.html">Updater</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-has_local_changes-3F">#has_local_changes?</a>
|
||||
|
||||
<li><a href="#method-i-is_installed-3F">#is_installed?</a>
|
||||
|
||||
<li><a href="#method-i-local_revision_number">#local_revision_number</a>
|
||||
|
||||
<li><a href="#method-i-repo_directory_arguments">#repo_directory_arguments</a>
|
||||
|
||||
<li><a href="#method-i-reset_head">#reset_head</a>
|
||||
|
||||
<li><a href="#method-i-update">#update</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class GitUpdater</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-has_local_changes-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_local_changes?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_local_changes-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/git_updater.rb, line 38</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_local_changes?</span>
|
||||
<span class="ruby-node">%x[git #{repo_directory_arguments()} diff --exit-code 2>&1]</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rdiff/</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_local_changes-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_local_changes-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-is_installed-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">is_installed?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="is_installed-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/git_updater.rb, line 23</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_installed?</span>
|
||||
<span class="ruby-node">%x[git #{repo_directory_arguments()} status 2>&1]</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rOn branch/</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- is_installed-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- is_installed-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-local_revision_number" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">local_revision_number</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Git has not a revsion number like SVN, so we will take the 7 first chars of
|
||||
the last commit hash</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="local_revision_number-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/git_updater.rb, line 29</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local_revision_number</span>
|
||||
<span class="ruby-identifier">git_log</span> = <span class="ruby-node">%x[git #{repo_directory_arguments()} log -1 2>&1]</span>
|
||||
<span class="ruby-identifier">git_log</span>[<span class="ruby-regexp">%rcommit ([0-9a-z]{7})/</span>, <span class="ruby-value">1</span>].<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- local_revision_number-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- local_revision_number-method -->
|
||||
|
||||
|
||||
<div id="method-i-reset_head" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">reset_head</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="reset_head-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/git_updater.rb, line 42</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">reset_head</span>
|
||||
<span class="ruby-node">%x[git #{repo_directory_arguments()} reset --hard HEAD]</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- reset_head-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- reset_head-method -->
|
||||
|
||||
|
||||
<div id="method-i-update" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">update</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="update-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/git_updater.rb, line 34</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
|
||||
<span class="ruby-node">%x[git #{repo_directory_arguments()} pull]</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- update-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- update-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
<section id="protected-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-repo_directory_arguments" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">repo_directory_arguments</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="repo_directory_arguments-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/git_updater.rb, line 47</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">repo_directory_arguments</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@repo_directory</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-node">"--git-dir=\"#{@repo_directory}/.git\" --work-tree=\"#{@repo_directory}\""</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- repo_directory_arguments-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- repo_directory_arguments-method -->
|
||||
|
||||
|
||||
</section><!-- protected-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,348 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class ListGeneratorPlugin - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpstools/plugins/list_generator/list_generator_plugin.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Plugin.html">Plugin</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-run">#run</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class ListGeneratorPlugin</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<pre>WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2012-2013
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.</pre>
|
||||
|
||||
<p>++</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/list_generator_plugin.rb, line 21</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
|
||||
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">author</span><span class="ruby-operator">:</span> <span class="ruby-string">'WPScanTeam - @FireFart'</span>)
|
||||
|
||||
<span class="ruby-identifier">register_options</span>(
|
||||
[<span class="ruby-string">'--generate-plugin-list [NUMBER_OF_PAGES]'</span>, <span class="ruby-string">'--gpl'</span>, <span class="ruby-constant">Integer</span>, <span class="ruby-string">'Generate a new data/plugins.txt file. (supply number of *pages* to parse, default : 150)'</span>],
|
||||
[<span class="ruby-string">'--generate-full-plugin-list'</span>, <span class="ruby-string">'--gfpl'</span>, <span class="ruby-string">'Generate a new full data/plugins.txt file'</span>],
|
||||
|
||||
[<span class="ruby-string">'--generate-theme-list [NUMBER_OF_PAGES]'</span>, <span class="ruby-string">'--gtl'</span>, <span class="ruby-constant">Integer</span>, <span class="ruby-string">'Generate a new data/themes.txt file. (supply number of *pages* to parse, default : 150)'</span>],
|
||||
[<span class="ruby-string">'--generate-full-theme-list'</span>, <span class="ruby-string">'--gftl'</span>, <span class="ruby-string">'Generate a new full data/themes.txt file'</span>],
|
||||
|
||||
[<span class="ruby-string">'--generate-all'</span>, <span class="ruby-string">'--ga'</span>, <span class="ruby-string">'Generate a new full plugins, full themes, popular plugins and popular themes list'</span>]
|
||||
)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-run" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">run</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="run-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/list_generator_plugin.rb, line 35</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">run</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-identifier">verbose</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:verbose</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-identifier">generate_all</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:generate_all</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword">false</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:generate_plugin_list</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">generate_all</span>
|
||||
<span class="ruby-identifier">number_of_pages</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:generate_plugin_list</span>] <span class="ruby-operator">||</span> <span class="ruby-value">150</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'[+] Generating new most popular plugin list'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-constant">GenerateList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">'plugins'</span>, <span class="ruby-identifier">verbose</span>).<span class="ruby-identifier">generate_popular_list</span>(<span class="ruby-identifier">number_of_pages</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:generate_full_plugin_list</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">generate_all</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'[+] Generating new full plugin list'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-constant">GenerateList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">'plugins'</span>, <span class="ruby-identifier">verbose</span>).<span class="ruby-identifier">generate_full_list</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:generate_theme_list</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">generate_all</span>
|
||||
<span class="ruby-identifier">number_of_pages</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:generate_theme_list</span>] <span class="ruby-operator">||</span> <span class="ruby-value">150</span>
|
||||
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'[+] Generating new most popular theme list'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-constant">GenerateList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">'themes'</span>, <span class="ruby-identifier">verbose</span>).<span class="ruby-identifier">generate_popular_list</span>(<span class="ruby-identifier">number_of_pages</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:generate_full_theme_list</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">generate_all</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'[+] Generating new full theme list'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-constant">GenerateList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">'themes'</span>, <span class="ruby-identifier">verbose</span>).<span class="ruby-identifier">generate_full_list</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- run-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- run-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,370 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module Malwares - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/malwares.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-malware_pattern">::malware_pattern</a>
|
||||
|
||||
<li><a href="#method-c-malwares_file">::malwares_file</a>
|
||||
|
||||
<li><a href="#method-i-has_malwares-3F">#has_malwares?</a>
|
||||
|
||||
<li><a href="#method-i-malwares">#malwares</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module Malwares</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-malware_pattern" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">malware_pattern</span><span
|
||||
class="method-args">(url_regex)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="malware_pattern-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/malwares.rb, line 59</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">malware_pattern</span>(<span class="ruby-identifier">url_regex</span>)
|
||||
<span class="ruby-comment"># no need to escape regex here, because malware.txt contains regex</span>
|
||||
<span class="ruby-node">%r{<(?:script|iframe).* src=(?:"|')(#{url_regex}[^"']*)(?:"|')[^>]*>}</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- malware_pattern-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- malware_pattern-method -->
|
||||
|
||||
|
||||
<div id="method-c-malwares_file" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">malwares_file</span><span
|
||||
class="method-args">(malwares_file_path)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="malwares_file-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/malwares.rb, line 55</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">malwares_file</span>(<span class="ruby-identifier">malwares_file_path</span>)
|
||||
<span class="ruby-identifier">malwares_file_path</span> <span class="ruby-operator">||</span> <span class="ruby-constant">DATA_DIR</span> <span class="ruby-operator">+</span> <span class="ruby-string">'/malwares.txt'</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- malwares_file-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- malwares_file-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-has_malwares-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_malwares?</span><span
|
||||
class="method-args">(malwares_file_path = nil)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_malwares-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/malwares.rb, line 26</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_malwares?</span>(<span class="ruby-identifier">malwares_file_path</span> = <span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-operator">!</span><span class="ruby-identifier">malwares</span>(<span class="ruby-identifier">malwares_file_path</span>).<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_malwares-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_malwares-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-malwares" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">malwares</span><span
|
||||
class="method-args">(malwares_file_path = nil)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>return array of string (url of malwares found)</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="malwares-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/malwares.rb, line 31</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">malwares</span>(<span class="ruby-identifier">malwares_file_path</span> = <span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@malwares</span>
|
||||
<span class="ruby-identifier">malwares_found</span> = []
|
||||
<span class="ruby-identifier">malwares_file</span> = <span class="ruby-constant">Malwares</span>.<span class="ruby-identifier">malwares_file</span>(<span class="ruby-identifier">malwares_file_path</span>)
|
||||
<span class="ruby-identifier">index_page_body</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">body</span>
|
||||
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">malwares_file</span>, <span class="ruby-string">'r'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">file</span>.<span class="ruby-identifier">readlines</span>.<span class="ruby-identifier">collect</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">url</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">chomped_url</span> = <span class="ruby-identifier">url</span>.<span class="ruby-identifier">chomp</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">chomped_url</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">malwares_found</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">index_page_body</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-constant">Malwares</span>.<span class="ruby-identifier">malware_pattern</span>(<span class="ruby-identifier">chomped_url</span>))
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">malwares_found</span>.<span class="ruby-identifier">flatten!</span>
|
||||
<span class="ruby-identifier">malwares_found</span>.<span class="ruby-identifier">uniq!</span>
|
||||
|
||||
<span class="ruby-ivar">@malwares</span> = <span class="ruby-identifier">malwares_found</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@malwares</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- malwares-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- malwares-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
919
doc/Object.html
@@ -1,919 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class Object - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/common_helper.rb
|
||||
<li>lib/wpscan/wpscan_helper.rb
|
||||
<li>lib/wpstools/wpstools_helper.rb
|
||||
<li>wpscan.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link">BasicObject
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-add_http_protocol">#add_http_protocol</a>
|
||||
|
||||
<li><a href="#method-i-add_trailing_slash">#add_trailing_slash</a>
|
||||
|
||||
<li><a href="#method-i-banner">#banner</a>
|
||||
|
||||
<li><a href="#method-i-colorize">#colorize</a>
|
||||
|
||||
<li><a href="#method-i-get_equal_string_end">#get_equal_string_end</a>
|
||||
|
||||
<li><a href="#method-i-get_metasploit_url">#get_metasploit_url</a>
|
||||
|
||||
<li><a href="#method-i-green">#green</a>
|
||||
|
||||
<li><a href="#method-i-help">#help</a>
|
||||
|
||||
<li><a href="#method-i-output_vulnerabilities">#output_vulnerabilities</a>
|
||||
|
||||
<li><a href="#method-i-puts">#puts</a>
|
||||
|
||||
<li><a href="#method-i-red">#red</a>
|
||||
|
||||
<li><a href="#method-i-require_files_from_directory">#require_files_from_directory</a>
|
||||
|
||||
<li><a href="#method-i-usage">#usage</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class Object</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Constants -->
|
||||
<section id="constants-list" class="section">
|
||||
<h3 class="section-header">Constants</h3>
|
||||
<dl>
|
||||
|
||||
<dt id="CACHE_DIR">CACHE_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="COMMON_LIB_DIR">COMMON_LIB_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="COMON_PLUGINS_DIR">COMON_PLUGINS_DIR
|
||||
|
||||
<dd class="description"><p><a href="Plugins.html">Plugins</a> directories</p>
|
||||
|
||||
|
||||
<dt id="CONF_DIR">CONF_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="DATA_DIR">DATA_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="LIB_DIR">LIB_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="LOCAL_FILES_FILE">LOCAL_FILES_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="LOCAL_FILES_XSD">LOCAL_FILES_XSD
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="LOG_FILE">LOG_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="PLUGINS_FILE">PLUGINS_FILE
|
||||
|
||||
<dd class="description"><p>Data files</p>
|
||||
|
||||
|
||||
<dt id="PLUGINS_FULL_FILE">PLUGINS_FULL_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="PLUGINS_VULNS_FILE">PLUGINS_VULNS_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="REVISION">REVISION
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="ROOT_DIR">ROOT_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="THEMES_FILE">THEMES_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="THEMES_FULL_FILE">THEMES_FULL_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="THEMES_VULNS_FILE">THEMES_VULNS_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="UPDATER_LIB_DIR">UPDATER_LIB_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="VULNS_XSD">VULNS_XSD
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WPSCAN_LIB_DIR">WPSCAN_LIB_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WPSCAN_PLUGINS_DIR">WPSCAN_PLUGINS_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WPSCAN_VERSION">WPSCAN_VERSION
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WPSTOOLS_LIB_DIR">WPSTOOLS_LIB_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WPSTOOLS_PLUGINS_DIR">WPSTOOLS_PLUGINS_DIR
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WP_VERSIONS_FILE">WP_VERSIONS_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WP_VERSIONS_XSD">WP_VERSIONS_XSD
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="WP_VULNS_FILE">WP_VULNS_FILE
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
</dl>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-add_http_protocol" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">add_http_protocol</span><span
|
||||
class="method-args">(url)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Add protocol</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="add_http_protocol-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 65</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_http_protocol</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-identifier">url</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r^https?:/</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">url</span> <span class="ruby-operator">:</span> <span class="ruby-node">"http://#{url}"</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- add_http_protocol-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- add_http_protocol-method -->
|
||||
|
||||
|
||||
<div id="method-i-add_trailing_slash" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">add_trailing_slash</span><span
|
||||
class="method-args">(url)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="add_trailing_slash-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 69</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_trailing_slash</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-identifier">url</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r\/$/</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">url</span> <span class="ruby-operator">:</span> <span class="ruby-node">"#{url}/"</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- add_trailing_slash-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- add_trailing_slash-method -->
|
||||
|
||||
|
||||
<div id="method-i-banner" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">banner</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>our 1337 banner</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="banner-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 135</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">banner</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'____________________________________________________'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' __ _______ _____ '</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' \ \ / / __ \ / ____| '</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' \ \ /\ / /| |__) | (___ ___ __ _ _ __ '</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' \ \/ \/ / | ___/ \___ \ / __|/ _` | \_ \ '</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' \ /\ / | | ____) | (__| (_| | | | |'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">" \\/ \\/ |_| |_____/ \\___|\\__,_|_| |_| v#{WPSCAN_VERSION}r#{REVISION}"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' WordPress Security Scanner by the WPScan Team'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' Sponsored by the RandomStorm Open Source Initiative'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'_____________________________________________________'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-constant">RUBY_VERSION</span> <span class="ruby-operator"><</span> <span class="ruby-string">'1.9'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'[WARNING] Ruby < 1.9 not officially supported, please upgrade.'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- banner-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- banner-method -->
|
||||
|
||||
|
||||
<div id="method-i-colorize" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">colorize</span><span
|
||||
class="method-args">(text, color_code)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="colorize-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 154</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">colorize</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">color_code</span>)
|
||||
<span class="ruby-node">"\e[#{color_code}m#{text}\e[0m"</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- colorize-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- colorize-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_equal_string_end" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_equal_string_end</span><span
|
||||
class="method-args">(stringarray = [''])</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Gets the string all elements in stringarray ends with</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_equal_string_end-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 74</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_equal_string_end</span>(<span class="ruby-identifier">stringarray</span> = [<span class="ruby-string">''</span>])
|
||||
<span class="ruby-identifier">already_found</span> = <span class="ruby-string">''</span>
|
||||
<span class="ruby-identifier">looping</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">counter</span> = <span class="ruby-value">-1</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">stringarray</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Array</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">stringarray</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">base</span> = <span class="ruby-identifier">stringarray</span>[<span class="ruby-value">0</span>]
|
||||
<span class="ruby-keyword">while</span> <span class="ruby-identifier">looping</span>
|
||||
<span class="ruby-identifier">character</span> = <span class="ruby-identifier">base</span>[<span class="ruby-identifier">counter</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-identifier">stringarray</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">s</span>[<span class="ruby-identifier">counter</span>, <span class="ruby-value">1</span>] <span class="ruby-operator">!=</span> <span class="ruby-identifier">character</span>
|
||||
<span class="ruby-identifier">looping</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">looping</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">or</span> (<span class="ruby-identifier">counter</span> * <span class="ruby-value">-1</span>) <span class="ruby-operator">></span> <span class="ruby-identifier">base</span>.<span class="ruby-identifier">length</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">already_found</span> = <span class="ruby-node">"#{character if character}#{already_found}"</span>
|
||||
<span class="ruby-identifier">counter</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">already_found</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_equal_string_end-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_equal_string_end-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_metasploit_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_metasploit_url</span><span
|
||||
class="method-args">(module_path)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_metasploit_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 166</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_metasploit_url</span>(<span class="ruby-identifier">module_path</span>)
|
||||
<span class="ruby-comment"># remove leading slash</span>
|
||||
<span class="ruby-identifier">module_path</span> = <span class="ruby-identifier">module_path</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r^\//</span>, <span class="ruby-string">''</span>)
|
||||
<span class="ruby-node">"http://www.metasploit.com/modules/#{module_path}"</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_metasploit_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_metasploit_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-green" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">green</span><span
|
||||
class="method-args">(text)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="green-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 162</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">green</span>(<span class="ruby-identifier">text</span>)
|
||||
<span class="ruby-identifier">colorize</span>(<span class="ruby-identifier">text</span>, <span class="ruby-value">32</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- green-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- green-method -->
|
||||
|
||||
|
||||
<div id="method-i-help" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">help</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>command help</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="help-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wpscan_helper.rb, line 73</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">help</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'Help :'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'Some values are settable in conf/browser.conf.json :'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' user-agent, proxy, proxy-auth, threads, cache timeout and request timeout'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--update Update to the latest revision'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--url | -u <target url> The WordPress URL/domain to scan.'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--force | -f Forces WPScan to not check if the remote site is running WordPress.'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--enumerate | -e [option(s)] Enumeration.'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' option :'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' u usernames from id 1 to 10'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' u[10-20] usernames from id 10 to 20 (you must write [] chars)'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' p plugins'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' vp only vulnerable plugins'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' ap all plugins (can take a long time)'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' tt timthumbs'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' t themes'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' vt only vulnerable themes'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' at all themes (can take a long time)'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' Multiple values are allowed : "-e t,p" will enumerate timthumbs and plugins'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' If no option is supplied, the default is "vt,tt,u,vp"'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--exclude-content-based "<regexp or string>" Used with the enumeration option, will exclude all occurence based on the regexp or string supplied'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' You do not need to provide the regexp delimiters, but you must write the quotes (simple or double)'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--config-file | -c <config file> Use the specified config file'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--follow-redirection If the target url has a redirection, it will be followed without asking if you wanted to do so or not'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--wp-content-dir <wp content dir> WPScan try to find the content directory (ie wp-content) by scanning the index page, however you can specified it. Subdirectories are allowed'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--wp-plugins-dir <wp plugins dir> Same thing than --wp-content-dir but for the plugins directory. If not supplied, WPScan will use wp-content-dir/plugins. Subdirectories are allowed'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--proxy <[protocol://]host:port> Supply a proxy (will override the one from conf/browser.conf.json).'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' HTTP, SOCKS4 SOCKS4A and SOCKS5 are supported. If no protocol is given (format host:port), HTTP will be used'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--proxy-auth <username:password> Supply the proxy login credentials (will override the one from conf/browser.conf.json).'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--basic-auth <username:password> Set the HTTP Basic authentification'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--wordlist | -w <wordlist> Supply a wordlist for the password bruter and do the brute.'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--threads | -t <number of threads> The number of threads to use when multi-threading requests. (will override the value from conf/browser.conf.json)'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--username | -U <username> Only brute force the supplied username.'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--help | -h This help screen.'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'--verbose | -v Verbose output.'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- help-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- help-method -->
|
||||
|
||||
|
||||
<div id="method-i-output_vulnerabilities" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">output_vulnerabilities</span><span
|
||||
class="method-args">(vulns)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="output_vulnerabilities-source">
|
||||
<pre><span class="ruby-comment"># File wpscan.rb, line 24</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">output_vulnerabilities</span>(<span class="ruby-identifier">vulns</span>)
|
||||
<span class="ruby-identifier">vulns</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">vulnerability</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' | '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">red</span>(<span class="ruby-node">"* Title: #{vulnerability.title}"</span>)
|
||||
<span class="ruby-identifier">vulnerability</span>.<span class="ruby-identifier">references</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' | '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">red</span>(<span class="ruby-node">"* Reference: #{r}"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">vulnerability</span>.<span class="ruby-identifier">metasploit_modules</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">' | '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">red</span>(<span class="ruby-node">"* Metasploit module: #{get_metasploit_url(m)}"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- output_vulnerabilities-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- output_vulnerabilities-method -->
|
||||
|
||||
|
||||
<div id="method-i-puts" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">puts</span><span
|
||||
class="method-args">(o = '')</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Override for puts to enable logging</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="puts-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 173</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">puts</span>(<span class="ruby-identifier">o</span> = <span class="ruby-string">''</span>)
|
||||
<span class="ruby-comment"># remove color for logging</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-string">'gsub'</span>)
|
||||
<span class="ruby-identifier">temp</span> = <span class="ruby-identifier">o</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">%r\e\[\d+m(.*)?\e\[0m/</span>, <span class="ruby-string">'\1'</span>)
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-constant">LOG_FILE</span>, <span class="ruby-string">'a+'</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-identifier">temp</span>) }
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">o</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- puts-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- puts-method -->
|
||||
|
||||
|
||||
<div id="method-i-red" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">red</span><span
|
||||
class="method-args">(text)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="red-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 158</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">red</span>(<span class="ruby-identifier">text</span>)
|
||||
<span class="ruby-identifier">colorize</span>(<span class="ruby-identifier">text</span>, <span class="ruby-value">31</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- red-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- red-method -->
|
||||
|
||||
|
||||
<div id="method-i-require_files_from_directory" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">require_files_from_directory</span><span
|
||||
class="method-args">(absolute_dir_path, files_pattern = '*.rb')</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>TODO : add an exclude pattern ?</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="require_files_from_directory-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 53</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">require_files_from_directory</span>(<span class="ruby-identifier">absolute_dir_path</span>, <span class="ruby-identifier">files_pattern</span> = <span class="ruby-string">'*.rb'</span>)
|
||||
<span class="ruby-constant">Dir</span>[<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">absolute_dir_path</span>, <span class="ruby-identifier">files_pattern</span>)].<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">f</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">f</span>)
|
||||
<span class="ruby-identifier">require</span> <span class="ruby-identifier">f</span>
|
||||
<span class="ruby-comment">#puts "require #{f}" # Used for debug</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- require_files_from_directory-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- require_files_from_directory-method -->
|
||||
|
||||
|
||||
<div id="method-i-usage" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">usage</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>wpscan usage</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="usage-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wpscan_helper.rb, line 24</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">usage</span>
|
||||
<span class="ruby-identifier">script_name</span> = <span class="ruby-identifier">$0</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'Examples :'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Further help ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --help"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">"-Do 'non-intrusive' checks ..."</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Do wordlist password brute force on enumerated users using 50 threads ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --wordlist darkc0de.lst --threads 50"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">"-Do wordlist password brute force on the 'admin' username only ..."</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --wordlist darkc0de.lst --username admin"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Enumerate installed plugins ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --enumerate p"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Enumerate installed themes ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --enumerate t"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Enumerate users ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --enumerate u"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Enumerate installed timthumbs ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --enumerate tt"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Use a HTTP proxy ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --proxy 127.0.0.1:8118"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Use a SOCKS5 proxy ... (cURL >= v7.21.7 needed)'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --url www.example.com --proxy socks5://127.0.0.1:9000"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Use custom content directory ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} -u www.example.com --wp-content-dir custom-content"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Use custom plugins directory ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} -u www.example.com --wp-plugins-dir wp-content/custom-plugins"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'-Update ...'</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-node">"ruby #{script_name} --update"</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-identifier">puts</span> <span class="ruby-string">'See README for further information.'</span>
|
||||
<span class="ruby-identifier">puts</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- usage-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- usage-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
379
doc/Plugin.html
@@ -1,379 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class Plugin - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/common/plugins/plugin.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-register_options">#register_options</a>
|
||||
|
||||
<li><a href="#method-i-run">#run</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class Plugin</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<pre>WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2012-2013
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.</pre>
|
||||
|
||||
<p>++</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-author" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">author</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-registered_options" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">registered_options</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(infos = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/plugins/plugin.rb, line 23</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">infos</span> = {})
|
||||
<span class="ruby-ivar">@author</span> = <span class="ruby-identifier">infos</span>[<span class="ruby-value">:author</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-register_options" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">register_options</span><span
|
||||
class="method-args">(*options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>param <a href="Array.html">Array</a> options</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="register_options-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/plugins/plugin.rb, line 32</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">register_options</span>(*<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">option</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">option</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Each option must be an array, #{option.class} supplied"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@registered_options</span> = <span class="ruby-identifier">options</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- register_options-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- register_options-method -->
|
||||
|
||||
|
||||
<div id="method-i-run" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">run</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="run-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/plugins/plugin.rb, line 27</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">run</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- run-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- run-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
380
doc/Plugins.html
@@ -1,380 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class Plugins - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/common/plugins/plugins.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Array.html">Array</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-register">#register</a>
|
||||
|
||||
<li><a href="#method-i-register_plugin">#register_plugin</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class Plugins</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<pre>WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2012-2013
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.</pre>
|
||||
|
||||
<p>++</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-option_parser" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">option_parser</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(option_parser = nil)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/plugins/plugins.rb, line 23</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">option_parser</span> = <span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">option_parser</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">option_parser</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">CustomOptionParser</span>)
|
||||
<span class="ruby-ivar">@option_parser</span> = <span class="ruby-identifier">option_parser</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"The parser must be an instance of CustomOptionParser, #{option_parser.class} supplied"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@option_parser</span> = <span class="ruby-constant">CustomOptionParser</span>.<span class="ruby-identifier">new</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-register" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">register</span><span
|
||||
class="method-args">(*plugins)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>param Array(<a href="Plugin.html">Plugin</a>) plugins</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="register-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/plugins/plugins.rb, line 36</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">register</span>(*<span class="ruby-identifier">plugins</span>)
|
||||
<span class="ruby-identifier">plugins</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">plugin</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">register_plugin</span>(<span class="ruby-identifier">plugin</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- register-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- register-method -->
|
||||
|
||||
|
||||
<div id="method-i-register_plugin" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">register_plugin</span><span
|
||||
class="method-args">(plugin)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>param <a href="Plugin.html">Plugin</a> plugin</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="register_plugin-source">
|
||||
<pre><span class="ruby-comment"># File lib/common/plugins/plugins.rb, line 43</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">register_plugin</span>(<span class="ruby-identifier">plugin</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Plugin</span>)
|
||||
<span class="ruby-keyword">self</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">plugin</span>
|
||||
|
||||
<span class="ruby-comment"># A plugin may not have options</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin_options</span> = <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">registered_options</span>
|
||||
<span class="ruby-ivar">@option_parser</span>.<span class="ruby-identifier">add</span>(<span class="ruby-identifier">plugin_options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"The argument must be an instance of Plugin, #{plugin.class} supplied"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- register_plugin-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- register_plugin-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
401
doc/README.html
@@ -1,401 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>README - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body class="file">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation" class="description">
|
||||
|
||||
<p><em>__</em></p>
|
||||
|
||||
<pre>__ _______ _____
|
||||
\ \ / / __ \ / ____|
|
||||
\ \ /\ / /| |__) | (___ ___ __ _ _ __
|
||||
\ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \
|
||||
\ /\ / | | ____) | (__| (_| | | | |
|
||||
\/ \/ |_| |_____/ \___|\__,_|_| |_|</pre>
|
||||
|
||||
<p><em>__</em></p>
|
||||
|
||||
<h2 id="label-LICENSE%3D%3D">LICENSE==</h2>
|
||||
|
||||
<p>WPScan - WordPress Security Scanner Copyright (C) 2011-2013 The WPScan Team</p>
|
||||
|
||||
<p>This program is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the Free
|
||||
Software Foundation, either version 3 of the License, or (at your option)
|
||||
any later version.</p>
|
||||
|
||||
<p>This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
more details.</p>
|
||||
|
||||
<p>You should have received a copy of the GNU General Public License along
|
||||
with this program. If not, see <<a
|
||||
href="http://www.gnu.org/licenses/">www.gnu.org/licenses/</a>>.</p>
|
||||
|
||||
<p>ryandewhurst at gmail</p>
|
||||
|
||||
<h2 id="label-INSTALL%3D%3D">INSTALL==</h2>
|
||||
|
||||
<pre class="ruby"><span class="ruby-constant">WPScan</span> <span class="ruby-identifier">comes</span> <span class="ruby-identifier">pre</span><span class="ruby-operator">-</span><span class="ruby-identifier">installed</span> <span class="ruby-identifier">on</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">following</span> <span class="ruby-constant">Linux</span> <span class="ruby-identifier">distributions</span><span class="ruby-operator">:</span>
|
||||
|
||||
* <span class="ruby-constant">BackBox</span> <span class="ruby-constant">Linux</span>
|
||||
* <span class="ruby-constant">BackTrack</span> <span class="ruby-constant">Linux</span> (<span class="ruby-identifier">outdated</span> <span class="ruby-constant">WPScan</span> <span class="ruby-identifier">installed</span>, <span class="ruby-identifier">update</span> <span class="ruby-identifier">needed</span>)
|
||||
* <span class="ruby-constant">Pentoo</span>
|
||||
* <span class="ruby-constant">SamuraiWTF</span>
|
||||
|
||||
<span class="ruby-constant">Prerequisites</span><span class="ruby-operator">:</span>
|
||||
|
||||
* <span class="ruby-constant">Windows</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">supported</span>
|
||||
* <span class="ruby-constant">Ruby</span> =<span class="ruby-operator">></span> <span class="ruby-value">1.9</span>
|
||||
* <span class="ruby-constant">RubyGems</span>
|
||||
* <span class="ruby-constant">Git</span>
|
||||
|
||||
<span class="ruby-operator">-</span><span class="ruby-operator">></span> <span class="ruby-constant">Installing</span> <span class="ruby-identifier">on</span> <span class="ruby-constant">Debian</span><span class="ruby-operator">/</span><span class="ruby-constant">Ubuntu</span><span class="ruby-operator">:</span>
|
||||
|
||||
<span class="ruby-identifier">sudo</span> <span class="ruby-identifier">apt</span><span class="ruby-operator">-</span><span class="ruby-identifier">get</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">libcurl4</span><span class="ruby-operator">-</span><span class="ruby-identifier">gnutls</span><span class="ruby-operator">-</span><span class="ruby-identifier">dev</span> <span class="ruby-identifier">libopenssl</span><span class="ruby-operator">-</span><span class="ruby-identifier">ruby</span> <span class="ruby-identifier">libxml2</span> <span class="ruby-identifier">libxml2</span><span class="ruby-operator">-</span><span class="ruby-identifier">dev</span> <span class="ruby-identifier">libxslt1</span><span class="ruby-operator">-</span><span class="ruby-identifier">dev</span> <span class="ruby-identifier">ruby</span><span class="ruby-operator">-</span><span class="ruby-identifier">dev</span>
|
||||
<span class="ruby-identifier">git</span> <span class="ruby-identifier">clone</span> <span class="ruby-identifier">https</span>:<span class="ruby-operator">/</span><span class="ruby-regexp">%rgithub.com/</span><span class="ruby-identifier">wpscanteam</span><span class="ruby-operator">/</span><span class="ruby-identifier">wpscan</span>.<span class="ruby-identifier">git</span>
|
||||
<span class="ruby-identifier">cd</span> <span class="ruby-identifier">wpscan</span>
|
||||
<span class="ruby-identifier">sudo</span> <span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">bundler</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">bundle</span> <span class="ruby-identifier">install</span> <span class="ruby-operator">-</span><span class="ruby-operator">-</span><span class="ruby-identifier">without</span> <span class="ruby-identifier">test</span> <span class="ruby-identifier">development</span>
|
||||
|
||||
<span class="ruby-operator">-</span><span class="ruby-operator">></span> <span class="ruby-constant">Installing</span> <span class="ruby-identifier">on</span> <span class="ruby-constant">Fedora</span><span class="ruby-operator">:</span>
|
||||
|
||||
<span class="ruby-identifier">sudo</span> <span class="ruby-identifier">yum</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">libcurl</span><span class="ruby-operator">-</span><span class="ruby-identifier">devel</span>
|
||||
<span class="ruby-identifier">git</span> <span class="ruby-identifier">clone</span> <span class="ruby-identifier">https</span>:<span class="ruby-operator">/</span><span class="ruby-regexp">%rgithub.com/</span><span class="ruby-identifier">wpscanteam</span><span class="ruby-operator">/</span><span class="ruby-identifier">wpscan</span>.<span class="ruby-identifier">git</span>
|
||||
<span class="ruby-identifier">cd</span> <span class="ruby-identifier">wpscan</span>
|
||||
<span class="ruby-identifier">sudo</span> <span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">bundler</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">bundle</span> <span class="ruby-identifier">install</span> <span class="ruby-operator">-</span><span class="ruby-operator">-</span><span class="ruby-identifier">without</span> <span class="ruby-identifier">test</span> <span class="ruby-identifier">development</span>
|
||||
|
||||
<span class="ruby-operator">-</span><span class="ruby-operator">></span> <span class="ruby-constant">Installing</span> <span class="ruby-identifier">on</span> <span class="ruby-constant">Archlinux</span><span class="ruby-operator">:</span>
|
||||
|
||||
<span class="ruby-identifier">pacman</span> <span class="ruby-operator">-</span><span class="ruby-constant">Sy</span> <span class="ruby-identifier">ruby</span>
|
||||
<span class="ruby-identifier">pacman</span> <span class="ruby-operator">-</span><span class="ruby-constant">Sy</span> <span class="ruby-identifier">libyaml</span>
|
||||
|
||||
<span class="ruby-identifier">git</span> <span class="ruby-identifier">clone</span> <span class="ruby-identifier">https</span>:<span class="ruby-operator">/</span><span class="ruby-regexp">%rgithub.com/</span><span class="ruby-identifier">wpscanteam</span><span class="ruby-operator">/</span><span class="ruby-identifier">wpscan</span>.<span class="ruby-identifier">git</span>
|
||||
<span class="ruby-identifier">cd</span> <span class="ruby-identifier">wpscan</span>
|
||||
<span class="ruby-identifier">sudo</span> <span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">bundler</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">bundle</span> <span class="ruby-identifier">install</span> <span class="ruby-operator">-</span><span class="ruby-operator">-</span><span class="ruby-identifier">without</span> <span class="ruby-identifier">test</span> <span class="ruby-identifier">development</span>
|
||||
|
||||
<span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">typhoeus</span>
|
||||
<span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">nokogiri</span>
|
||||
|
||||
<span class="ruby-operator">-</span><span class="ruby-operator">></span> <span class="ruby-constant">Installing</span> <span class="ruby-identifier">on</span> <span class="ruby-constant">Mac</span> <span class="ruby-constant">OS</span> <span class="ruby-constant">X</span><span class="ruby-operator">:</span>
|
||||
|
||||
<span class="ruby-identifier">git</span> <span class="ruby-identifier">clone</span> <span class="ruby-identifier">https</span>:<span class="ruby-operator">/</span><span class="ruby-regexp">%rgithub.com/</span><span class="ruby-identifier">wpscanteam</span><span class="ruby-operator">/</span><span class="ruby-identifier">wpscan</span>.<span class="ruby-identifier">git</span>
|
||||
<span class="ruby-identifier">cd</span> <span class="ruby-identifier">wpscan</span>
|
||||
<span class="ruby-identifier">sudo</span> <span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">bundler</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">bundle</span> <span class="ruby-identifier">install</span> <span class="ruby-operator">-</span><span class="ruby-operator">-</span><span class="ruby-identifier">without</span> <span class="ruby-identifier">test</span> <span class="ruby-identifier">development</span>
|
||||
</pre>
|
||||
|
||||
<h2 id="label-KNOWN+ISSUES%3D%3D">KNOWN ISSUES==</h2>
|
||||
|
||||
<pre class="ruby"><span class="ruby-operator">-</span> <span class="ruby-constant">Typhoeus</span> <span class="ruby-identifier">segmentation</span> <span class="ruby-identifier">fault</span><span class="ruby-operator">:</span>
|
||||
<span class="ruby-constant">Update</span> <span class="ruby-identifier">cURL</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">version</span> =<span class="ruby-operator">></span> <span class="ruby-value">7.21</span> (<span class="ruby-identifier">may</span> <span class="ruby-identifier">have</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">from</span> <span class="ruby-identifier">source</span>)
|
||||
<span class="ruby-constant">See</span> <span class="ruby-identifier">http</span>:<span class="ruby-operator">/</span><span class="ruby-regexp">%rcode.google.com/</span><span class="ruby-identifier">p</span><span class="ruby-operator">/</span><span class="ruby-identifier">wpscan</span><span class="ruby-operator">/</span><span class="ruby-identifier">issues</span><span class="ruby-operator">/</span><span class="ruby-identifier">detail?</span><span class="ruby-identifier">id</span>=<span class="ruby-value">81</span>
|
||||
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Proxy</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">working</span><span class="ruby-operator">:</span>
|
||||
<span class="ruby-constant">Update</span> <span class="ruby-identifier">cURL</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">version</span> =<span class="ruby-operator">></span> <span class="ruby-value">7.21</span><span class="ruby-value">.7</span> (<span class="ruby-identifier">may</span> <span class="ruby-identifier">have</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">from</span> <span class="ruby-identifier">source</span>).
|
||||
|
||||
<span class="ruby-constant">Installation</span> <span class="ruby-identifier">from</span> <span class="ruby-identifier">sources</span> <span class="ruby-operator">:</span>
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Grab</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">sources</span> <span class="ruby-identifier">from</span> <span class="ruby-identifier">http</span>:<span class="ruby-operator">/</span><span class="ruby-regexp">%rcurl.haxx.se/</span><span class="ruby-identifier">download</span>.<span class="ruby-identifier">html</span>
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Decompress</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">archive</span>
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Open</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">folder</span> <span class="ruby-identifier">with</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">extracted</span> <span class="ruby-identifier">files</span>
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Run</span> .<span class="ruby-operator">/</span><span class="ruby-identifier">configure</span>
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Run</span> <span class="ruby-identifier">make</span>
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Run</span> <span class="ruby-identifier">sudo</span> <span class="ruby-identifier">make</span> <span class="ruby-identifier">install</span>
|
||||
<span class="ruby-operator">-</span> <span class="ruby-constant">Run</span> <span class="ruby-identifier">sudo</span> <span class="ruby-identifier">ldconfig</span>
|
||||
|
||||
<span class="ruby-operator">-</span> <span class="ruby-identifier">cannot</span> <span class="ruby-identifier">load</span> <span class="ruby-identifier">such</span> <span class="ruby-identifier">file</span> <span class="ruby-operator">-</span><span class="ruby-operator">-</span> <span class="ruby-identifier">readline</span><span class="ruby-operator">:</span>
|
||||
<span class="ruby-constant">Run</span> <span class="ruby-identifier">sudo</span> <span class="ruby-identifier">aptitude</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">libreadline5</span><span class="ruby-operator">-</span><span class="ruby-identifier">dev</span> <span class="ruby-identifier">libncurses5</span><span class="ruby-operator">-</span><span class="ruby-identifier">dev</span>
|
||||
|
||||
<span class="ruby-constant">Then</span>, <span class="ruby-identifier">open</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">directory</span> <span class="ruby-identifier">of</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">readline</span> <span class="ruby-identifier">gem</span> (<span class="ruby-identifier">you</span> <span class="ruby-identifier">have</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">locate</span> <span class="ruby-identifier">it</span>)
|
||||
|
||||
<span class="ruby-identifier">cd</span> <span class="ruby-operator">~</span><span class="ruby-regexp">%r.rvm/</span><span class="ruby-identifier">rc</span><span class="ruby-operator">/</span><span class="ruby-identifier">ruby</span><span class="ruby-operator">-</span><span class="ruby-value">1.9</span><span class="ruby-value">.2</span><span class="ruby-operator">-</span><span class="ruby-identifier">p180</span><span class="ruby-operator">/</span><span class="ruby-identifier">ext</span><span class="ruby-operator">/</span><span class="ruby-identifier">readline</span>
|
||||
<span class="ruby-identifier">ruby</span> <span class="ruby-identifier">extconf</span>.<span class="ruby-identifier">rb</span>
|
||||
<span class="ruby-identifier">make</span>
|
||||
<span class="ruby-identifier">make</span> <span class="ruby-identifier">install</span>
|
||||
|
||||
<span class="ruby-constant">See</span> <span class="ruby-identifier">http</span>:<span class="ruby-operator">/</span><span class="ruby-regexp">%rvvv.tobiassjosten.net/</span><span class="ruby-identifier">ruby</span><span class="ruby-operator">-</span><span class="ruby-identifier">on</span><span class="ruby-operator">-</span><span class="ruby-identifier">rails</span><span class="ruby-operator">/</span><span class="ruby-identifier">fixing</span><span class="ruby-operator">-</span><span class="ruby-identifier">readline</span><span class="ruby-operator">-</span><span class="ruby-keyword">for</span><span class="ruby-operator">-</span><span class="ruby-identifier">the</span><span class="ruby-operator">-</span><span class="ruby-identifier">ruby</span><span class="ruby-operator">-</span><span class="ruby-identifier">on</span><span class="ruby-operator">-</span><span class="ruby-identifier">rails</span><span class="ruby-operator">-</span><span class="ruby-identifier">console</span><span class="ruby-operator">/</span> <span class="ruby-keyword">for</span> <span class="ruby-identifier">more</span> <span class="ruby-identifier">details</span>
|
||||
</pre>
|
||||
|
||||
<h2 id="label-WPSCAN+ARGUMENTS%3D%3D">WPSCAN ARGUMENTS==</h2>
|
||||
|
||||
<p>–update Update to the latest revision</p>
|
||||
|
||||
<p>–url | -u <target url> The WordPress URL/domain to scan.</p>
|
||||
|
||||
<p>–force | -f Forces WPScan to not check if the remote site is running
|
||||
WordPress.</p>
|
||||
|
||||
<p>–enumerate | -e [option(s)] Enumeration.</p>
|
||||
|
||||
<pre>option :
|
||||
u usernames from id 1 to 10
|
||||
u[10-20] usernames from id 10 to 20 (you must write [] chars)
|
||||
p plugins
|
||||
vp only vulnerable plugins
|
||||
ap all plugins (can take a long time)
|
||||
tt timthumbs
|
||||
t themes
|
||||
vp only vulnerable themes
|
||||
at all themes (can take a long time)
|
||||
Multiple values are allowed : '-e tt,p' will enumerate timthumbs and plugins
|
||||
If no option is supplied, the default is 'vt,tt,u,vp'</pre>
|
||||
|
||||
<p>–exclude-content-based ‘<regexp or string>’ Used with the
|
||||
enumeration option, will exclude all occurence based on the regexp or
|
||||
string supplied</p>
|
||||
|
||||
<pre>You do not need to provide the regexp delimiters, but you must write the quotes (simple or double)</pre>
|
||||
|
||||
<p>–config-file | -c <config file> Use the specified config file</p>
|
||||
|
||||
<p>–follow-redirection If the target url has a redirection, it will be
|
||||
followed without asking if you wanted to do so or not</p>
|
||||
|
||||
<p>–wp-content-dir <wp content dir> WPScan try to find the content
|
||||
directory (ie wp-content) by scanning the index page, however you can
|
||||
specified it. Subdirectories are allowed</p>
|
||||
|
||||
<p>–wp-plugins-dir <wp plugins dir> Same thing than –wp-content-dir but
|
||||
for the plugins directory. If not supplied, WPScan will use
|
||||
wp-content-dir/plugins. Subdirectories are allowed</p>
|
||||
|
||||
<p>–proxy <[protocol://]host:port> Supply a proxy (will override the
|
||||
one from conf/browser.conf.json).</p>
|
||||
|
||||
<pre>HTTP, SOCKS4 SOCKS4A and SOCKS5 are supported. If no protocol is given (format host:port), HTTP will be used</pre>
|
||||
|
||||
<p>–proxy-auth <username:password> Supply the proxy login credentials
|
||||
(will override the one from conf/browser.conf.json).</p>
|
||||
|
||||
<p>–basic-auth <username:password> Set the HTTP Basic authentification</p>
|
||||
|
||||
<p>–wordlist | -w <wordlist> Supply a wordlist for the password bruter
|
||||
and do the brute.</p>
|
||||
|
||||
<p>–threads | -t <number of threads> The number of threads to use when
|
||||
multi-threading requests. (will override the value from
|
||||
conf/browser.conf.json)</p>
|
||||
|
||||
<p>–username | -U <username> Only brute force the supplied username.</p>
|
||||
|
||||
<p>–help | -h This help screen.</p>
|
||||
|
||||
<p>–verbose | -v Verbose output.</p>
|
||||
|
||||
<h2 id="label-WPSCAN+EXAMPLES%3D%3D">WPSCAN EXAMPLES==</h2>
|
||||
|
||||
<p>Do ‘non-intrusive’ checks…</p>
|
||||
|
||||
<pre>ruby wpscan.rb --url www.example.com</pre>
|
||||
|
||||
<p>Do wordlist password brute force on enumerated users using 50 threads…</p>
|
||||
|
||||
<pre>ruby wpscan.rb --url www.example.com --wordlist darkc0de.lst --threads 50</pre>
|
||||
|
||||
<p>Do wordlist password brute force on the ‘admin’ username only…</p>
|
||||
|
||||
<pre>ruby wpscan.rb --url www.example.com --wordlist darkc0de.lst --username admin</pre>
|
||||
|
||||
<p>Enumerate instaled plugins…</p>
|
||||
|
||||
<pre>ruby wpscan.rb --url www.example.com --enumerate p</pre>
|
||||
|
||||
<h2 id="label-WPSTOOLS+ARGUMENTS%3D%3D">WPSTOOLS ARGUMENTS==</h2>
|
||||
|
||||
<p>–help | -h This help screen. –Verbose | -v Verbose output. –update
|
||||
| -u Update to the latest revision. –generate_plugin_list [number of
|
||||
pages] Generate a new data/plugins.txt file. (supply number of
|
||||
<strong>pages</strong> to parse, default : 150) –gpl Alias for
|
||||
–generate_plugin_list –check-local-vulnerable-files | –clvf <local
|
||||
directory> Perform a recursive scan in the <local directory> to
|
||||
find vulnerable files or shells</p>
|
||||
|
||||
<h2 id="label-WPSTOOLS+EXAMPLES%3D%3D">WPSTOOLS EXAMPLES==</h2>
|
||||
<ul><li>
|
||||
<p>Generate a new ‘most popular’ plugin list, up to 150 pages …</p>
|
||||
</li></ul>
|
||||
|
||||
<p>ruby wpstools.rb –generate_plugin_list 150</p>
|
||||
<ul><li>
|
||||
<p>Locally scan a wordpress installation for vulnerable files or shells :</p>
|
||||
</li></ul>
|
||||
|
||||
<p>ruby wpstools.rb –check-local-vulnerable-files /var/www/wordpress/</p>
|
||||
|
||||
<h3 id="label-PROJECT+HOME%3D%3D%3D">PROJECT HOME===</h3>
|
||||
|
||||
<p><a href="http://www.wpscan.org">www.wpscan.org</a></p>
|
||||
|
||||
<h3 id="label-REPOSITORY%3D%3D%3D">REPOSITORY===</h3>
|
||||
|
||||
<p><a
|
||||
href="https://github.com/wpscanteam/wpscan">github.com/wpscanteam/wpscan</a></p>
|
||||
|
||||
<h3 id="label-ISSUES%3D%3D%3D">ISSUES===</h3>
|
||||
|
||||
<p><a
|
||||
href="https://github.com/wpscanteam/wpscan/issues">github.com/wpscanteam/wpscan/issues</a></p>
|
||||
|
||||
<h3 id="label-SPONSOR%3D%3D%3D">SPONSOR===</h3>
|
||||
|
||||
<p>WPScan is sponsored by the RandomStorm Open Source Initiative.</p>
|
||||
|
||||
<p>Visit RandomStorm at <a
|
||||
href="http://www.randomstorm.com">www.randomstorm.com</a></p>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,341 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class SvnParser - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpstools/plugins/list_generator/svn_parser.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-parse">#parse</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class SvnParser</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<p>This Class Parses SVN Repositories via HTTP</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-keep_empty_dirs" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">keep_empty_dirs</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-svn_root" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">svn_root</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-verbose" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">verbose</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(svn_root)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/svn_parser.rb, line 24</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">svn_root</span>)
|
||||
<span class="ruby-ivar">@svn_root</span> = <span class="ruby-identifier">svn_root</span>
|
||||
<span class="ruby-ivar">@svn_browser</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>
|
||||
<span class="ruby-ivar">@svn_hydra</span> = <span class="ruby-ivar">@svn_browser</span>.<span class="ruby-identifier">hydra</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-parse" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">parse</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="parse-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpstools/plugins/list_generator/svn_parser.rb, line 30</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">parse</span>
|
||||
<span class="ruby-identifier">get_root_directories</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- parse-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- parse-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,336 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class SvnUpdater - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/updater/svn_updater.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Updater.html">Updater</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-is_installed-3F">#is_installed?</a>
|
||||
|
||||
<li><a href="#method-i-local_revision_number">#local_revision_number</a>
|
||||
|
||||
<li><a href="#method-i-update">#update</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class SvnUpdater</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Constants -->
|
||||
<section id="constants-list" class="section">
|
||||
<h3 class="section-header">Constants</h3>
|
||||
<dl>
|
||||
|
||||
<dt id="REVISION_PATTERN">REVISION_PATTERN
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
<dt id="TRUNK_URL">TRUNK_URL
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
</dl>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-is_installed-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">is_installed?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="is_installed-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/svn_updater.rb, line 26</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_installed?</span>
|
||||
<span class="ruby-node">%x[svn info "#@repo_directory" --xml 2>&1]</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rrevision=/</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- is_installed-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- is_installed-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-local_revision_number" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">local_revision_number</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="local_revision_number-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/svn_updater.rb, line 30</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local_revision_number</span>
|
||||
<span class="ruby-identifier">local_revision</span> = <span class="ruby-node">%x[svn info "#@repo_directory" --xml 2>&1]</span>
|
||||
<span class="ruby-identifier">local_revision</span>[<span class="ruby-constant">REVISION_PATTERN</span>, <span class="ruby-value">1</span>].<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- local_revision_number-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- local_revision_number-method -->
|
||||
|
||||
|
||||
<div id="method-i-update" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">update</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="update-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/svn_updater.rb, line 35</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
|
||||
<span class="ruby-node">%x[svn up "#@repo_directory"]</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- update-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- update-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
247
doc/URI.html
@@ -1,247 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module URI - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/common_helper.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-escape">::escape</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module URI</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-escape" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">escape</span><span
|
||||
class="method-args">(str)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="escape-source">
|
||||
<pre><span class="ruby-comment"># File lib/common_helper.rb, line 102</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">escape</span>(<span class="ruby-identifier">str</span>)
|
||||
<span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form_component</span>(<span class="ruby-identifier">str</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-string">'+'</span>, <span class="ruby-string">'%20'</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- escape-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- escape-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
379
doc/Updater.html
@@ -1,379 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class Updater - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/updater/updater.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-is_installed-3F">#is_installed?</a>
|
||||
|
||||
<li><a href="#method-i-local_revision_number">#local_revision_number</a>
|
||||
|
||||
<li><a href="#method-i-update">#update</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class Updater</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<p>This class act as an absract one</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-repo_directory" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">repo_directory</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(repo_directory = nil)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>TODO : add a last ‘/ to <a
|
||||
href="Updater.html#attribute-i-repo_directory">#repo_directory</a> if it’s
|
||||
not present</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/updater.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">repo_directory</span> = <span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-ivar">@repo_directory</span> = <span class="ruby-identifier">repo_directory</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-is_installed-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">is_installed?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="is_installed-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/updater.rb, line 29</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_installed?</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- is_installed-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- is_installed-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-local_revision_number" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">local_revision_number</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="local_revision_number-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/updater.rb, line 33</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local_revision_number</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- local_revision_number-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- local_revision_number-method -->
|
||||
|
||||
|
||||
<div id="method-i-update" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">update</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="update-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/updater.rb, line 37</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- update-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- update-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,298 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class UpdaterFactory - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/updater/updater_factory.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-available_updaters_classes">::available_updaters_classes</a>
|
||||
|
||||
<li><a href="#method-c-get_updater">::get_updater</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class UpdaterFactory</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-get_updater" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_updater</span><span
|
||||
class="method-args">(repo_directory)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_updater-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/updater_factory.rb, line 21</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get_updater</span>(<span class="ruby-identifier">repo_directory</span>)
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">available_updaters_classes</span>().<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">updater_symbol</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">updater</span> = <span class="ruby-constant">Object</span>.<span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">updater_symbol</span>).<span class="ruby-identifier">new</span>(<span class="ruby-identifier">repo_directory</span>)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">updater</span>.<span class="ruby-identifier">is_installed?</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-identifier">updater</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_updater-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_updater-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="protected-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-available_updaters_classes" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">available_updaters_classes</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>return array of class symbols</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="available_updaters_classes-source">
|
||||
<pre><span class="ruby-comment"># File lib/updater/updater_factory.rb, line 35</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">available_updaters_classes</span>
|
||||
<span class="ruby-constant">Object</span>.<span class="ruby-identifier">constants</span>.<span class="ruby-identifier">grep</span>(<span class="ruby-regexp">%r^.+Updater$/</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- available_updaters_classes-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- available_updaters_classes-method -->
|
||||
|
||||
|
||||
</section><!-- protected-class-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,301 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class Vulnerable - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/vulnerable.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-vulnerabilities">#vulnerabilities</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class Vulnerable</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-vulns_file" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">vulns_file</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-vulns_xpath" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">vulns_xpath</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-vulnerabilities" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">vulnerabilities</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>@return an array of <a href="WpVulnerability.html">WpVulnerability</a> (can
|
||||
be empty)</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="vulnerabilities-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/vulnerable.rb, line 24</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">vulnerabilities</span>
|
||||
<span class="ruby-identifier">vulnerabilities</span> = []
|
||||
|
||||
<span class="ruby-identifier">xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-ivar">@vulns_file</span>)) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">config</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">noblanks</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">xml</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-ivar">@vulns_xpath</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">vulnerabilities</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpVulnerability</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'title'</span>).<span class="ruby-identifier">text</span>,
|
||||
<span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'reference'</span>).<span class="ruby-identifier">map</span>(&<span class="ruby-value">:text</span>),
|
||||
<span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'type'</span>).<span class="ruby-identifier">text</span>,
|
||||
<span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'metasploit'</span>).<span class="ruby-identifier">map</span>(&<span class="ruby-value">:text</span>)
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">vulnerabilities</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- vulnerabilities-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- vulnerabilities-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
593
doc/WebSite.html
@@ -1,593 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WebSite - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/web_site.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-page_hash">::page_hash</a>
|
||||
|
||||
<li><a href="#method-i-error_404_hash">#error_404_hash</a>
|
||||
|
||||
<li><a href="#method-i-has_basic_auth-3F">#has_basic_auth?</a>
|
||||
|
||||
<li><a href="#method-i-has_xml_rpc-3F">#has_xml_rpc?</a>
|
||||
|
||||
<li><a href="#method-i-homepage_hash">#homepage_hash</a>
|
||||
|
||||
<li><a href="#method-i-online-3F">#online?</a>
|
||||
|
||||
<li><a href="#method-i-redirection">#redirection</a>
|
||||
|
||||
<li><a href="#method-i-rss_url">#rss_url</a>
|
||||
|
||||
<li><a href="#method-i-wordpress-3F">#wordpress?</a>
|
||||
|
||||
<li><a href="#method-i-xml_rpc_url">#xml_rpc_url</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WebSite</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-page_hash" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">page_hash</span><span
|
||||
class="method-args">(url)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Return the MD5 hash of the page given by url</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="page_hash-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 94</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">page_hash</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>).<span class="ruby-identifier">body</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- page_hash-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- page_hash-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-error_404_hash" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">error_404_hash</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Return the MD5 hash of a 404 page</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="error_404_hash-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 106</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">error_404_hash</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@error_404_hash</span>
|
||||
<span class="ruby-identifier">non_existant_page</span> = <span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-identifier">rand</span>(<span class="ruby-value">999_999_999</span>).<span class="ruby-identifier">to_s</span>) <span class="ruby-operator">+</span> <span class="ruby-string">'.html'</span>
|
||||
<span class="ruby-ivar">@error_404_hash</span> = <span class="ruby-constant">WebSite</span>.<span class="ruby-identifier">page_hash</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">non_existant_page</span>).<span class="ruby-identifier">to_s</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@error_404_hash</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- error_404_hash-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- error_404_hash-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_basic_auth-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_basic_auth?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_basic_auth-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 26</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_basic_auth?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">401</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_basic_auth-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_basic_auth-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_xml_rpc-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_xml_rpc?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_xml_rpc-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 56</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_xml_rpc?</span>
|
||||
<span class="ruby-operator">!</span><span class="ruby-identifier">xml_rpc_url</span>.<span class="ruby-identifier">nil?</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_xml_rpc-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_xml_rpc-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-homepage_hash" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">homepage_hash</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="homepage_hash-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 98</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">homepage_hash</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@homepage_hash</span>
|
||||
<span class="ruby-ivar">@homepage_hash</span> = <span class="ruby-constant">WebSite</span>.<span class="ruby-identifier">page_hash</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@homepage_hash</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- homepage_hash-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- homepage_hash-method -->
|
||||
|
||||
|
||||
<div id="method-i-online-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">online?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Checks if the remote website is up.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="online-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 22</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">online?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- online-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- online-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-redirection" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">redirection</span><span
|
||||
class="method-args">(url = nil)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>See if the remote url returns 30x redirect This method is recursive Return
|
||||
a string with the redirection or nil</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="redirection-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 76</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">redirection</span>(<span class="ruby-identifier">url</span> = <span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">redirection</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">url</span> <span class="ruby-operator">||=</span> <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">301</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">302</span>
|
||||
<span class="ruby-identifier">redirection</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">headers_hash</span>[<span class="ruby-string">'location'</span>]
|
||||
|
||||
<span class="ruby-comment"># Let's check if there is a redirection in the redirection</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">other_redirection</span> = <span class="ruby-identifier">redirection</span>(<span class="ruby-identifier">redirection</span>)
|
||||
<span class="ruby-identifier">redirection</span> = <span class="ruby-identifier">other_redirection</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">redirection</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- redirection-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- redirection-method -->
|
||||
|
||||
|
||||
<div id="method-i-rss_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">rss_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Will try to find the rss url in the homepage Only the first one found iw
|
||||
returned</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="rss_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 116</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">rss_url</span>
|
||||
<span class="ruby-identifier">homepage_body</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">body</span>
|
||||
<span class="ruby-identifier">homepage_body</span>[<span class="ruby-regexp">%r{<link .* type="application/rss\+xml" .* href="([^"]+)" />}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- rss_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- rss_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-wordpress-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">wordpress?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>check if the remote website is actually running wordpress.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="wordpress-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 32</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wordpress?</span>
|
||||
<span class="ruby-identifier">wordpress</span> = <span class="ruby-keyword">false</span>
|
||||
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(
|
||||
<span class="ruby-identifier">login_url</span>(),
|
||||
{ <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> }
|
||||
)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r{WordPress}</span>
|
||||
<span class="ruby-identifier">wordpress</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(
|
||||
<span class="ruby-identifier">xml_rpc_url</span>,
|
||||
{ <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> }
|
||||
)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r{XML-RPC server accepts POST requests only}</span>
|
||||
<span class="ruby-identifier">wordpress</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">wordpress</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- wordpress-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- wordpress-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-xml_rpc_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">xml_rpc_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="xml_rpc_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 60</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">xml_rpc_url</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@xmlrpc_url</span>
|
||||
<span class="ruby-identifier">headers</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">headers_hash</span>
|
||||
<span class="ruby-identifier">value</span> = <span class="ruby-identifier">headers</span>[<span class="ruby-string">'x-pingback'</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-ivar">@xmlrpc_url</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@xmlrpc_url</span> = <span class="ruby-identifier">value</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@xmlrpc_url</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- xml_rpc_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- xml_rpc_url-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,311 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpConfigBackup - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_config_backup.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-config_backup_files">::config_backup_files</a>
|
||||
|
||||
<li><a href="#method-i-config_backup">#config_backup</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpConfigBackup</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-config_backup_files" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">config_backup_files</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>@return <a href="Array.html">Array</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="config_backup_files-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_config_backup.rb, line 49</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">config_backup_files</span>
|
||||
<span class="ruby-node">%w{
|
||||
wp-config.php~ #wp-config.php# wp-config.php.save wp-config.php.swp wp-config.php.swo wp-config.php_bak
|
||||
wp-config.bak wp-config.php.bak wp-config.save wp-config.old wp-config.php.old wp-config.php.orig
|
||||
wp-config.orig wp-config.php.original wp-config.original wp-config.txt
|
||||
}</span> <span class="ruby-comment"># thanks to Feross.org for these</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- config_backup_files-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- config_backup_files-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-config_backup" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">config_backup</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Checks to see if wp-config.php has a backup See <a
|
||||
href="http://www.feross.org/cmsploit/">www.feross.org/cmsploit/</a> return
|
||||
an array of backup config files url</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="config_backup-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_config_backup.rb, line 24</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">config_backup</span>
|
||||
<span class="ruby-identifier">found</span> = []
|
||||
<span class="ruby-identifier">backups</span> = <span class="ruby-constant">WpConfigBackup</span>.<span class="ruby-identifier">config_backup_files</span>
|
||||
<span class="ruby-identifier">browser</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>
|
||||
<span class="ruby-identifier">hydra</span> = <span class="ruby-identifier">browser</span>.<span class="ruby-identifier">hydra</span>
|
||||
|
||||
<span class="ruby-identifier">backups</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">file_url</span> = <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-constant">URI</span>.<span class="ruby-identifier">escape</span>(<span class="ruby-identifier">file</span>)).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">request</span> = <span class="ruby-identifier">browser</span>.<span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">file_url</span>)
|
||||
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">on_complete</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-regexp">%r{define}</span>] <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-regexp">%r{<\s?html}</span>]
|
||||
<span class="ruby-identifier">found</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">file_url</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">queue</span>(<span class="ruby-identifier">request</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">hydra</span>.<span class="ruby-identifier">run</span>
|
||||
|
||||
<span class="ruby-identifier">found</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- config_backup-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- config_backup-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,333 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpDetector - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_detector.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-aggressive_detection">::aggressive_detection</a>
|
||||
|
||||
<li><a href="#method-c-passive_detection">::passive_detection</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpDetector</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-aggressive_detection" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">aggressive_detection</span><span
|
||||
class="method-args">(options, items = [])</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="aggressive_detection-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_detector.rb, line 21</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">aggressive_detection</span>(<span class="ruby-identifier">options</span>, <span class="ruby-identifier">items</span> = [])
|
||||
<span class="ruby-constant">WpOptions</span>.<span class="ruby-identifier">check_options</span>(<span class="ruby-identifier">options</span>)
|
||||
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">items</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">items</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">items</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:only_vulnerable_ones</span>]
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">passive_detection</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>], <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>], <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>])
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">enum_results</span> = <span class="ruby-constant">WpEnumerator</span>.<span class="ruby-identifier">enumerate</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">enum_results</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">enum_result</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">already_present</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-comment"># Already found via passive detection</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">enum_result</span>.<span class="ruby-identifier">name</span>
|
||||
<span class="ruby-identifier">already_present</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">already_present</span>
|
||||
<span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">enum_result</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- aggressive_detection-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- aggressive_detection-method -->
|
||||
|
||||
|
||||
<div id="method-c-passive_detection" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">passive_detection</span><span
|
||||
class="method-args">(url, type, wp_content_dir)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>plugins and themes can be found in the source code :</p>
|
||||
|
||||
<pre><script src='http://example.com/wp-content/plugins/s2member/...' />
|
||||
<link rel='stylesheet' href='http://example.com/wp-content/plugins/wp-minify/..' type='text/css' media='screen'/>
|
||||
...</pre>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="passive_detection-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_detector.rb, line 52</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">passive_detection</span>(<span class="ruby-identifier">url</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">wp_content_dir</span>)
|
||||
<span class="ruby-identifier">items</span> = []
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-identifier">regex1</span> = <span class="ruby-regexp">%r{(?:[^=:]+)\s?(?:=|:)\s?(?:"|')[^"']+\\?/}</span>
|
||||
<span class="ruby-identifier">regex2</span> = <span class="ruby-regexp">%r{\\?/}</span>
|
||||
<span class="ruby-identifier">regex3</span> = <span class="ruby-regexp">%r{\\?/([^/\\"']+)\\?(?:/|"|')}</span>
|
||||
<span class="ruby-comment"># Custom wp-content dir is now used in this regex</span>
|
||||
<span class="ruby-identifier">names</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-node">%r#{regex1}#{Regexp.escape(wp_content_dir)}#{regex2}#{Regexp.escape(type)}#{regex3}/</span>)
|
||||
|
||||
<span class="ruby-identifier">names</span>.<span class="ruby-identifier">flatten!</span>
|
||||
<span class="ruby-identifier">names</span>.<span class="ruby-identifier">uniq!</span>
|
||||
|
||||
<span class="ruby-identifier">names</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">item</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">items</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpItem</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">url</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">item</span>,
|
||||
<span class="ruby-identifier">type</span><span class="ruby-operator">:</span> <span class="ruby-identifier">type</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-node">"#{item}/"</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">wp_content_dir</span>,
|
||||
<span class="ruby-identifier">vulns_file</span><span class="ruby-operator">:</span> <span class="ruby-string">''</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">items</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- passive_detection-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- passive_detection-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,418 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpEnumerator - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_enumerator.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-enumerate">::enumerate</a>
|
||||
|
||||
<li><a href="#method-c-generate_items">::generate_items</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpEnumerator</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<p>Enumerate over a given set of items and check if they exist</p>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-enumerate" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">enumerate</span><span
|
||||
class="method-args">(options = {}, items = nil)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Enumerate the given Targets</p>
|
||||
|
||||
<h4 id="method-c-enumerate-label-Attributes">Attributes</h4>
|
||||
<ul><li>
|
||||
<p><code>targets</code> - targets to enumerate</p>
|
||||
</li><li><ul><li>
|
||||
<p><code>:base_url</code> - Base URL</p>
|
||||
</li></ul>
|
||||
</li><li><ul><li>
|
||||
<p><code>:wp_content</code> - wp-content directory</p>
|
||||
</li></ul>
|
||||
</li><li><ul><li>
|
||||
<p><code>:path</code> - Path to plugin</p>
|
||||
</li></ul>
|
||||
</li><li>
|
||||
<p><code>type</code> - "plugins" or "themes", item to enumerate</p>
|
||||
</li><li>
|
||||
<p><code>filename</code> - filename in the data directory with paths</p>
|
||||
</li><li>
|
||||
<p><code>show_progression</code> - Show a progress bar during enumeration</p>
|
||||
</li></ul>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="enumerate-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_enumerator.rb, line 33</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">enumerate</span>(<span class="ruby-identifier">options</span> = {}, <span class="ruby-identifier">items</span> = <span class="ruby-keyword">nil</span>)
|
||||
|
||||
<span class="ruby-constant">WpOptions</span>.<span class="ruby-identifier">check_options</span>(<span class="ruby-identifier">options</span>)
|
||||
|
||||
<span class="ruby-identifier">targets</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">generate_items</span>(<span class="ruby-identifier">options</span>)
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">items</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">items</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">targets</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">i</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">found</span> = []
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">request_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">enum_browser</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>
|
||||
<span class="ruby-identifier">enum_hydra</span> = <span class="ruby-identifier">enum_browser</span>.<span class="ruby-identifier">hydra</span>
|
||||
<span class="ruby-identifier">enumerate_size</span> = <span class="ruby-identifier">targets</span>.<span class="ruby-identifier">size</span>
|
||||
<span class="ruby-identifier">exclude_regexp</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:exclude_content_based</span>] <span class="ruby-operator">?</span> <span class="ruby-node">%r{#{options[:exclude_content_based]}}</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">show_progression</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:show_progression</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword">false</span>
|
||||
|
||||
<span class="ruby-identifier">targets</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">target</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">url</span> = <span class="ruby-identifier">target</span>.<span class="ruby-identifier">get_full_url</span>
|
||||
|
||||
<span class="ruby-identifier">request</span> = <span class="ruby-identifier">enum_browser</span>.<span class="ruby-identifier">forge_request</span>(<span class="ruby-identifier">url</span>, { <span class="ruby-identifier">cache_timeout</span><span class="ruby-operator">:</span> <span class="ruby-value">0</span>, <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span> })
|
||||
<span class="ruby-identifier">request_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">on_complete</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">page_hash</span> = <span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
||||
|
||||
<span class="ruby-identifier">print</span> <span class="ruby-node">"\rChecking for #{enumerate_size} total #{options[:type]}... #{(request_count * 100) / enumerate_size}% complete."</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">show_progression</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-constant">WpTarget</span>.<span class="ruby-identifier">valid_response_codes</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">page_hash</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:error_404_hash</span>] <span class="ruby-keyword">and</span> <span class="ruby-identifier">page_hash</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:homepage_hash</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:exclude_content_based</span>]
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-identifier">exclude_regexp</span>]
|
||||
<span class="ruby-identifier">found</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">target</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">found</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">target</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">enum_hydra</span>.<span class="ruby-identifier">queue</span>(<span class="ruby-identifier">request</span>)
|
||||
<span class="ruby-identifier">queue_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">queue_count</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">enum_browser</span>.<span class="ruby-identifier">max_threads</span>
|
||||
<span class="ruby-identifier">enum_hydra</span>.<span class="ruby-identifier">run</span>
|
||||
<span class="ruby-identifier">queue_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">enum_hydra</span>.<span class="ruby-identifier">run</span>
|
||||
<span class="ruby-identifier">found</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- enumerate-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- enumerate-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="protected-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-generate_items" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">generate_items</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="generate_items-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_enumerator.rb, line 93</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">generate_items</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-identifier">only_vulnerable</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:only_vulnerable_ones</span>]
|
||||
<span class="ruby-identifier">file</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>]
|
||||
<span class="ruby-identifier">vulns_file</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>]
|
||||
<span class="ruby-identifier">wp_content_dir</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>]
|
||||
<span class="ruby-identifier">url</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>]
|
||||
<span class="ruby-identifier">plugins_dir</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_plugins_dir</span>]
|
||||
<span class="ruby-identifier">targets_url</span> = []
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">only_vulnerable</span>
|
||||
<span class="ruby-comment"># Open and parse the 'most popular' plugin list...</span>
|
||||
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">file</span>, <span class="ruby-string">'r'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">readlines</span>.<span class="ruby-identifier">collect</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">l</span> = <span class="ruby-identifier">line</span>.<span class="ruby-identifier">strip</span>
|
||||
<span class="ruby-identifier">targets_url</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpItem</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">url</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-identifier">l</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">wp_content_dir</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">l</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r.+\/.+/</span> <span class="ruby-operator">?</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-identifier">l</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">l</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r\/$/</span>, <span class="ruby-string">''</span>),
|
||||
<span class="ruby-identifier">vulns_file</span><span class="ruby-operator">:</span> <span class="ruby-identifier">vulns_file</span>,
|
||||
<span class="ruby-identifier">type</span><span class="ruby-operator">:</span> <span class="ruby-identifier">type</span>,
|
||||
<span class="ruby-identifier">wp_plugins_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">plugins_dir</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-comment"># Timthumbs have no XML file</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rtimthumbs/</span>
|
||||
<span class="ruby-identifier">xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">vulns_file</span>)) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">config</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">noblanks</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-comment"># We check if the plugin name from the plugin_vulns_file is already in targets, otherwise we add it</span>
|
||||
<span class="ruby-identifier">xml</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath_2</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">name</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-string">'name'</span>).<span class="ruby-identifier">text</span>
|
||||
<span class="ruby-identifier">targets_url</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpItem</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">url</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-identifier">name</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">wp_content_dir</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">name</span>,
|
||||
<span class="ruby-identifier">vulns_file</span><span class="ruby-operator">:</span> <span class="ruby-identifier">vulns_file</span>,
|
||||
<span class="ruby-identifier">type</span><span class="ruby-operator">:</span> <span class="ruby-identifier">type</span>,
|
||||
<span class="ruby-identifier">wp_plugins_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">plugins_dir</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">targets_url</span>.<span class="ruby-identifier">flatten!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">name</span> }
|
||||
<span class="ruby-identifier">targets_url</span>.<span class="ruby-identifier">uniq!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">name</span> }
|
||||
<span class="ruby-comment"># randomize the plugins array to *maybe* help in some crappy IDS/IPS/WAF detection</span>
|
||||
<span class="ruby-identifier">targets_url</span>.<span class="ruby-identifier">sort_by!</span> { <span class="ruby-identifier">rand</span> }
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- generate_items-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- generate_items-method -->
|
||||
|
||||
|
||||
</section><!-- protected-class-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,280 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpFullPathDisclosure - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_full_path_disclosure.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-full_path_disclosure_url">#full_path_disclosure_url</a>
|
||||
|
||||
<li><a href="#method-i-has_full_path_disclosure-3F">#has_full_path_disclosure?</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpFullPathDisclosure</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-full_path_disclosure_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">full_path_disclosure_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="full_path_disclosure_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_full_path_disclosure.rb, line 27</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">full_path_disclosure_url</span>
|
||||
<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'wp-includes/rss-functions.php'</span>).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- full_path_disclosure_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- full_path_disclosure_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_full_path_disclosure-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_full_path_disclosure?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Check for Full Path Disclosure (FPD)</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_full_path_disclosure-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_full_path_disclosure.rb, line 22</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_full_path_disclosure?</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">full_path_disclosure_url</span>())
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-regexp">%r{Fatal error}</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_full_path_disclosure-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_full_path_disclosure-3F-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
955
doc/WpItem.html
@@ -1,955 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpItem - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_item.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Vulnerable.html">Vulnerable</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-3C-3D-3E">#<=></a>
|
||||
|
||||
<li><a href="#method-i-3D-3D">#==</a>
|
||||
|
||||
<li><a href="#method-i-3D-3D-3D">#===</a>
|
||||
|
||||
<li><a href="#method-i-changelog_url">#changelog_url</a>
|
||||
|
||||
<li><a href="#method-i-directory_listing-3F">#directory_listing?</a>
|
||||
|
||||
<li><a href="#method-i-extract_name_from_url">#extract_name_from_url</a>
|
||||
|
||||
<li><a href="#method-i-get_full_url">#get_full_url</a>
|
||||
|
||||
<li><a href="#method-i-get_sub_folder">#get_sub_folder</a>
|
||||
|
||||
<li><a href="#method-i-get_url_without_filename">#get_url_without_filename</a>
|
||||
|
||||
<li><a href="#method-i-has_changelog-3F">#has_changelog?</a>
|
||||
|
||||
<li><a href="#method-i-has_readme-3F">#has_readme?</a>
|
||||
|
||||
<li><a href="#method-i-readme_url">#readme_url</a>
|
||||
|
||||
<li><a href="#method-i-to_s">#to_s</a>
|
||||
|
||||
<li><a href="#method-i-version">#version</a>
|
||||
|
||||
<li><a href="#method-i-wp_org_item-3F">#wp_org_item?</a>
|
||||
|
||||
<li><a href="#method-i-wp_org_url">#wp_org_url</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpItem</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-base_url" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">base_url</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-name" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">name</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-path" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">path</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-type" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">type</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-vulns_file" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">vulns_file</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-vulns_xpath" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">vulns_xpath</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-wp_content_dir" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">wp_content_dir</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-wp_plugins_dir" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">wp_plugins_dir</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-ivar">@type</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>]
|
||||
<span class="ruby-ivar">@wp_content_dir</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>] <span class="ruby-operator">?</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>].<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r^\//</span>, <span class="ruby-string">''</span>).<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r\/$/</span>, <span class="ruby-string">''</span>) <span class="ruby-operator">:</span> <span class="ruby-string">'wp-content'</span>
|
||||
<span class="ruby-ivar">@wp_plugins_dir</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_plugins_dir</span>] <span class="ruby-operator">||</span> <span class="ruby-node">"#@wp_content_dir/plugins"</span>
|
||||
<span class="ruby-ivar">@base_url</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-ivar">@path</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:path</span>]
|
||||
<span class="ruby-ivar">@name</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:name</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">extract_name_from_url</span>
|
||||
<span class="ruby-ivar">@vulns_file</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>]
|
||||
<span class="ruby-ivar">@vulns_xpath</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>].<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r\$name\$/</span>, <span class="ruby-ivar">@name</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
||||
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'base_url not set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@base_url</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'path not set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@path</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'wp_content_dir not set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@wp_content_dir</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'name not set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@name</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'vulns_file not set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@vulns_file</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'type not set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@type</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-3C-3D-3E" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name"><=></span><span
|
||||
class="method-args">(other)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Compare</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="3C-3D-3E-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 149</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-operator"><=></span>(<span class="ruby-identifier">other</span>)
|
||||
<span class="ruby-identifier">other</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator"><=></span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- 3C-3D-3E-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- 3C-3D-3E-method -->
|
||||
|
||||
|
||||
<div id="method-i-3D-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">==</span><span
|
||||
class="method-args">(other)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Compare</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="3D-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 139</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">other</span>)
|
||||
<span class="ruby-identifier">other</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- 3D-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- 3D-3D-method -->
|
||||
|
||||
|
||||
<div id="method-i-3D-3D-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">===</span><span
|
||||
class="method-args">(other)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Compare</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="3D-3D-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 144</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-operator">===</span>(<span class="ruby-identifier">other</span>)
|
||||
<span class="ruby-identifier">other</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- 3D-3D-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- 3D-3D-3D-method -->
|
||||
|
||||
|
||||
<div id="method-i-changelog_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">changelog_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Url for changelog.txt</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="changelog_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 159</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">changelog_url</span>
|
||||
<span class="ruby-identifier">get_url_without_filename</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'changelog.txt'</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- changelog_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- changelog_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-directory_listing-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">directory_listing?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Is directory listing enabled?</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="directory_listing-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 122</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">directory_listing?</span>
|
||||
<span class="ruby-comment"># Need to remove to file part from the url</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">get_url_without_filename</span>).<span class="ruby-identifier">body</span>[<span class="ruby-regexp">%r{<title>Index of}</span>] <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- directory_listing-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- directory_listing-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-extract_name_from_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">extract_name_from_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Extract item name from a url</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="extract_name_from_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 128</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">extract_name_from_url</span>
|
||||
<span class="ruby-identifier">get_full_url</span>.<span class="ruby-identifier">to_s</span>[<span class="ruby-regexp">%r{^(https?://.*/([^/]+)/)}</span>, <span class="ruby-value">2</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- extract_name_from_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- extract_name_from_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_full_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_full_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Get the full url for this item</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_full_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 84</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_full_url</span>
|
||||
<span class="ruby-identifier">url</span> = <span class="ruby-ivar">@base_url</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">end_with?</span>(<span class="ruby-string">'/'</span>) <span class="ruby-operator">?</span> <span class="ruby-ivar">@base_url</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">:</span> <span class="ruby-node">"#@base_url/"</span>
|
||||
<span class="ruby-comment"># remove first and last /</span>
|
||||
<span class="ruby-identifier">wp_content_dir</span> = <span class="ruby-ivar">@wp_content_dir</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r^\//</span>, <span class="ruby-string">""</span>).<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r\/$/</span>, <span class="ruby-string">''</span>)
|
||||
<span class="ruby-comment"># remove first /</span>
|
||||
<span class="ruby-identifier">path</span> = <span class="ruby-ivar">@path</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">%r^\//</span>, <span class="ruby-string">''</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-string">'plugins'</span>
|
||||
<span class="ruby-comment"># plugins can be outside of wp-content. wp_content_dir included in wp_plugins_dir</span>
|
||||
<span class="ruby-identifier">ret</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode</span>(<span class="ruby-node">"#{url}#@wp_plugins_dir/#{path}"</span>))
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-string">'timthumbs'</span>
|
||||
<span class="ruby-comment"># timthumbs have folder in path variable</span>
|
||||
<span class="ruby-identifier">ret</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode</span>(<span class="ruby-node">"#{url}#{wp_content_dir}/#{path}"</span>))
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">ret</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode</span>(<span class="ruby-node">"#{url}#{wp_content_dir}/#{get_sub_folder}/#{path}"</span>))
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">ret</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_full_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_full_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_sub_folder" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_sub_folder</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_sub_folder-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 70</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_sub_folder</span>
|
||||
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@type</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'themes'</span>
|
||||
<span class="ruby-identifier">folder</span> = <span class="ruby-string">'themes'</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'timthumbs'</span>
|
||||
<span class="ruby-comment"># not needed</span>
|
||||
<span class="ruby-identifier">folder</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-node">"unknown type #@type"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">folder</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_sub_folder-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_sub_folder-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_url_without_filename" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_url_without_filename</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Gets the full url for this item without filenames</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_url_without_filename-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 103</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_url_without_filename</span>
|
||||
<span class="ruby-identifier">location_url</span> = <span class="ruby-identifier">get_full_url</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">valid_location_url</span> = <span class="ruby-identifier">location_url</span>[<span class="ruby-regexp">%r{^(https?://.*/)[^.]+\.[^/]+$}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">valid_location_url</span>
|
||||
<span class="ruby-identifier">valid_location_url</span> = <span class="ruby-identifier">add_trailing_slash</span>(<span class="ruby-identifier">location_url</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode</span>(<span class="ruby-identifier">valid_location_url</span>))
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_url_without_filename-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_url_without_filename-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_changelog-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_changelog?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>changelog.txt present?</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_changelog-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 173</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_changelog?</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@changelog</span>
|
||||
<span class="ruby-identifier">status</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">changelog_url</span>).<span class="ruby-identifier">code</span>
|
||||
<span class="ruby-ivar">@changelog</span> = <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@changelog</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_changelog-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_changelog-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_readme-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_readme?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>readme.txt present?</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_readme-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 164</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_readme?</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@readme</span>
|
||||
<span class="ruby-identifier">status</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">readme_url</span>).<span class="ruby-identifier">code</span>
|
||||
<span class="ruby-ivar">@readme</span> = <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@readme</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_readme-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_readme-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-readme_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">readme_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Url for readme.txt</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="readme_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 154</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">readme_url</span>
|
||||
<span class="ruby-identifier">get_url_without_filename</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'readme.txt'</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- readme_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- readme_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-to_s" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">to_s</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>To string. Adds a version number if detected</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="to_s-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 133</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">item_version</span> = <span class="ruby-identifier">version</span>
|
||||
<span class="ruby-node">"#@name#{' v' + item_version.strip if item_version}"</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- to_s-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- to_s-method -->
|
||||
|
||||
|
||||
<div id="method-i-version" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">version</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Returns version number from readme.txt if it exists</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="version-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 113</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">version</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@version</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">get_full_url</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'readme.txt'</span>).<span class="ruby-identifier">to_s</span>)
|
||||
<span class="ruby-ivar">@version</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{stable tag: #{WpVersion.version_pattern}}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@version</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- version-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- version-method -->
|
||||
|
||||
|
||||
<div id="method-i-wp_org_item-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">wp_org_item?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>returns true if this theme or plugin is hosted on wordpress.org</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="wp_org_item-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 57</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wp_org_item?</span>
|
||||
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@type</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'themes'</span>
|
||||
<span class="ruby-identifier">file</span> = <span class="ruby-constant">THEMES_FULL_FILE</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'plugins'</span>
|
||||
<span class="ruby-identifier">file</span> = <span class="ruby-constant">PLUGINS_FULL_FILE</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-node">"Unknown type #@type"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">f</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">readlines</span>(<span class="ruby-identifier">file</span>, <span class="ruby-identifier">encoding</span><span class="ruby-operator">:</span> <span class="ruby-string">'UTF-8'</span>).<span class="ruby-identifier">grep</span>(<span class="ruby-node">%r^#{Regexp.escape(@name)}$/</span>)
|
||||
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">false</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- wp_org_item-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- wp_org_item-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-wp_org_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">wp_org_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>The wordpress.org plugins directory URL See: <a
|
||||
href="https://github.com/wpscanteam/wpscan/issues/100">github.com/wpscanteam/wpscan/issues/100</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="wp_org_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_item.rb, line 45</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wp_org_url</span>
|
||||
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@type</span>
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'themes'</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-constant">URI</span>(<span class="ruby-string">'http://wordpress.org/extend/themes/'</span>).<span class="ruby-identifier">merge</span>(<span class="ruby-node">"#@name/"</span>)
|
||||
<span class="ruby-keyword">when</span> <span class="ruby-string">'plugins'</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-constant">URI</span>(<span class="ruby-string">'http://wordpress.org/extend/plugins/'</span>).<span class="ruby-identifier">merge</span>(<span class="ruby-node">"#@name/"</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-node">"No Wordpress URL for #@type"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- wp_org_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- wp_org_url-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,728 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpLoginProtection - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_login_protection.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-better_wp_security_url">#better_wp_security_url</a>
|
||||
|
||||
<li><a href="#method-i-bluetrait_event_viewer_url">#bluetrait_event_viewer_url</a>
|
||||
|
||||
<li><a href="#method-i-has_better_wp_security_protection-3F">#has_better_wp_security_protection?</a>
|
||||
|
||||
<li><a href="#method-i-has_bluetrait_event_viewer_protection-3F">#has_bluetrait_event_viewer_protection?</a>
|
||||
|
||||
<li><a href="#method-i-has_limit_login_attempts_protection-3F">#has_limit_login_attempts_protection?</a>
|
||||
|
||||
<li><a href="#method-i-has_login_lock_protection-3F">#has_login_lock_protection?</a>
|
||||
|
||||
<li><a href="#method-i-has_login_lockdown_protection-3F">#has_login_lockdown_protection?</a>
|
||||
|
||||
<li><a href="#method-i-has_login_protection-3F">#has_login_protection?</a>
|
||||
|
||||
<li><a href="#method-i-has_login_security_solution_protection-3F">#has_login_security_solution_protection?</a>
|
||||
|
||||
<li><a href="#method-i-has_simple_login_lockdown_protection-3F">#has_simple_login_lockdown_protection?</a>
|
||||
|
||||
<li><a href="#method-i-limit_login_attempts_url">#limit_login_attempts_url</a>
|
||||
|
||||
<li><a href="#method-i-login_protection_plugin">#login_protection_plugin</a>
|
||||
|
||||
<li><a href="#method-i-login_security_solution_url">#login_security_solution_url</a>
|
||||
|
||||
<li><a href="#method-i-simple_login_lockdown_url">#simple_login_lockdown_url</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpLoginProtection</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Constants -->
|
||||
<section id="constants-list" class="section">
|
||||
<h3 class="section-header">Constants</h3>
|
||||
<dl>
|
||||
|
||||
<dt id="LOGIN_PROTECTION_METHOD_PATTERN">LOGIN_PROTECTION_METHOD_PATTERN
|
||||
|
||||
<dd class="description">
|
||||
|
||||
|
||||
</dl>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-has_login_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_login_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_login_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_login_protection?</span>
|
||||
<span class="ruby-operator">!</span><span class="ruby-identifier">login_protection_plugin</span>().<span class="ruby-identifier">nil?</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_login_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_login_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-login_protection_plugin" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login_protection_plugin</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Checks if a login protection plugin is enabled <a
|
||||
href="http://code.google.com/p/wpscan/issues/detail?id=111">code.google.com/p/wpscan/issues/detail?id=111</a>
|
||||
return a <a href="WpPlugin.html">WpPlugin</a> object or nil if no one is
|
||||
found</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login_protection_plugin-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 32</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">login_protection_plugin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@login_protection_plugin</span>
|
||||
<span class="ruby-identifier">protected_methods</span>.<span class="ruby-identifier">grep</span>(<span class="ruby-constant">LOGIN_PROTECTION_METHOD_PATTERN</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">symbol_to_call</span><span class="ruby-operator">|</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">send</span>(<span class="ruby-identifier">symbol_to_call</span>)
|
||||
<span class="ruby-identifier">plugin_name</span> = <span class="ruby-identifier">symbol_to_call</span>[<span class="ruby-constant">LOGIN_PROTECTION_METHOD_PATTERN</span>, <span class="ruby-value">1</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-string">'_'</span>, <span class="ruby-string">'-'</span>)
|
||||
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-ivar">@login_protection_plugin</span> = <span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">plugin_name</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@uri</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-node">"/plugins/#{plugin_name}/"</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@wp_content_dir</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@login_protection_plugin</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@login_protection_plugin</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- login_protection_plugin-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- login_protection_plugin-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
<section id="protected-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-better_wp_security_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">better_wp_security_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="better_wp_security_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 69</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">better_wp_security_url</span>
|
||||
<span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@wp_content_dir</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@uri</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-string">'/plugins/better-wp-security/'</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-string">'better-wp-security'</span>
|
||||
).<span class="ruby-identifier">get_url_without_filename</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- better_wp_security_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- better_wp_security_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-bluetrait_event_viewer_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">bluetrait_event_viewer_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="bluetrait_event_viewer_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 121</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">bluetrait_event_viewer_url</span>
|
||||
<span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@wp_content_dir</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@uri</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-string">'/plugins/bluetrait-event-viewer/'</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-string">'bluetrait-event-viewer'</span>
|
||||
).<span class="ruby-identifier">get_url_without_filename</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- bluetrait_event_viewer_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- bluetrait_event_viewer_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_better_wp_security_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_better_wp_security_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://wordpress.org/extend/plugins/better-wp-security/">wordpress.org/extend/plugins/better-wp-security/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_better_wp_security_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 65</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_better_wp_security_protection?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">better_wp_security_url</span>()).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">404</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_better_wp_security_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_better_wp_security_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_bluetrait_event_viewer_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_bluetrait_event_viewer_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://wordpress.org/extend/plugins/bluetrait-event-viewer/">wordpress.org/extend/plugins/bluetrait-event-viewer/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_bluetrait_event_viewer_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 117</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_bluetrait_event_viewer_protection?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">bluetrait_event_viewer_url</span>()).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">404</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_bluetrait_event_viewer_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_bluetrait_event_viewer_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_limit_login_attempts_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_limit_login_attempts_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://wordpress.org/extend/plugins/limit-login-attempts/">wordpress.org/extend/plugins/limit-login-attempts/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_limit_login_attempts_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 104</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_limit_login_attempts_protection?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">limit_login_attempts_url</span>()).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">404</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_limit_login_attempts_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_limit_login_attempts_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_login_lock_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_login_lock_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://wordpress.org/extend/plugins/login-lock/">wordpress.org/extend/plugins/login-lock/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_login_lock_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 60</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_login_lock_protection?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">login_url</span>()).<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r{LOGIN LOCK}</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_login_lock_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_login_lock_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_login_lockdown_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_login_lockdown_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Thanks to Alip Aswalid for providing this method. <a
|
||||
href="http://wordpress.org/extend/plugins/login-lockdown/">wordpress.org/extend/plugins/login-lockdown/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_login_lockdown_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 55</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_login_lockdown_protection?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">login_url</span>()).<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r{Login LockDown}</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_login_lockdown_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_login_lockdown_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_login_security_solution_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_login_security_solution_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://wordpress.org/extend/plugins/login-security-solution/">wordpress.org/extend/plugins/login-security-solution/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_login_security_solution_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 91</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_login_security_solution_protection?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">login_security_solution_url</span>()).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">404</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_login_security_solution_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_login_security_solution_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_simple_login_lockdown_protection-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_simple_login_lockdown_protection?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://wordpress.org/extend/plugins/simple-login-lockdown/">wordpress.org/extend/plugins/simple-login-lockdown/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_simple_login_lockdown_protection-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 78</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_simple_login_lockdown_protection?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">simple_login_lockdown_url</span>()).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">404</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_simple_login_lockdown_protection-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_simple_login_lockdown_protection-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-limit_login_attempts_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">limit_login_attempts_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="limit_login_attempts_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 108</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">limit_login_attempts_url</span>
|
||||
<span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@wp_content_dir</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@uri</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-string">'/plugins/limit-login-attempts/'</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-string">'limit-login-attempts'</span>
|
||||
).<span class="ruby-identifier">get_url_without_filename</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- limit_login_attempts_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- limit_login_attempts_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-login_security_solution_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login_security_solution_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login_security_solution_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 95</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">login_security_solution_url</span>
|
||||
<span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@wp_content_dir</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@uri</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-string">'/plugins/login-security-solution/'</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-string">'login-security-solution'</span>
|
||||
).<span class="ruby-identifier">get_url_without_filename</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- login_security_solution_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- login_security_solution_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-simple_login_lockdown_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">simple_login_lockdown_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="simple_login_lockdown_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_login_protection.rb, line 82</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">simple_login_lockdown_url</span>
|
||||
<span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@wp_content_dir</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@uri</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-string">'/plugins/simple-login-lockdown/'</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-string">'simple-login-lockdown'</span>
|
||||
).<span class="ruby-identifier">get_url_without_filename</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- simple_login_lockdown_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- simple_login_lockdown_url-method -->
|
||||
|
||||
|
||||
</section><!-- protected-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,291 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpOptions - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_options.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-check_options">::check_options</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpOptions</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
<p>Options Hash</p>
|
||||
|
||||
<h4 id="label-Options">Options</h4>
|
||||
<ul><li>
|
||||
<p><code>url</code> - The base URL of the WordPress site</p>
|
||||
</li><li>
|
||||
<p><code>only_vulnerable_ones</code> - Only detect vulnerable items</p>
|
||||
</li><li>
|
||||
<p><code>file</code> - Filename with items to detect</p>
|
||||
</li><li>
|
||||
<p><code>vulns_file</code> - XML file with vulnerabilities</p>
|
||||
</li><li>
|
||||
<p><code>vulns_xpath</code> - XPath for vulnerability XML file</p>
|
||||
</li><li>
|
||||
<p><code>vulns_xpath_2</code> - XPath for vulnerability XML file</p>
|
||||
</li><li>
|
||||
<p><code>wp_content_dir</code> - Name of the wp-content directory</p>
|
||||
</li><li>
|
||||
<p><code>show_progression</code> - Show a progress bar during enumeration</p>
|
||||
</li><li>
|
||||
<p><code>error_404_hash</code> - MD5 hash of a 404 page</p>
|
||||
</li><li>
|
||||
<p><code>type</code> - Type: plugins, themes</p>
|
||||
</li></ul>
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-check_options" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">check_options</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="check_options-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_options.rb, line 34</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">check_options</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'base_url must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'only_vulnerable_ones must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:only_vulnerable_ones</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'file must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'vulns_file must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'vulns_xpath must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'vulns_xpath_2 must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath_2</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath_2</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'wp_content_dir must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'show_progression must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:show_progression</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'error_404_hash must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:error_404_hash</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:error_404_hash</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'type must be set'</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rplugins/</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rthemes/</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rtimthumbs/</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-node">"Unknown type #{options[:type]}"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- check_options-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- check_options-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,335 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpPlugin - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_plugin.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="WpItem.html">WpItem</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-error_log-3F">#error_log?</a>
|
||||
|
||||
<li><a href="#method-i-error_log_url">#error_log_url</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpPlugin</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_plugin.rb, line 20</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] <span class="ruby-operator">==</span> <span class="ruby-string">''</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] = <span class="ruby-constant">PLUGINS_VULNS_FILE</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>] = <span class="ruby-string">"//plugin[@name='$name$']/vulnerability"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath_2</span>] = <span class="ruby-string">'//plugin'</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] = <span class="ruby-string">'plugins'</span>
|
||||
|
||||
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-error_log-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">error_log?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Discover any error_log files created by WordPress These are created by the
|
||||
WordPress error_log() function They are normally found in the /plugins/
|
||||
directory, however can also be found in their specific plugin dir. <a
|
||||
href="http://www.exploit-db.com/ghdb/3714/">www.exploit-db.com/ghdb/3714/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="error_log-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_plugin.rb, line 37</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">error_log?</span>
|
||||
<span class="ruby-identifier">response_body</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">error_log_url</span>(), <span class="ruby-identifier">headers</span><span class="ruby-operator">:</span> {<span class="ruby-string">'range'</span> =<span class="ruby-operator">></span> <span class="ruby-string">'bytes=0-700'</span>}).<span class="ruby-identifier">body</span>
|
||||
<span class="ruby-identifier">response_body</span>[<span class="ruby-regexp">%r{PHP Fatal error}</span>] <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- error_log-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- error_log-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-error_log_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">error_log_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="error_log_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_plugin.rb, line 42</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">error_log_url</span>
|
||||
<span class="ruby-identifier">get_full_url</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'error_log'</span>).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- error_log_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- error_log_url-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,322 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpPlugins - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_plugins.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-plugins_from_aggressive_detection">#plugins_from_aggressive_detection</a>
|
||||
|
||||
<li><a href="#method-i-plugins_from_passive_detection">#plugins_from_passive_detection</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpPlugins</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-plugins_from_aggressive_detection" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">plugins_from_aggressive_detection</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Enumerate installed plugins.</p>
|
||||
|
||||
<p>return array of <a href="WpPlugin.html">WpPlugin</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="plugins_from_aggressive_detection-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_plugins.rb, line 24</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">plugins_from_aggressive_detection</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] <span class="ruby-operator">==</span> <span class="ruby-string">''</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] = <span class="ruby-constant">PLUGINS_VULNS_FILE</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>] <span class="ruby-operator">||</span> (<span class="ruby-identifier">options</span>[<span class="ruby-value">:full</span>] <span class="ruby-operator">?</span> <span class="ruby-constant">PLUGINS_FULL_FILE</span> <span class="ruby-operator">:</span> <span class="ruby-constant">PLUGINS_FILE</span>)
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>] = <span class="ruby-node">"//plugin[@name='#{@name}']/vulnerability"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath_2</span>] = <span class="ruby-string">'//plugin'</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] = <span class="ruby-string">'plugins'</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-constant">WpDetector</span>.<span class="ruby-identifier">aggressive_detection</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">plugins</span> = []
|
||||
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">plugins</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">base_url</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">path</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">wp_content_dir</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">name</span>,
|
||||
<span class="ruby-identifier">type</span><span class="ruby-operator">:</span> <span class="ruby-string">'plugins'</span>,
|
||||
<span class="ruby-identifier">wp_plugins_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">wp_plugins_dir</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">plugins</span>.<span class="ruby-identifier">sort_by</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span> <span class="ruby-identifier">p</span>.<span class="ruby-identifier">name</span> }
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- plugins_from_aggressive_detection-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- plugins_from_aggressive_detection-method -->
|
||||
|
||||
|
||||
<div id="method-i-plugins_from_passive_detection" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">plugins_from_passive_detection</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://code.google.com/p/wpscan/issues/detail?id=42">code.google.com/p/wpscan/issues/detail?id=42</a>
|
||||
plugins can be found in the source code :</p>
|
||||
|
||||
<pre><script src='http://example.com/wp-content/plugins/s2member/...' />
|
||||
<link rel='stylesheet' href='http://example.com/wp-content/plugins/wp-minify/..' type='text/css' media='screen'/>
|
||||
...</pre>
|
||||
|
||||
<p>return array of <a href="WpPlugin.html">WpPlugin</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="plugins_from_passive_detection-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_plugins.rb, line 54</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">plugins_from_passive_detection</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">plugins</span> = []
|
||||
<span class="ruby-identifier">temp</span> = <span class="ruby-constant">WpDetector</span>.<span class="ruby-identifier">passive_detection</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>], <span class="ruby-string">'plugins'</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>])
|
||||
|
||||
<span class="ruby-identifier">temp</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">item</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">plugins</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpPlugin</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">base_url</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">name</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">path</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>],
|
||||
<span class="ruby-identifier">type</span><span class="ruby-operator">:</span> <span class="ruby-string">'plugins'</span>,
|
||||
<span class="ruby-identifier">wp_plugins_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_plugins_dir</span>]
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">plugins</span>.<span class="ruby-identifier">sort_by</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span> <span class="ruby-identifier">p</span>.<span class="ruby-identifier">name</span> }
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- plugins_from_passive_detection-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- plugins_from_passive_detection-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,286 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpReadme - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_readme.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-has_readme-3F">#has_readme?</a>
|
||||
|
||||
<li><a href="#method-i-readme_url">#readme_url</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpReadme</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-has_readme-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_readme?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Checks to see if the readme.html file exists</p>
|
||||
|
||||
<p>This file comes by default in a wordpress installation, and if deleted is
|
||||
reinstated with an upgrade.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_readme-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_readme.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_readme?</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">readme_url</span>())
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">404</span>
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r{wordpress}</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_readme-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_readme-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-readme_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">readme_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="readme_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_readme.rb, line 33</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">readme_url</span>
|
||||
<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'readme.html'</span>).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- readme_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- readme_url-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,887 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpTarget - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_target.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
<!-- Included Modules -->
|
||||
<nav id="includes-section" class="section">
|
||||
<h3 class="section-header">Included Modules</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
|
||||
<li><a class="include" href="WebSite.html">WebSite</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpReadme.html">WpReadme</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="Malwares.html">Malwares</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpUsernames.html">WpUsernames</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpPlugins.html">WpPlugins</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="WpThemes.html">WpThemes</a>
|
||||
|
||||
|
||||
|
||||
<li><a class="include" href="BruteForce.html">BruteForce</a>
|
||||
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-c-valid_response_codes">::valid_response_codes</a>
|
||||
|
||||
<li><a href="#method-i-debug_log_url">#debug_log_url</a>
|
||||
|
||||
<li><a href="#method-i-has_debug_log-3F">#has_debug_log?</a>
|
||||
|
||||
<li><a href="#method-i-is_multisite-3F">#is_multisite?</a>
|
||||
|
||||
<li><a href="#method-i-login_url">#login_url</a>
|
||||
|
||||
<li><a href="#method-i-registration_enabled-3F">#registration_enabled?</a>
|
||||
|
||||
<li><a href="#method-i-registration_url">#registration_url</a>
|
||||
|
||||
<li><a href="#method-i-search_replace_db_2_exists-3F">#search_replace_db_2_exists?</a>
|
||||
|
||||
<li><a href="#method-i-search_replace_db_2_url">#search_replace_db_2_url</a>
|
||||
|
||||
<li><a href="#method-i-theme">#theme</a>
|
||||
|
||||
<li><a href="#method-i-url">#url</a>
|
||||
|
||||
<li><a href="#method-i-version">#version</a>
|
||||
|
||||
<li><a href="#method-i-wp_content_dir">#wp_content_dir</a>
|
||||
|
||||
<li><a href="#method-i-wp_plugins_dir">#wp_plugins_dir</a>
|
||||
|
||||
<li><a href="#method-i-wp_plugins_dir_exists-3F">#wp_plugins_dir_exists?</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpTarget</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-uri" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">uri</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-verbose" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">verbose</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(target_url, options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 34</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">target_url</span>, <span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-ivar">@uri</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">add_trailing_slash</span>(<span class="ruby-identifier">add_http_protocol</span>(<span class="ruby-identifier">target_url</span>)))
|
||||
<span class="ruby-ivar">@verbose</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:verbose</span>]
|
||||
<span class="ruby-ivar">@wp_content_dir</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>]
|
||||
<span class="ruby-ivar">@wp_plugins_dir</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_plugins_dir</span>]
|
||||
<span class="ruby-ivar">@multisite</span> = <span class="ruby-keyword">nil</span>
|
||||
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>(<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-value">:max_threads</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:threads</span>]))
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
<div id="method-c-valid_response_codes" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">valid_response_codes</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Valid HTTP return codes</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="valid_response_codes-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 62</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">valid_response_codes</span>
|
||||
[<span class="ruby-value">200</span>, <span class="ruby-value">301</span>, <span class="ruby-value">302</span>, <span class="ruby-value">401</span>, <span class="ruby-value">403</span>, <span class="ruby-value">500</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- valid_response_codes-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- valid_response_codes-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-debug_log_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">debug_log_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="debug_log_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 109</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">debug_log_url</span>
|
||||
<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-node">"#{wp_content_dir()}/debug.log"</span>).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- debug_log_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- debug_log_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-has_debug_log-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_debug_log?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_debug_log-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 103</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_debug_log?</span>
|
||||
<span class="ruby-comment"># We only get the first 700 bytes of the file to avoid loading huge file (like 2Go)</span>
|
||||
<span class="ruby-identifier">response_body</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">debug_log_url</span>(), <span class="ruby-identifier">headers</span><span class="ruby-operator">:</span> {<span class="ruby-string">'range'</span> =<span class="ruby-operator">></span> <span class="ruby-string">'bytes=0-700'</span>}).<span class="ruby-identifier">body</span>
|
||||
<span class="ruby-identifier">response_body</span>[<span class="ruby-regexp">%r{\[[^\]]+\] PHP (?:Warning|Error|Notice):}</span>] <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_debug_log-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_debug_log-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-is_multisite-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">is_multisite?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="is_multisite-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 148</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_multisite?</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@multisite</span>
|
||||
<span class="ruby-comment"># when multi site, there is no redirection or a redirect to the site itself</span>
|
||||
<span class="ruby-comment"># otherwise redirect to wp-login.php</span>
|
||||
<span class="ruby-identifier">url</span> = <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'wp-signup.php'</span>)
|
||||
<span class="ruby-identifier">resp</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">302</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">headers_hash</span>[<span class="ruby-string">'location'</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rwp-login\.php\?action=register/</span>
|
||||
<span class="ruby-ivar">@multisite</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">302</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">headers_hash</span>[<span class="ruby-string">'location'</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rwp-signup\.php/</span>
|
||||
<span class="ruby-ivar">@multisite</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-ivar">@multisite</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@multisite</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@multisite</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- is_multisite-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- is_multisite-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-login_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 49</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">login_url</span>
|
||||
<span class="ruby-identifier">url</span> = <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'wp-login.php'</span>).<span class="ruby-identifier">to_s</span>
|
||||
|
||||
<span class="ruby-comment"># Let's check if the login url is redirected (to https url for example)</span>
|
||||
<span class="ruby-identifier">redirection</span> = <span class="ruby-identifier">redirection</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirection</span>
|
||||
<span class="ruby-identifier">url</span> = <span class="ruby-identifier">redirection</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">url</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- login_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- login_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-registration_enabled-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">registration_enabled?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Should check wp-login.php if registration is enabled or not</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="registration_enabled-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 126</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">registration_enabled?</span>
|
||||
<span class="ruby-identifier">resp</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">registration_url</span>)
|
||||
<span class="ruby-comment"># redirect only on non multi sites</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">302</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">headers_hash</span>[<span class="ruby-string">'location'</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rwp-login\.php\?registration=disabled/</span>
|
||||
<span class="ruby-identifier">enabled</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-comment"># multi site registration form</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r<form id="setupform" method="post" action="[^"]*wp-signup\.php[^"]*">/</span>
|
||||
<span class="ruby-identifier">enabled</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-comment"># normal registration form</span>
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r<form name="registerform" id="registerform" action="[^"]*wp-login\.php[^"]*"/</span>
|
||||
<span class="ruby-identifier">enabled</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-comment"># registration disabled</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">enabled</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">enabled</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- registration_enabled-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- registration_enabled-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-registration_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">registration_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="registration_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 144</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">registration_url</span>
|
||||
<span class="ruby-identifier">is_multisite?</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'wp-signup.php'</span>) <span class="ruby-operator">:</span> <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'wp-login.php?action=register'</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- registration_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- registration_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-search_replace_db_2_exists-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">search_replace_db_2_exists?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="search_replace_db_2_exists-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 120</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">search_replace_db_2_exists?</span>
|
||||
<span class="ruby-identifier">resp</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">search_replace_db_2_url</span>)
|
||||
<span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">body</span>[<span class="ruby-regexp">%r{by interconnect}</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- search_replace_db_2_exists-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- search_replace_db_2_exists-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-search_replace_db_2_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">search_replace_db_2_url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Script for replacing strings in wordpress databases reveals databse
|
||||
credentials after hitting submit <a
|
||||
href="http://interconnectit.com/124/search-and-replace-for-wordpress-databases/">interconnectit.com/124/search-and-replace-for-wordpress-databases/</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="search_replace_db_2_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 116</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">search_replace_db_2_url</span>
|
||||
<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'searchreplacedb2.php'</span>).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- search_replace_db_2_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- search_replace_db_2_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-theme" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">theme</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>return <a href="WpTheme.html">WpTheme</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="theme-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 67</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">theme</span>
|
||||
<span class="ruby-constant">WpTheme</span>.<span class="ruby-identifier">find</span>(<span class="ruby-ivar">@uri</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- theme-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- theme-method -->
|
||||
|
||||
|
||||
<div id="method-i-url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">url</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Alias of @uri.to_s</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 45</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">url</span>
|
||||
<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- url-method -->
|
||||
|
||||
|
||||
<div id="method-i-version" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">version</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>return <a href="WpVersion.html">WpVersion</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="version-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 72</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">version</span>
|
||||
<span class="ruby-constant">WpVersion</span>.<span class="ruby-identifier">find</span>(<span class="ruby-ivar">@uri</span>, <span class="ruby-identifier">wp_content_dir</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- version-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- version-method -->
|
||||
|
||||
|
||||
<div id="method-i-wp_content_dir" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">wp_content_dir</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="wp_content_dir-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 76</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wp_content_dir</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@wp_content_dir</span>
|
||||
<span class="ruby-identifier">index_body</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">body</span>
|
||||
<span class="ruby-comment"># Only use the path because domain can be text or an ip</span>
|
||||
<span class="ruby-identifier">uri_path</span> = <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">path</span>
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">index_body</span>[<span class="ruby-regexp">%r\/wp-content\/(?:themes|plugins)\//</span>]
|
||||
<span class="ruby-ivar">@wp_content_dir</span> = <span class="ruby-string">'wp-content'</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">domains_excluded</span> = <span class="ruby-string">'(?:www\.)?(facebook|twitter)\.com'</span>
|
||||
<span class="ruby-ivar">@wp_content_dir</span> = <span class="ruby-identifier">index_body</span>[<span class="ruby-node">%r(?:href|src)\s*=\s*(?:"|').+#{Regexp.escape(uri_path)}((?!#{domains_excluded})[^"']+)\/(?:themes|plugins)\/.*(?:"|')/</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@wp_content_dir</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- wp_content_dir-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- wp_content_dir-method -->
|
||||
|
||||
|
||||
<div id="method-i-wp_plugins_dir" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">wp_plugins_dir</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="wp_plugins_dir-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 92</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wp_plugins_dir</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@wp_plugins_dir</span>
|
||||
<span class="ruby-ivar">@wp_plugins_dir</span> = <span class="ruby-node">"#{wp_content_dir}/plugins"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@wp_plugins_dir</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- wp_plugins_dir-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- wp_plugins_dir-method -->
|
||||
|
||||
|
||||
<div id="method-i-wp_plugins_dir_exists-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">wp_plugins_dir_exists?</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="wp_plugins_dir_exists-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_target.rb, line 99</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wp_plugins_dir_exists?</span>
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">wp_plugins_dir</span>)).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">404</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- wp_plugins_dir_exists-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- wp_plugins_dir_exists-3F-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
472
doc/WpTheme.html
@@ -1,472 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpTheme - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_theme.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="WpItem.html">WpItem</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-find">::find</a>
|
||||
|
||||
<li><a href="#method-c-find_from_css_link">::find_from_css_link</a>
|
||||
|
||||
<li><a href="#method-c-find_from_wooframework">::find_from_wooframework</a>
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-3D-3D-3D">#===</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpTheme</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-style_url" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">style_url</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-version" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">version</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-find" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find</span><span
|
||||
class="method-args">(target_uri)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_theme.rb, line 47</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">target_uri</span>)
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">methods</span>.<span class="ruby-identifier">grep</span>(<span class="ruby-regexp">%rfind_from_/</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">method_to_call</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">theme</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">method_to_call</span>, <span class="ruby-identifier">target_uri</span>)
|
||||
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-identifier">theme</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">theme</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find-method -->
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_theme.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] <span class="ruby-operator">==</span> <span class="ruby-string">''</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] = <span class="ruby-constant">THEMES_VULNS_FILE</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>] = <span class="ruby-string">"//theme[@name='$name$']/vulnerability"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] = <span class="ruby-string">'themes'</span>
|
||||
<span class="ruby-ivar">@version</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:version</span>]
|
||||
<span class="ruby-ivar">@style_url</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:style_url</span>]
|
||||
|
||||
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="protected-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-find_from_css_link" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_css_link</span><span
|
||||
class="method-args">(target_uri)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Discover the wordpress theme name by parsing the css link rel</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_css_link-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_theme.rb, line 63</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_css_link</span>(<span class="ruby-identifier">target_uri</span>)
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">to_s</span>, { <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> })
|
||||
|
||||
<span class="ruby-identifier">matches</span> = <span class="ruby-regexp">%r{https?://[^"']+/([^/]+)/themes/([^"']+)/style.css}</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">matches</span>
|
||||
<span class="ruby-identifier">style_url</span> = <span class="ruby-identifier">matches</span>[<span class="ruby-value">0</span>]
|
||||
<span class="ruby-identifier">wp_content_dir</span> = <span class="ruby-identifier">matches</span>[<span class="ruby-value">1</span>]
|
||||
<span class="ruby-identifier">theme_name</span> = <span class="ruby-identifier">matches</span>[<span class="ruby-value">2</span>]
|
||||
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">theme_name</span>,
|
||||
<span class="ruby-identifier">style_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">style_url</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">target_uri</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-identifier">theme_name</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">wp_content_dir</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_css_link-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_css_link-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_wooframework" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_wooframework</span><span
|
||||
class="method-args">(target_uri)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p><a
|
||||
href="http://code.google.com/p/wpscan/issues/detail?id=141">code.google.com/p/wpscan/issues/detail?id=141</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_wooframework-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_theme.rb, line 83</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_wooframework</span>(<span class="ruby-identifier">target_uri</span>)
|
||||
<span class="ruby-identifier">body</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">body</span>
|
||||
<span class="ruby-identifier">regexp</span> = <span class="ruby-regexp">%r{<meta name="generator" content="([^\s"]+)\s?([^"]+)?" />\s+<meta name="generator" content="WooFramework\s?([^"]+)?" />}</span>
|
||||
|
||||
<span class="ruby-identifier">matches</span> = <span class="ruby-identifier">regexp</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">body</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">matches</span>
|
||||
<span class="ruby-identifier">woo_theme_name</span> = <span class="ruby-identifier">matches</span>[<span class="ruby-value">1</span>]
|
||||
<span class="ruby-identifier">woo_theme_version</span> = <span class="ruby-identifier">matches</span>[<span class="ruby-value">2</span>]
|
||||
<span class="ruby-identifier">woo_framework_version</span> = <span class="ruby-identifier">matches</span>[<span class="ruby-value">3</span>] <span class="ruby-comment"># Not used at this time</span>
|
||||
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">woo_theme_name</span>,
|
||||
<span class="ruby-identifier">version</span><span class="ruby-operator">:</span> <span class="ruby-identifier">woo_theme_version</span>,
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">matches</span>[<span class="ruby-value">0</span>],
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-string">''</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-string">''</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_wooframework-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_wooframework-method -->
|
||||
|
||||
|
||||
</section><!-- protected-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-3D-3D-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">===</span><span
|
||||
class="method-args">(wp_theme)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="3D-3D-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_theme.rb, line 56</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-operator">===</span>(<span class="ruby-identifier">wp_theme</span>)
|
||||
<span class="ruby-identifier">wp_theme</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">===</span> <span class="ruby-ivar">@name</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">wp_theme</span>.<span class="ruby-identifier">version</span> <span class="ruby-operator">===</span> <span class="ruby-ivar">@version</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- 3D-3D-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- 3D-3D-3D-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,308 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpThemes - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_themes.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-themes_from_aggressive_detection">#themes_from_aggressive_detection</a>
|
||||
|
||||
<li><a href="#method-i-themes_from_passive_detection">#themes_from_passive_detection</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpThemes</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-themes_from_aggressive_detection" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">themes_from_aggressive_detection</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="themes_from_aggressive_detection-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_themes.rb, line 21</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">themes_from_aggressive_detection</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] <span class="ruby-operator">==</span> <span class="ruby-string">''</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] = <span class="ruby-constant">THEMES_VULNS_FILE</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>] <span class="ruby-operator">||</span> (<span class="ruby-identifier">options</span>[<span class="ruby-value">:full</span>] <span class="ruby-operator">?</span> <span class="ruby-constant">THEMES_FULL_FILE</span> <span class="ruby-operator">:</span> <span class="ruby-constant">THEMES_FILE</span>)
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>] = <span class="ruby-node">"//theme[@name='#{@name}']/vulnerability"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath_2</span>] = <span class="ruby-string">'//theme'</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] = <span class="ruby-string">'themes'</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-constant">WpDetector</span>.<span class="ruby-identifier">aggressive_detection</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">themes</span> = []
|
||||
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">themes</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpTheme</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">base_url</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">path</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">wp_content_dir</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">name</span>
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">themes</span>.<span class="ruby-identifier">sort_by</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">name</span> }
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- themes_from_aggressive_detection-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- themes_from_aggressive_detection-method -->
|
||||
|
||||
|
||||
<div id="method-i-themes_from_passive_detection" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">themes_from_passive_detection</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="themes_from_passive_detection-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_themes.rb, line 43</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">themes_from_passive_detection</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">themes</span> = []
|
||||
<span class="ruby-identifier">temp</span> = <span class="ruby-constant">WpDetector</span>.<span class="ruby-identifier">passive_detection</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>], <span class="ruby-string">'themes'</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>])
|
||||
|
||||
<span class="ruby-identifier">temp</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">item</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">themes</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpTheme</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">base_url</span>,
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">name</span>,
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">path</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>]
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">themes</span>.<span class="ruby-identifier">sort_by</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">name</span> }
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- themes_from_passive_detection-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- themes_from_passive_detection-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,350 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpTimthumbs - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_timthumbs.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-has_timthumbs-3F">#has_timthumbs?</a>
|
||||
|
||||
<li><a href="#method-i-targets_url_from_theme">#targets_url_from_theme</a>
|
||||
|
||||
<li><a href="#method-i-timthumbs">#timthumbs</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpTimthumbs</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-has_timthumbs-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">has_timthumbs?</span><span
|
||||
class="method-args">(theme_name, options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="has_timthumbs-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_timthumbs.rb, line 27</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_timthumbs?</span>(<span class="ruby-identifier">theme_name</span>, <span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-operator">!</span><span class="ruby-identifier">timthumbs</span>(<span class="ruby-identifier">theme_name</span>, <span class="ruby-identifier">options</span>).<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- has_timthumbs-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- has_timthumbs-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-timthumbs" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">timthumbs</span><span
|
||||
class="method-args">(theme_name = nil, options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="timthumbs-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_timthumbs.rb, line 31</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">timthumbs</span>(<span class="ruby-identifier">theme_name</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@wp_timthumbs</span>.<span class="ruby-identifier">nil?</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:type</span>] = <span class="ruby-string">'timthumbs'</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:only_vulnerable_ones</span>] = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-value">:file</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">DATA_DIR</span> <span class="ruby-operator">+</span> <span class="ruby-string">'/timthumbs.txt'</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] = <span class="ruby-string">'xxx'</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath</span>] = <span class="ruby-string">'xxx'</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_xpath_2</span>] = <span class="ruby-string">'xxx'</span>
|
||||
|
||||
<span class="ruby-constant">WpOptions</span>.<span class="ruby-identifier">check_options</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">theme_name</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">custom_items</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">custom_items</span> = <span class="ruby-identifier">targets_url_from_theme</span>(<span class="ruby-identifier">theme_name</span>, <span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@wp_timthumbs</span> = <span class="ruby-constant">WpEnumerator</span>.<span class="ruby-identifier">enumerate</span>(<span class="ruby-identifier">options</span>, <span class="ruby-identifier">custom_items</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@wp_timthumbs</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- timthumbs-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- timthumbs-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
<section id="protected-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-targets_url_from_theme" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">targets_url_from_theme</span><span
|
||||
class="method-args">(theme_name, options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="targets_url_from_theme-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_timthumbs.rb, line 52</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">targets_url_from_theme</span>(<span class="ruby-identifier">theme_name</span>, <span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">targets</span> = []
|
||||
<span class="ruby-identifier">theme_name</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">escape</span>(<span class="ruby-identifier">theme_name</span>)
|
||||
|
||||
<span class="ruby-node">%w{
|
||||
timthumb.php lib/timthumb.php inc/timthumb.php includes/timthumb.php
|
||||
scripts/timthumb.php tools/timthumb.php functions/timthumb.php
|
||||
}</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">targets</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpItem</span>.<span class="ruby-identifier">new</span>(
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>],
|
||||
<span class="ruby-identifier">path</span><span class="ruby-operator">:</span> <span class="ruby-node">"themes/#{theme_name}/#{file}"</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>],
|
||||
<span class="ruby-identifier">name</span><span class="ruby-operator">:</span> <span class="ruby-identifier">theme_name</span>,
|
||||
<span class="ruby-identifier">vulns_file</span><span class="ruby-operator">:</span> <span class="ruby-string">'XX'</span>,
|
||||
<span class="ruby-identifier">type</span><span class="ruby-operator">:</span> <span class="ruby-string">'timthumbs'</span>,
|
||||
<span class="ruby-identifier">wp_plugins_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_plugins_dir</span>]
|
||||
)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">targets</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- targets_url_from_theme-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- targets_url_from_theme-method -->
|
||||
|
||||
|
||||
</section><!-- protected-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
558
doc/WpUser.html
@@ -1,558 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpUser - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_user.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-i-3C-3D-3E">#<=></a>
|
||||
|
||||
<li><a href="#method-i-3D-3D-3D">#===</a>
|
||||
|
||||
<li><a href="#method-i-eql-3F">#eql?</a>
|
||||
|
||||
<li><a href="#method-i-id">#id</a>
|
||||
|
||||
<li><a href="#method-i-id-3D">#id=</a>
|
||||
|
||||
<li><a href="#method-i-name">#name</a>
|
||||
|
||||
<li><a href="#method-i-name-3D">#name=</a>
|
||||
|
||||
<li><a href="#method-i-nickname">#nickname</a>
|
||||
|
||||
<li><a href="#method-i-nickname-3D">#nickname=</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpUser</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(name, id, nickname)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 54</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">nickname</span>)
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span> = <span class="ruby-identifier">name</span>
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">id</span> = <span class="ruby-identifier">id</span>
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">nickname</span> = <span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-3C-3D-3E" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name"><=></span><span
|
||||
class="method-args">(other)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="3C-3D-3E-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 60</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-operator"><=></span>(<span class="ruby-identifier">other</span>)
|
||||
<span class="ruby-identifier">other</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator"><=></span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- 3C-3D-3E-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- 3C-3D-3E-method -->
|
||||
|
||||
|
||||
<div id="method-i-3D-3D-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">===</span><span
|
||||
class="method-args">(other)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="3D-3D-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 64</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-operator">===</span>(<span class="ruby-identifier">other</span>)
|
||||
<span class="ruby-identifier">other</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">id</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">nickname</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- 3D-3D-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- 3D-3D-3D-method -->
|
||||
|
||||
|
||||
<div id="method-i-eql-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">eql?</span><span
|
||||
class="method-args">(other)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="eql-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 68</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">other</span>)
|
||||
<span class="ruby-identifier">other</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">id</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">nickname</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- eql-3F-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- eql-3F-method -->
|
||||
|
||||
|
||||
<div id="method-i-id" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">id</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="id-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 32</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">id</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@id</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@id</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-string">'empty'</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@id</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- id-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- id-method -->
|
||||
|
||||
|
||||
<div id="method-i-id-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">id=</span><span
|
||||
class="method-args">(new_id)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="id-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 39</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">id=</span>(<span class="ruby-identifier">new_id</span>)
|
||||
<span class="ruby-ivar">@id</span> = <span class="ruby-identifier">new_id</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- id-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- id-3D-method -->
|
||||
|
||||
|
||||
<div id="method-i-name" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">name</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="name-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 21</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">name</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@name</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@name</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-string">'empty'</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@name</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- name-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- name-method -->
|
||||
|
||||
|
||||
<div id="method-i-name-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">name=</span><span
|
||||
class="method-args">(new_name)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="name-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 28</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">name=</span>(<span class="ruby-identifier">new_name</span>)
|
||||
<span class="ruby-ivar">@name</span> = <span class="ruby-identifier">new_name</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- name-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- name-3D-method -->
|
||||
|
||||
|
||||
<div id="method-i-nickname" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">nickname</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="nickname-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 43</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@nickname</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@nickname</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">empty?</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-string">'empty'</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@nickname</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- nickname-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- nickname-method -->
|
||||
|
||||
|
||||
<div id="method-i-nickname-3D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">nickname=</span><span
|
||||
class="method-args">(new_nickname)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="nickname-3D-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_user.rb, line 50</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">nickname=</span>(<span class="ruby-identifier">new_nickname</span>)
|
||||
<span class="ruby-ivar">@nickname</span> = <span class="ruby-identifier">new_nickname</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- nickname-3D-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- nickname-3D-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,468 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>module WpUsernames - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="module">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/modules/wp_usernames.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-i-author_url">#author_url</a>
|
||||
|
||||
<li><a href="#method-i-extract_nickname_from_body">#extract_nickname_from_body</a>
|
||||
|
||||
<li><a href="#method-i-get_nickname_from_response">#get_nickname_from_response</a>
|
||||
|
||||
<li><a href="#method-i-get_nickname_from_url">#get_nickname_from_url</a>
|
||||
|
||||
<li><a href="#method-i-remove_junk_from_nickname">#remove_junk_from_nickname</a>
|
||||
|
||||
<li><a href="#method-i-usernames">#usernames</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="module">module WpUsernames</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Instance Methods</h3>
|
||||
|
||||
|
||||
<div id="method-i-author_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">author_url</span><span
|
||||
class="method-args">(author_id)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="author_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_usernames.rb, line 102</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">author_url</span>(<span class="ruby-identifier">author_id</span>)
|
||||
<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-node">"?author=#{author_id}"</span>).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- author_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- author_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-extract_nickname_from_body" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">extract_nickname_from_body</span><span
|
||||
class="method-args">(body)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="extract_nickname_from_body-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_usernames.rb, line 77</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">extract_nickname_from_body</span>(<span class="ruby-identifier">body</span>)
|
||||
<span class="ruby-identifier">body</span>[<span class="ruby-regexp">%r{<title>([^<]*)</title>}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- extract_nickname_from_body-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- extract_nickname_from_body-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_nickname_from_response" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_nickname_from_response</span><span
|
||||
class="method-args">(resp)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_nickname_from_response-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_usernames.rb, line 69</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_nickname_from_response</span>(<span class="ruby-identifier">resp</span>)
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-identifier">extract_nickname_from_body</span>(<span class="ruby-identifier">resp</span>.<span class="ruby-identifier">body</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_nickname_from_response-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_nickname_from_response-method -->
|
||||
|
||||
|
||||
<div id="method-i-get_nickname_from_url" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get_nickname_from_url</span><span
|
||||
class="method-args">(url)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get_nickname_from_url-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_usernames.rb, line 60</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_nickname_from_url</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-identifier">resp</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>, { <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> })
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-identifier">extract_nickname_from_body</span>(<span class="ruby-identifier">resp</span>.<span class="ruby-identifier">body</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- get_nickname_from_url-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- get_nickname_from_url-method -->
|
||||
|
||||
|
||||
<div id="method-i-remove_junk_from_nickname" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">remove_junk_from_nickname</span><span
|
||||
class="method-args">(usernames)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="remove_junk_from_nickname-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_usernames.rb, line 81</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remove_junk_from_nickname</span>(<span class="ruby-identifier">usernames</span>)
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">usernames</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Array</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'Need an array as input'</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">nicknames</span> = []
|
||||
<span class="ruby-identifier">usernames</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">u</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">u</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">WpUser</span>
|
||||
<span class="ruby-identifier">raise</span>(<span class="ruby-string">'Items must be of type WpUser'</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-identifier">u</span>.<span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">nickname</span> <span class="ruby-operator">==</span> <span class="ruby-string">'empty'</span>
|
||||
<span class="ruby-identifier">nicknames</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">nickname</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">junk</span> = <span class="ruby-identifier">get_equal_string_end</span>(<span class="ruby-identifier">nicknames</span>)
|
||||
<span class="ruby-identifier">usernames</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">u</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">u</span>.<span class="ruby-identifier">nickname</span> = <span class="ruby-identifier">u</span>.<span class="ruby-identifier">nickname</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-node">%r#{Regexp.escape(junk)}$/</span>, <span class="ruby-string">''</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">usernames</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- remove_junk_from_nickname-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- remove_junk_from_nickname-method -->
|
||||
|
||||
|
||||
<div id="method-i-usernames" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">usernames</span><span
|
||||
class="method-args">(options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Enumerate wordpress usernames by using Veronica Valeros’s technique: <a
|
||||
href="http://seclists.org/fulldisclosure/2011/May/493">seclists.org/fulldisclosure/2011/May/493</a></p>
|
||||
|
||||
<p>Available options :</p>
|
||||
|
||||
<pre>:range - default : 1..10</pre>
|
||||
|
||||
<p>returns an array of <a href="WpUser.html">WpUser</a> (can be empty)</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="usernames-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/modules/wp_usernames.rb, line 28</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">usernames</span>(<span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-identifier">range</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:range</span>] <span class="ruby-operator">||</span> (<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">10</span>)
|
||||
<span class="ruby-identifier">browser</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>
|
||||
<span class="ruby-identifier">usernames</span> = []
|
||||
|
||||
<span class="ruby-identifier">range</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">author_id</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">url</span> = <span class="ruby-identifier">author_url</span>(<span class="ruby-identifier">author_id</span>)
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">browser</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
|
||||
|
||||
<span class="ruby-identifier">username</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">301</span> <span class="ruby-comment"># username in location?</span>
|
||||
<span class="ruby-identifier">username</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">headers_hash</span>[<span class="ruby-string">'location'</span>][<span class="ruby-regexp">%r{/author/([^/\b]+)/?}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-comment"># Get the real name from the redirect site</span>
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-identifier">get_nickname_from_url</span>(<span class="ruby-identifier">url</span>)
|
||||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span> <span class="ruby-comment"># username in body?</span>
|
||||
<span class="ruby-identifier">username</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-regexp">%r{posts by (.*) feed}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-identifier">nickname</span> = <span class="ruby-identifier">get_nickname_from_response</span>(<span class="ruby-identifier">response</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">username</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">nickname</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">usernames</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">WpUser</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">username</span>, <span class="ruby-identifier">author_id</span>, <span class="ruby-identifier">nickname</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">usernames</span> = <span class="ruby-identifier">remove_junk_from_nickname</span>(<span class="ruby-identifier">usernames</span>)
|
||||
|
||||
<span class="ruby-comment"># clean the array, remove nils and possible duplicates</span>
|
||||
<span class="ruby-identifier">usernames</span>.<span class="ruby-identifier">flatten!</span>
|
||||
<span class="ruby-identifier">usernames</span>.<span class="ruby-identifier">compact!</span>
|
||||
<span class="ruby-identifier">usernames</span>.<span class="ruby-identifier">uniq</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- usernames-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- usernames-method -->
|
||||
|
||||
|
||||
</section><!-- public-instance-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,687 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpVersion - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_version.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Vulnerable.html">Vulnerable</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-find">::find</a>
|
||||
|
||||
<li><a href="#method-c-find_from_advanced_fingerprinting">::find_from_advanced_fingerprinting</a>
|
||||
|
||||
<li><a href="#method-c-find_from_atom_generator">::find_from_atom_generator</a>
|
||||
|
||||
<li><a href="#method-c-find_from_links_opml">::find_from_links_opml</a>
|
||||
|
||||
<li><a href="#method-c-find_from_meta_generator">::find_from_meta_generator</a>
|
||||
|
||||
<li><a href="#method-c-find_from_rdf_generator">::find_from_rdf_generator</a>
|
||||
|
||||
<li><a href="#method-c-find_from_readme">::find_from_readme</a>
|
||||
|
||||
<li><a href="#method-c-find_from_rss_generator">::find_from_rss_generator</a>
|
||||
|
||||
<li><a href="#method-c-find_from_sitemap_generator">::find_from_sitemap_generator</a>
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
<li><a href="#method-c-version_pattern">::version_pattern</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpVersion</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-discovery_method" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">discovery_method</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-number" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">number</span><span
|
||||
class="attribute-access-type">[R]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-find" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find</span><span
|
||||
class="method-args">(target_uri, wp_content_dir)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Will use all method self.find_from_* to try to detect the version Once the
|
||||
version is found, it will return a <a href="WpVersion.html">WpVersion</a>
|
||||
object The method_name will be without ‘find_from_’ and ‘_’ will be replace
|
||||
by ‘ ’ (IE ‘meta generator’, ‘rss generator’ etc) If the version is not
|
||||
found, nil is returned</p>
|
||||
|
||||
<p>The order in which the find_from_* methods are is important, they will be
|
||||
called in the same order (<a
|
||||
href="WpVersion.html#method-c-find_from_meta_generator">::find_from_meta_generator</a>,
|
||||
<a
|
||||
href="WpVersion.html#method-c-find_from_rss_generator">::find_from_rss_generator</a>
|
||||
etc)</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 39</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">target_uri</span>, <span class="ruby-identifier">wp_content_dir</span>)
|
||||
<span class="ruby-identifier">options</span> = {
|
||||
<span class="ruby-identifier">base_url</span><span class="ruby-operator">:</span> <span class="ruby-identifier">target_uri</span>,
|
||||
<span class="ruby-identifier">wp_content_dir</span><span class="ruby-operator">:</span> <span class="ruby-identifier">wp_content_dir</span>
|
||||
}
|
||||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">methods</span>.<span class="ruby-identifier">grep</span>(<span class="ruby-regexp">%rfind_from_/</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">method_to_call</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">version</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">method_to_call</span>, <span class="ruby-identifier">options</span>)
|
||||
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">version</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-identifier">new</span>(<span class="ruby-identifier">version</span>, <span class="ruby-identifier">discovery_method</span><span class="ruby-operator">:</span> <span class="ruby-identifier">method_to_call</span>[<span class="ruby-regexp">%r{find_from_(.*)}</span>, <span class="ruby-value">1</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-string">'_'</span>, <span class="ruby-string">' '</span>))
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find-method -->
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(number, options = {})</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">number</span>, <span class="ruby-identifier">options</span> = {})
|
||||
<span class="ruby-ivar">@number</span> = <span class="ruby-identifier">number</span>
|
||||
<span class="ruby-ivar">@discovery_method</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:discovery_method</span>]
|
||||
<span class="ruby-ivar">@vulns_file</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:vulns_file</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">WP_VULNS_FILE</span>
|
||||
<span class="ruby-ivar">@vulns_xpath</span> = <span class="ruby-node">"//wordpress[@version='#{@number}']/vulnerability"</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
<section id="protected-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Protected Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-find_from_advanced_fingerprinting" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_advanced_fingerprinting</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Uses data/wp_versions.xml to try to identify a wordpress version.</p>
|
||||
|
||||
<p>It does this by using client side file hashing</p>
|
||||
|
||||
<pre>/!\ Warning : this method might return false positive if the file used for fingerprinting is part of a theme (they can be updated)</pre>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_advanced_fingerprinting-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 124</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_advanced_fingerprinting</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-comment"># needed for rpsec tests</span>
|
||||
<span class="ruby-identifier">version_xml</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:version_xml</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">WP_VERSIONS_FILE</span>
|
||||
<span class="ruby-identifier">xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">version_xml</span>)) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">config</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">noblanks</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
|
||||
<span class="ruby-identifier">xml</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">'//file'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">wp_content</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:wp_content_dir</span>]
|
||||
<span class="ruby-identifier">wp_plugins</span> = <span class="ruby-node">"#{wp_content}/plugins"</span>
|
||||
<span class="ruby-identifier">file_url</span> = <span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">node</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-string">'src'</span>).<span class="ruby-identifier">text</span>).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">file_url</span> = <span class="ruby-identifier">file_url</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">%r\$wp-plugins\$/</span>, <span class="ruby-identifier">wp_plugins</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">%r\$wp-content\$/</span>, <span class="ruby-identifier">wp_content</span>)
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">file_url</span>)
|
||||
<span class="ruby-identifier">md5sum</span> = <span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
||||
|
||||
<span class="ruby-identifier">node</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'hash'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">hash</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-string">'md5'</span>).<span class="ruby-identifier">text</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">md5sum</span>
|
||||
<span class="ruby-keyword">return</span> <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">search</span>(<span class="ruby-string">'version'</span>).<span class="ruby-identifier">text</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">nil</span> <span class="ruby-comment"># Otherwise the data['file'] is returned (issue #107)</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_advanced_fingerprinting-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_advanced_fingerprinting-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_atom_generator" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_atom_generator</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Attempts to find the WordPress version from, the generator tag in the Atom
|
||||
source.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_atom_generator-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 99</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_atom_generator</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'feed/atom/'</span>).<span class="ruby-identifier">to_s</span>, { <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> })
|
||||
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{<generator uri="http://wordpress.org/" version="#{WpVersion.version_pattern}">WordPress</generator>}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_atom_generator-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_atom_generator-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_links_opml" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_links_opml</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Attempts to find the WordPress version from the p-links-opml.php file.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_links_opml-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 164</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_links_opml</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'wp-links-opml.php'</span>).<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{generator="wordpress/#{WpVersion.version_pattern}"}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_links_opml-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_links_opml-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_meta_generator" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_meta_generator</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Attempts to find the wordpress version from, the generator meta tag in the
|
||||
html source.</p>
|
||||
|
||||
<p>The meta tag can be removed however it seems, that it is reinstated on
|
||||
upgrade.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_meta_generator-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 61</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_meta_generator</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">to_s</span>, { <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> })
|
||||
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{name="generator" content="wordpress #{WpVersion.version_pattern}"}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_meta_generator-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_meta_generator-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_rdf_generator" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_rdf_generator</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Attempts to find WordPress version from, the generator tag in the RDF feed
|
||||
source.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_rdf_generator-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 79</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_rdf_generator</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'feed/rdf/'</span>).<span class="ruby-identifier">to_s</span>, { <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> })
|
||||
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{<admin:generatorAgent rdf:resource="http://wordpress.org/\?v=#{WpVersion.version_pattern}" />}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_rdf_generator-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_rdf_generator-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_readme" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_readme</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Attempts to find the WordPress version from the readme.html file.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_readme-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 150</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_readme</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'readme.html'</span>).<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{<br />\sversion #{WpVersion.version_pattern}}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_readme-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_readme-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_rss_generator" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_rss_generator</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Attempts to find the WordPress version from, the generator tag in the RSS
|
||||
feed source.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_rss_generator-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 70</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_rss_generator</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'feed/'</span>).<span class="ruby-identifier">to_s</span>, { <span class="ruby-identifier">follow_location</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">max_redirects</span><span class="ruby-operator">:</span> <span class="ruby-value">2</span> })
|
||||
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{<generator>http://wordpress.org/\?v=#{WpVersion.version_pattern}</generator>}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_rss_generator-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_rss_generator-method -->
|
||||
|
||||
|
||||
<div id="method-c-find_from_sitemap_generator" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">find_from_sitemap_generator</span><span
|
||||
class="method-args">(options)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Attempts to find the WordPress version from the sitemap.xml file.</p>
|
||||
|
||||
<p>See: <a
|
||||
href="http://code.google.com/p/wpscan/issues/detail?id=109">code.google.com/p/wpscan/issues/detail?id=109</a></p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="find_from_sitemap_generator-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 158</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find_from_sitemap_generator</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">target_uri</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:base_url</span>]
|
||||
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">target_uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">'sitemap.xml'</span>).<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">body</span>[<span class="ruby-node">%r{generator="wordpress/#{WpVersion.version_pattern}"}</span>, <span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- find_from_sitemap_generator-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- find_from_sitemap_generator-method -->
|
||||
|
||||
|
||||
<div id="method-c-version_pattern" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">version_pattern</span><span
|
||||
class="method-args">()</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Used to check if the version is correct: must contain at least one dot.</p>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="version_pattern-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_version.rb, line 170</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">version_pattern</span>
|
||||
<span class="ruby-string">'([^\r\n"\]+\.[^\r\n"\]+)'</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- version_pattern-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- version_pattern-method -->
|
||||
|
||||
|
||||
</section><!-- protected-class-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,315 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>class WpVulnerability - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body id="top" class="class">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="file-metadata">
|
||||
<nav id="file-list-section" class="section">
|
||||
<h3 class="section-header">Defined In</h3>
|
||||
<ul>
|
||||
<li>lib/wpscan/wp_vulnerability.rb
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<nav id="parent-class-section" class="section">
|
||||
<h3 class="section-header">Parent</h3>
|
||||
|
||||
<p class="link"><a href="Object.html">Object</a>
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<nav id="method-list-section" class="section">
|
||||
<h3 class="section-header">Methods</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="#method-c-new">::new</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation">
|
||||
<h1 class="class">class WpVulnerability</h1>
|
||||
|
||||
<div id="description" class="description">
|
||||
|
||||
</div><!-- description -->
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Attributes -->
|
||||
<section id="attribute-method-details" class="method-section section">
|
||||
<h3 class="section-header">Attributes</h3>
|
||||
|
||||
|
||||
<div id="attribute-i-metasploit_modules" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">metasploit_modules</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-references" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">references</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-title" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">title</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="attribute-i-type" class="method-detail">
|
||||
<div class="method-heading attribute-method-heading">
|
||||
<span class="method-name">type</span><span
|
||||
class="attribute-access-type">[RW]</span>
|
||||
</div>
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section><!-- attribute-method-details -->
|
||||
|
||||
|
||||
<!-- Methods -->
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
||||
<h3 class="section-header">Public Class Methods</h3>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(title, references, type, metasploit_modules)</span>
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/wpscan/wp_vulnerability.rb, line 22</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">title</span>, <span class="ruby-identifier">references</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">metasploit_modules</span>)
|
||||
<span class="ruby-ivar">@title</span> = <span class="ruby-identifier">title</span>
|
||||
<span class="ruby-ivar">@references</span> = <span class="ruby-identifier">references</span>
|
||||
<span class="ruby-ivar">@type</span> = <span class="ruby-identifier">type</span>
|
||||
<span class="ruby-ivar">@metasploit_modules</span> = <span class="ruby-identifier">metasploit_modules</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div><!-- new-source -->
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div><!-- new-method -->
|
||||
|
||||
|
||||
</section><!-- public-class-method-details -->
|
||||
|
||||
</section><!-- 5Buntitled-5D -->
|
||||
|
||||
</div><!-- documentation -->
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
Sun, 27 Jan 2013 01:14:27 +0100
|
||||
./CREDITS Fri, 11 Jan 2013 21:40:57 +0100
|
||||
./Gemfile Wed, 09 Jan 2013 21:35:00 +0100
|
||||
./lib/browser.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/cache_file_store.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/common/custom_option_parser.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/common/plugins/plugin.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/common/plugins/plugins.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/common_helper.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/environment.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/updater/git_updater.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/updater/svn_updater.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/updater/updater.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/updater/updater_factory.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/brute_force.rb Sun, 27 Jan 2013 00:31:13 +0100
|
||||
./lib/wpscan/modules/malwares.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/web_site.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_config_backup.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_full_path_disclosure.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_login_protection.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_plugins.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_readme.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_themes.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_timthumbs.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/modules/wp_usernames.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/vulnerable.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_detector.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_enumerator.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_item.rb Fri, 25 Jan 2013 22:39:51 +0100
|
||||
./lib/wpscan/wp_options.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_plugin.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_target.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_theme.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_user.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_version.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wp_vulnerability.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wpscan_helper.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpscan/wpscan_options.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpstools/plugins/checker/checker_plugin.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpstools/plugins/list_generator/generate_list.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpstools/plugins/list_generator/list_generator_plugin.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpstools/plugins/list_generator/svn_parser.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./lib/wpstools/wpstools_helper.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./log.txt Sun, 27 Jan 2013 00:31:06 +0100
|
||||
./README Sat, 19 Jan 2013 18:50:05 +0100
|
||||
./wpscan.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
./wpstools.rb Thu, 24 Jan 2013 22:19:29 +0100
|
||||
|
Before Width: | Height: | Size: 733 B |
|
Before Width: | Height: | Size: 452 B |
|
Before Width: | Height: | Size: 764 B |
|
Before Width: | Height: | Size: 774 B |
|
Before Width: | Height: | Size: 211 B |
|
Before Width: | Height: | Size: 207 B |
|
Before Width: | Height: | Size: 209 B |
|
Before Width: | Height: | Size: 626 B |
|
Before Width: | Height: | Size: 715 B |
|
Before Width: | Height: | Size: 659 B |
|
Before Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 207 B |
|
Before Width: | Height: | Size: 853 B |
|
Before Width: | Height: | Size: 621 B |
|
Before Width: | Height: | Size: 342 B |
|
Before Width: | Height: | Size: 309 B |
|
Before Width: | Height: | Size: 591 B |
|
Before Width: | Height: | Size: 592 B |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 613 B |
|
Before Width: | Height: | Size: 97 B |
|
Before Width: | Height: | Size: 610 B |
|
Before Width: | Height: | Size: 584 B |
|
Before Width: | Height: | Size: 692 B |
160
doc/index.html
@@ -1,160 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body>
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<p>This is the API documentation for RDoc Documentation.
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
@@ -1,153 +0,0 @@
|
||||
/**
|
||||
*
|
||||
* Darkfish Page Functions
|
||||
* $Id: darkfish.js 53 2009-01-07 02:52:03Z deveiant $
|
||||
*
|
||||
* Author: Michael Granger <mgranger@laika.com>
|
||||
*
|
||||
*/
|
||||
|
||||
/* Provide console simulation for firebug-less environments */
|
||||
if (!("console" in window) || !("firebug" in console)) {
|
||||
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
|
||||
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
|
||||
|
||||
window.console = {};
|
||||
for (var i = 0; i < names.length; ++i)
|
||||
window.console[names[i]] = function() {};
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Unwrap the first element that matches the given @expr@ from the targets and return them.
|
||||
*/
|
||||
$.fn.unwrap = function( expr ) {
|
||||
return this.each( function() {
|
||||
$(this).parents( expr ).eq( 0 ).after( this ).remove();
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
function showSource( e ) {
|
||||
var target = e.target;
|
||||
var codeSections = $(target).
|
||||
parents('.method-detail').
|
||||
find('.method-source-code');
|
||||
|
||||
$(target).
|
||||
parents('.method-detail').
|
||||
find('.method-source-code').
|
||||
slideToggle();
|
||||
};
|
||||
|
||||
function hookSourceViews() {
|
||||
$('.method-heading').click( showSource );
|
||||
};
|
||||
|
||||
function toggleDebuggingSection() {
|
||||
$('.debugging-section').slideToggle();
|
||||
};
|
||||
|
||||
function hookDebuggingToggle() {
|
||||
$('#debugging-toggle img').click( toggleDebuggingSection );
|
||||
};
|
||||
|
||||
function hookTableOfContentsToggle() {
|
||||
$('.indexpage li .toc-toggle').each( function() {
|
||||
$(this).click( function() {
|
||||
$(this).toggleClass('open');
|
||||
});
|
||||
|
||||
var section = $(this).next();
|
||||
|
||||
$(this).click( function() {
|
||||
section.slideToggle();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function hookSearch() {
|
||||
var input = $('#search-field').eq(0);
|
||||
var result = $('#search-results').eq(0);
|
||||
$(result).show();
|
||||
|
||||
var search_section = $('#search-section').get(0);
|
||||
$(search_section).show();
|
||||
|
||||
var search = new Search(search_data, input, result);
|
||||
|
||||
search.renderItem = function(result) {
|
||||
var li = document.createElement('li');
|
||||
var html = '';
|
||||
|
||||
// TODO add relative path to <script> per-page
|
||||
html += '<p class="search-match"><a href="' + rdoc_rel_prefix + result.path + '">' + this.hlt(result.title);
|
||||
if (result.params)
|
||||
html += '<span class="params">' + result.params + '</span>';
|
||||
html += '</a>';
|
||||
|
||||
|
||||
if (result.namespace)
|
||||
html += '<p class="search-namespace">' + this.hlt(result.namespace);
|
||||
|
||||
if (result.snippet)
|
||||
html += '<div class="search-snippet">' + result.snippet + '</div>';
|
||||
|
||||
li.innerHTML = html;
|
||||
|
||||
return li;
|
||||
}
|
||||
|
||||
search.select = function(result) {
|
||||
var result_element = result.get(0);
|
||||
window.location.href = result_element.firstChild.firstChild.href;
|
||||
}
|
||||
|
||||
search.scrollIntoView = search.scrollInWindow;
|
||||
};
|
||||
|
||||
function highlightTarget( anchor ) {
|
||||
console.debug( "Highlighting target '%s'.", anchor );
|
||||
|
||||
$("a[name=" + anchor + "]").each( function() {
|
||||
if ( !$(this).parent().parent().hasClass('target-section') ) {
|
||||
console.debug( "Wrapping the target-section" );
|
||||
$('div.method-detail').unwrap( 'div.target-section' );
|
||||
$(this).parent().wrap( '<div class="target-section"></div>' );
|
||||
} else {
|
||||
console.debug( "Already wrapped." );
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
function highlightLocationTarget() {
|
||||
console.debug( "Location hash: %s", window.location.hash );
|
||||
if ( ! window.location.hash || window.location.hash.length == 0 ) return;
|
||||
|
||||
var anchor = window.location.hash.substring(1);
|
||||
console.debug( "Found anchor: %s; matching %s", anchor, "a[name=" + anchor + "]" );
|
||||
|
||||
highlightTarget( anchor );
|
||||
};
|
||||
|
||||
function highlightClickTarget( event ) {
|
||||
console.debug( "Highlighting click target for event %o", event.target );
|
||||
try {
|
||||
var anchor = $(event.target).attr( 'href' ).substring(1);
|
||||
console.debug( "Found target anchor: %s", anchor );
|
||||
highlightTarget( anchor );
|
||||
} catch ( err ) {
|
||||
console.error( "Exception while highlighting: %o", err );
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
$(document).ready( function() {
|
||||
hookSourceViews();
|
||||
hookDebuggingToggle();
|
||||
hookSearch();
|
||||
highlightLocationTarget();
|
||||
hookTableOfContentsToggle();
|
||||
|
||||
$('ul.link-list a').bind( "click", highlightClickTarget );
|
||||
});
|
||||
18
doc/js/jquery.js
vendored
@@ -1,142 +0,0 @@
|
||||
/*
|
||||
* Navigation allows movement using the arrow keys through the search results.
|
||||
*
|
||||
* When using this library you will need to set scrollIntoView to the
|
||||
* appropriate function for your layout. Use scrollInWindow if the container
|
||||
* is not scrollable and scrollInElement if the container is a separate
|
||||
* scrolling region.
|
||||
*/
|
||||
Navigation = new function() {
|
||||
this.initNavigation = function() {
|
||||
var _this = this;
|
||||
|
||||
$(document).keydown(function(e) {
|
||||
_this.onkeydown(e);
|
||||
}).keyup(function(e) {
|
||||
_this.onkeyup(e);
|
||||
});
|
||||
|
||||
this.navigationActive = true;
|
||||
}
|
||||
|
||||
this.setNavigationActive = function(state) {
|
||||
this.navigationActive = state;
|
||||
this.clearMoveTimeout();
|
||||
}
|
||||
|
||||
this.onkeyup = function(e) {
|
||||
if (!this.navigationActive) return;
|
||||
|
||||
switch(e.keyCode) {
|
||||
case 37: //Event.KEY_LEFT:
|
||||
case 38: //Event.KEY_UP:
|
||||
case 39: //Event.KEY_RIGHT:
|
||||
case 40: //Event.KEY_DOWN:
|
||||
this.clearMoveTimeout();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
this.onkeydown = function(e) {
|
||||
if (!this.navigationActive) return;
|
||||
switch(e.keyCode) {
|
||||
case 37: //Event.KEY_LEFT:
|
||||
if (this.moveLeft()) e.preventDefault();
|
||||
break;
|
||||
case 38: //Event.KEY_UP:
|
||||
if (e.keyCode == 38 || e.ctrlKey) {
|
||||
if (this.moveUp()) e.preventDefault();
|
||||
this.startMoveTimeout(false);
|
||||
}
|
||||
break;
|
||||
case 39: //Event.KEY_RIGHT:
|
||||
if (this.moveRight()) e.preventDefault();
|
||||
break;
|
||||
case 40: //Event.KEY_DOWN:
|
||||
if (e.keyCode == 40 || e.ctrlKey) {
|
||||
if (this.moveDown()) e.preventDefault();
|
||||
this.startMoveTimeout(true);
|
||||
}
|
||||
break;
|
||||
case 13: //Event.KEY_RETURN:
|
||||
if (this.$current)
|
||||
e.preventDefault();
|
||||
this.select(this.$current);
|
||||
break;
|
||||
}
|
||||
if (e.ctrlKey && e.shiftKey) this.select(this.$current);
|
||||
}
|
||||
|
||||
this.clearMoveTimeout = function() {
|
||||
clearTimeout(this.moveTimeout);
|
||||
this.moveTimeout = null;
|
||||
}
|
||||
|
||||
this.startMoveTimeout = function(isDown) {
|
||||
if (!$.browser.mozilla && !$.browser.opera) return;
|
||||
if (this.moveTimeout) this.clearMoveTimeout();
|
||||
var _this = this;
|
||||
|
||||
var go = function() {
|
||||
if (!_this.moveTimeout) return;
|
||||
_this[isDown ? 'moveDown' : 'moveUp']();
|
||||
_this.moveTimout = setTimeout(go, 100);
|
||||
}
|
||||
this.moveTimeout = setTimeout(go, 200);
|
||||
}
|
||||
|
||||
this.moveRight = function() {
|
||||
}
|
||||
|
||||
this.moveLeft = function() {
|
||||
}
|
||||
|
||||
this.move = function(isDown) {
|
||||
}
|
||||
|
||||
this.moveUp = function() {
|
||||
return this.move(false);
|
||||
}
|
||||
|
||||
this.moveDown = function() {
|
||||
return this.move(true);
|
||||
}
|
||||
|
||||
/*
|
||||
* Scrolls to the given element in the scrollable element view.
|
||||
*/
|
||||
this.scrollInElement = function(element, view) {
|
||||
var offset, viewHeight, viewScroll, height;
|
||||
offset = element.offsetTop;
|
||||
height = element.offsetHeight;
|
||||
viewHeight = view.offsetHeight;
|
||||
viewScroll = view.scrollTop;
|
||||
|
||||
if (offset - viewScroll + height > viewHeight) {
|
||||
view.scrollTop = offset - viewHeight + height;
|
||||
}
|
||||
if (offset < viewScroll) {
|
||||
view.scrollTop = offset;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Scrolls to the given element in the window. The second argument is
|
||||
* ignored
|
||||
*/
|
||||
this.scrollInWindow = function(element, ignored) {
|
||||
var offset, viewHeight, viewScroll, height;
|
||||
offset = element.offsetTop;
|
||||
height = element.offsetHeight;
|
||||
viewHeight = window.innerHeight;
|
||||
viewScroll = window.scrollY;
|
||||
|
||||
if (offset - viewScroll + height > viewHeight) {
|
||||
window.scrollTo(window.scrollX, offset - viewHeight + height);
|
||||
}
|
||||
if (offset < viewScroll) {
|
||||
window.scrollTo(window.scrollX, offset);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,94 +0,0 @@
|
||||
Search = function(data, input, result) {
|
||||
this.data = data;
|
||||
this.$input = $(input);
|
||||
this.$result = $(result);
|
||||
|
||||
this.$current = null;
|
||||
this.$view = this.$result.parent();
|
||||
this.searcher = new Searcher(data.index);
|
||||
this.init();
|
||||
}
|
||||
|
||||
Search.prototype = $.extend({}, Navigation, new function() {
|
||||
var suid = 1;
|
||||
|
||||
this.init = function() {
|
||||
var _this = this;
|
||||
var observer = function() {
|
||||
_this.search(_this.$input[0].value);
|
||||
};
|
||||
this.$input.keyup(observer);
|
||||
this.$input.click(observer); // mac's clear field
|
||||
|
||||
this.searcher.ready(function(results, isLast) {
|
||||
_this.addResults(results, isLast);
|
||||
})
|
||||
|
||||
this.initNavigation();
|
||||
this.setNavigationActive(false);
|
||||
}
|
||||
|
||||
this.search = function(value, selectFirstMatch) {
|
||||
value = jQuery.trim(value).toLowerCase();
|
||||
if (value) {
|
||||
this.setNavigationActive(true);
|
||||
} else {
|
||||
this.setNavigationActive(false);
|
||||
}
|
||||
|
||||
if (value == '') {
|
||||
this.lastQuery = value;
|
||||
this.$result.empty();
|
||||
this.setNavigationActive(false);
|
||||
} else if (value != this.lastQuery) {
|
||||
this.lastQuery = value;
|
||||
this.firstRun = true;
|
||||
this.searcher.find(value);
|
||||
}
|
||||
}
|
||||
|
||||
this.addResults = function(results, isLast) {
|
||||
var target = this.$result.get(0);
|
||||
if (this.firstRun && (results.length > 0 || isLast)) {
|
||||
this.$current = null;
|
||||
this.$result.empty();
|
||||
}
|
||||
|
||||
for (var i=0, l = results.length; i < l; i++) {
|
||||
target.appendChild(this.renderItem.call(this, results[i]));
|
||||
};
|
||||
|
||||
if (this.firstRun && results.length > 0) {
|
||||
this.firstRun = false;
|
||||
this.$current = $(target.firstChild);
|
||||
this.$current.addClass('current');
|
||||
}
|
||||
if (jQuery.browser.msie) this.$element[0].className += '';
|
||||
}
|
||||
|
||||
this.move = function(isDown) {
|
||||
if (!this.$current) return;
|
||||
var $next = this.$current[isDown ? 'next' : 'prev']();
|
||||
if ($next.length) {
|
||||
this.$current.removeClass('current');
|
||||
$next.addClass('current');
|
||||
this.scrollIntoView($next[0], this.$view[0]);
|
||||
this.$current = $next;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
this.hlt = function(html) {
|
||||
return this.escapeHTML(html).
|
||||
replace(/\u0001/g, '<em>').
|
||||
replace(/\u0002/g, '</em>');
|
||||
}
|
||||
|
||||
this.escapeHTML = function(html) {
|
||||
return html.replace(/[&<>]/g, function(c) {
|
||||
return '&#' + c.charCodeAt(0) + ';';
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
@@ -1,228 +0,0 @@
|
||||
Searcher = function(data) {
|
||||
this.data = data;
|
||||
this.handlers = [];
|
||||
}
|
||||
|
||||
Searcher.prototype = new function() {
|
||||
// search is performed in chunks of 1000 for non-blocking user input
|
||||
var CHUNK_SIZE = 1000;
|
||||
// do not try to find more than 100 results
|
||||
var MAX_RESULTS = 100;
|
||||
var huid = 1;
|
||||
var suid = 1;
|
||||
var runs = 0;
|
||||
|
||||
this.find = function(query) {
|
||||
var queries = splitQuery(query);
|
||||
var regexps = buildRegexps(queries);
|
||||
var highlighters = buildHilighters(queries);
|
||||
var state = { from: 0, pass: 0, limit: MAX_RESULTS, n: suid++};
|
||||
var _this = this;
|
||||
|
||||
this.currentSuid = state.n;
|
||||
|
||||
if (!query) return;
|
||||
|
||||
var run = function() {
|
||||
// stop current search thread if new search started
|
||||
if (state.n != _this.currentSuid) return;
|
||||
|
||||
var results =
|
||||
performSearch(_this.data, regexps, queries, highlighters, state);
|
||||
var hasMore = (state.limit > 0 && state.pass < 4);
|
||||
|
||||
triggerResults.call(_this, results, !hasMore);
|
||||
if (hasMore) {
|
||||
setTimeout(run, 2);
|
||||
}
|
||||
runs++;
|
||||
};
|
||||
runs = 0;
|
||||
|
||||
// start search thread
|
||||
run();
|
||||
}
|
||||
|
||||
/* ----- Events ------ */
|
||||
this.ready = function(fn) {
|
||||
fn.huid = huid;
|
||||
this.handlers.push(fn);
|
||||
}
|
||||
|
||||
/* ----- Utilities ------ */
|
||||
function splitQuery(query) {
|
||||
return jQuery.grep(query.split(/(\s+|::?|\(\)?)/), function(string) {
|
||||
return string.match(/\S/)
|
||||
});
|
||||
}
|
||||
|
||||
function buildRegexps(queries) {
|
||||
return jQuery.map(queries, function(query) {
|
||||
return new RegExp(query.replace(/(.)/g, '([$1])([^$1]*?)'), 'i')
|
||||
});
|
||||
}
|
||||
|
||||
function buildHilighters(queries) {
|
||||
return jQuery.map(queries, function(query) {
|
||||
return jQuery.map(query.split(''), function(l, i) {
|
||||
return '\u0001$' + (i*2+1) + '\u0002$' + (i*2+2);
|
||||
}).join('');
|
||||
});
|
||||
}
|
||||
|
||||
// function longMatchRegexp(index, longIndex, regexps) {
|
||||
// for (var i = regexps.length - 1; i >= 0; i--){
|
||||
// if (!index.match(regexps[i]) && !longIndex.match(regexps[i])) return false;
|
||||
// };
|
||||
// return true;
|
||||
// }
|
||||
|
||||
|
||||
/* ----- Mathchers ------ */
|
||||
|
||||
/*
|
||||
* This record matches if the index starts with queries[0] and the record
|
||||
* matches all of the regexps
|
||||
*/
|
||||
function matchPassBeginning(index, longIndex, queries, regexps) {
|
||||
if (index.indexOf(queries[0]) != 0) return false;
|
||||
for (var i=1, l = regexps.length; i < l; i++) {
|
||||
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
|
||||
return false;
|
||||
};
|
||||
return true;
|
||||
}
|
||||
|
||||
/*
|
||||
* This record matches if the longIndex starts with queries[0] and the
|
||||
* longIndex matches all of the regexps
|
||||
*/
|
||||
function matchPassLongIndex(index, longIndex, queries, regexps) {
|
||||
if (longIndex.indexOf(queries[0]) != 0) return false;
|
||||
for (var i=1, l = regexps.length; i < l; i++) {
|
||||
if (!longIndex.match(regexps[i]))
|
||||
return false;
|
||||
};
|
||||
return true;
|
||||
}
|
||||
|
||||
/*
|
||||
* This record matches if the index contains queries[0] and the record
|
||||
* matches all of the regexps
|
||||
*/
|
||||
function matchPassContains(index, longIndex, queries, regexps) {
|
||||
if (index.indexOf(queries[0]) == -1) return false;
|
||||
for (var i=1, l = regexps.length; i < l; i++) {
|
||||
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
|
||||
return false;
|
||||
};
|
||||
return true;
|
||||
}
|
||||
|
||||
/*
|
||||
* This record matches if regexps[0] matches the index and the record
|
||||
* matches all of the regexps
|
||||
*/
|
||||
function matchPassRegexp(index, longIndex, queries, regexps) {
|
||||
if (!index.match(regexps[0])) return false;
|
||||
for (var i=1, l = regexps.length; i < l; i++) {
|
||||
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
|
||||
return false;
|
||||
};
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/* ----- Highlighters ------ */
|
||||
function highlightRegexp(info, queries, regexps, highlighters) {
|
||||
var result = createResult(info);
|
||||
for (var i=0, l = regexps.length; i < l; i++) {
|
||||
result.title = result.title.replace(regexps[i], highlighters[i]);
|
||||
result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
function hltSubstring(string, pos, length) {
|
||||
return string.substring(0, pos) + '\u0001' + string.substring(pos, pos + length) + '\u0002' + string.substring(pos + length);
|
||||
}
|
||||
|
||||
function highlightQuery(info, queries, regexps, highlighters) {
|
||||
var result = createResult(info);
|
||||
var pos = 0;
|
||||
var lcTitle = result.title.toLowerCase();
|
||||
|
||||
pos = lcTitle.indexOf(queries[0]);
|
||||
if (pos != -1) {
|
||||
result.title = hltSubstring(result.title, pos, queries[0].length);
|
||||
}
|
||||
|
||||
result.namespace = result.namespace.replace(regexps[0], highlighters[0]);
|
||||
for (var i=1, l = regexps.length; i < l; i++) {
|
||||
result.title = result.title.replace(regexps[i], highlighters[i]);
|
||||
result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
function createResult(info) {
|
||||
var result = {};
|
||||
result.title = info[0];
|
||||
result.namespace = info[1];
|
||||
result.path = info[2];
|
||||
result.params = info[3];
|
||||
result.snippet = info[4];
|
||||
return result;
|
||||
}
|
||||
|
||||
/* ----- Searching ------ */
|
||||
function performSearch(data, regexps, queries, highlighters, state) {
|
||||
var searchIndex = data.searchIndex;
|
||||
var longSearchIndex = data.longSearchIndex;
|
||||
var info = data.info;
|
||||
var result = [];
|
||||
var i = state.from;
|
||||
var l = searchIndex.length;
|
||||
var togo = CHUNK_SIZE;
|
||||
var matchFunc, hltFunc;
|
||||
|
||||
while (state.pass < 4 && state.limit > 0 && togo > 0) {
|
||||
if (state.pass == 0) {
|
||||
matchFunc = matchPassBeginning;
|
||||
hltFunc = highlightQuery;
|
||||
} else if (state.pass == 1) {
|
||||
matchFunc = matchPassLongIndex;
|
||||
hltFunc = highlightQuery;
|
||||
} else if (state.pass == 2) {
|
||||
matchFunc = matchPassContains;
|
||||
hltFunc = highlightQuery;
|
||||
} else if (state.pass == 3) {
|
||||
matchFunc = matchPassRegexp;
|
||||
hltFunc = highlightRegexp;
|
||||
}
|
||||
|
||||
for (; togo > 0 && i < l && state.limit > 0; i++, togo--) {
|
||||
if (info[i].n == state.n) continue;
|
||||
if (matchFunc(searchIndex[i], longSearchIndex[i], queries, regexps)) {
|
||||
info[i].n = state.n;
|
||||
result.push(hltFunc(info[i], queries, regexps, highlighters));
|
||||
state.limit--;
|
||||
}
|
||||
};
|
||||
if (searchIndex.length <= i) {
|
||||
state.pass++;
|
||||
i = state.from = 0;
|
||||
} else {
|
||||
state.from = i;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
function triggerResults(results, isLast) {
|
||||
jQuery.each(this.handlers, function(i, fn) {
|
||||
fn.call(this, results, isLast)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
239
doc/log_txt.html
@@ -1,239 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>log - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body class="file">
|
||||
<nav id="metadata">
|
||||
<nav id="home-section" class="section">
|
||||
<h3 class="section-header">
|
||||
<a href="./index.html">Home</a>
|
||||
<a href="./table_of_contents.html#classes">Classes</a>
|
||||
<a href="./table_of_contents.html#methods">Methods</a>
|
||||
</h3>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav id="search-section" class="section project-section" class="initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<h3 class="section-header">
|
||||
<input type="text" name="search" placeholder="Search" id="search-field"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</h3>
|
||||
</form>
|
||||
|
||||
<ul id="search-results" class="initially-hidden"></ul>
|
||||
</nav>
|
||||
|
||||
|
||||
<div id="project-metadata">
|
||||
<nav id="fileindex-section" class="section project-section">
|
||||
<h3 class="section-header">Pages</h3>
|
||||
|
||||
<ul>
|
||||
|
||||
<li class="file"><a href="./CREDITS.html">CREDITS</a>
|
||||
|
||||
<li class="file"><a href="./Gemfile.html">Gemfile</a>
|
||||
|
||||
<li class="file"><a href="./README.html">README</a>
|
||||
|
||||
<li class="file"><a href="./log_txt.html">log</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav id="classindex-section" class="section project-section">
|
||||
<h3 class="section-header">Class and Module Index</h3>
|
||||
|
||||
<ul class="link-list">
|
||||
|
||||
<li><a href="./Array.html">Array</a>
|
||||
|
||||
<li><a href="./Browser.html">Browser</a>
|
||||
|
||||
<li><a href="./BruteForce.html">BruteForce</a>
|
||||
|
||||
<li><a href="./CacheFileStore.html">CacheFileStore</a>
|
||||
|
||||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a>
|
||||
|
||||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a>
|
||||
|
||||
<li><a href="./GenerateList.html">GenerateList</a>
|
||||
|
||||
<li><a href="./GitUpdater.html">GitUpdater</a>
|
||||
|
||||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
|
||||
<li><a href="./Malwares.html">Malwares</a>
|
||||
|
||||
<li><a href="./Object.html">Object</a>
|
||||
|
||||
<li><a href="./Plugin.html">Plugin</a>
|
||||
|
||||
<li><a href="./Plugins.html">Plugins</a>
|
||||
|
||||
<li><a href="./SvnParser.html">SvnParser</a>
|
||||
|
||||
<li><a href="./SvnUpdater.html">SvnUpdater</a>
|
||||
|
||||
<li><a href="./URI.html">URI</a>
|
||||
|
||||
<li><a href="./Updater.html">Updater</a>
|
||||
|
||||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a>
|
||||
|
||||
<li><a href="./Vulnerable.html">Vulnerable</a>
|
||||
|
||||
<li><a href="./WebSite.html">WebSite</a>
|
||||
|
||||
<li><a href="./WpConfigBackup.html">WpConfigBackup</a>
|
||||
|
||||
<li><a href="./WpDetector.html">WpDetector</a>
|
||||
|
||||
<li><a href="./WpEnumerator.html">WpEnumerator</a>
|
||||
|
||||
<li><a href="./WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
|
||||
<li><a href="./WpItem.html">WpItem</a>
|
||||
|
||||
<li><a href="./WpLoginProtection.html">WpLoginProtection</a>
|
||||
|
||||
<li><a href="./WpOptions.html">WpOptions</a>
|
||||
|
||||
<li><a href="./WpPlugin.html">WpPlugin</a>
|
||||
|
||||
<li><a href="./WpPlugins.html">WpPlugins</a>
|
||||
|
||||
<li><a href="./WpReadme.html">WpReadme</a>
|
||||
|
||||
<li><a href="./WpTarget.html">WpTarget</a>
|
||||
|
||||
<li><a href="./WpTheme.html">WpTheme</a>
|
||||
|
||||
<li><a href="./WpThemes.html">WpThemes</a>
|
||||
|
||||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a>
|
||||
|
||||
<li><a href="./WpUser.html">WpUser</a>
|
||||
|
||||
<li><a href="./WpUsernames.html">WpUsernames</a>
|
||||
|
||||
<li><a href="./WpVersion.html">WpVersion</a>
|
||||
|
||||
<li><a href="./WpVulnerability.html">WpVulnerability</a>
|
||||
|
||||
<li><a href="./WpscanOptions.html">WpscanOptions</a>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div id="documentation" class="description">
|
||||
|
||||
<p><em>__</em></p>
|
||||
|
||||
<pre>__ _______ _____
|
||||
\ \ / / __ \ / ____|
|
||||
\ \ /\ / /| |__) | (___ ___ __ _ _ __
|
||||
\ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \
|
||||
\ /\ / | | ____) | (__| (_| | | | |
|
||||
\/ \/ |_| |_____/ \___|\__,_|_| |_| v2.0r60a6f16
|
||||
|
||||
WordPress Security Scanner by the WPScan Team
|
||||
Sponsored by the RandomStorm Open Source Initiative</pre>
|
||||
|
||||
<p><em>_</em></p>
|
||||
|
||||
<p>Examples :</p>
|
||||
|
||||
<p>-Further help … ruby /Users/firefart/Coding/wpscan_master/wpscan.rb –help</p>
|
||||
|
||||
<p>-Do ‘non-intrusive’ checks … ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb –url <a
|
||||
href="http://www.example.com">www.example.com</a></p>
|
||||
|
||||
<p>-Do wordlist password brute force on enumerated users using 50 threads …
|
||||
ruby /Users/firefart/Coding/wpscan_master/wpscan.rb –url <a
|
||||
href="http://www.example.com">www.example.com</a> –wordlist darkc0de.lst
|
||||
–threads 50</p>
|
||||
|
||||
<p>-Do wordlist password brute force on the ‘admin’ username only … ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb –url <a
|
||||
href="http://www.example.com">www.example.com</a> –wordlist darkc0de.lst
|
||||
–username admin</p>
|
||||
|
||||
<p>-Enumerate installed plugins … ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb –url <a
|
||||
href="http://www.example.com">www.example.com</a> –enumerate p</p>
|
||||
|
||||
<p>-Enumerate installed themes … ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb –url <a
|
||||
href="http://www.example.com">www.example.com</a> –enumerate t</p>
|
||||
|
||||
<p>-Enumerate users … ruby /Users/firefart/Coding/wpscan_master/wpscan.rb –url
|
||||
<a href="http://www.example.com">www.example.com</a> –enumerate u</p>
|
||||
|
||||
<p>-Enumerate installed timthumbs … ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb –url <a
|
||||
href="http://www.example.com">www.example.com</a> –enumerate tt</p>
|
||||
|
||||
<p>-Use a HTTP proxy … ruby /Users/firefart/Coding/wpscan_master/wpscan.rb
|
||||
–url <a href="http://www.example.com">www.example.com</a> –proxy
|
||||
127.0.0.1:8118</p>
|
||||
|
||||
<p>-Use a SOCKS5 proxy … (cURL >= v7.21.7 needed) ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb –url <a
|
||||
href="http://www.example.com">www.example.com</a> –proxy
|
||||
socks5://127.0.0.1:9000</p>
|
||||
|
||||
<p>-Use custom content directory … ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb -u <a
|
||||
href="http://www.example.com">www.example.com</a> –wp-content-dir
|
||||
custom-content</p>
|
||||
|
||||
<p>-Use custom plugins directory … ruby
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb -u <a
|
||||
href="http://www.example.com">www.example.com</a> –wp-plugins-dir
|
||||
wp-content/custom-plugins</p>
|
||||
|
||||
<p>-Update … ruby /Users/firefart/Coding/wpscan_master/wpscan.rb –update</p>
|
||||
|
||||
<p>See <a href="README.html">README</a> for further information.</p>
|
||||
|
||||
<p>[<a href="http://ERROR">31m</a> No argument supplied [0m Trace :
|
||||
/Users/firefart/Coding/wpscan_master/wpscan.rb:46:in `<main>‘
|
||||
Coverage report generated for RSpec to
|
||||
/Users/firefart/Coding/wpscan_master/coverage. 1040 / 1113 LOC (93.44%)
|
||||
covered.</p>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||
543
doc/rdoc.css
@@ -1,543 +0,0 @@
|
||||
/*
|
||||
* "Darkfish" Rdoc CSS
|
||||
* $Id: rdoc.css 54 2009-01-27 01:09:48Z deveiant $
|
||||
*
|
||||
* Author: Michael Granger <ged@FaerieMUD.org>
|
||||
*
|
||||
*/
|
||||
|
||||
/* Base Green is: #6C8C22 */
|
||||
|
||||
* { padding: 0; margin: 0; }
|
||||
|
||||
body {
|
||||
background: #efefef;
|
||||
font: 14px "Helvetica Neue", Helvetica, Tahoma, sans-serif;
|
||||
margin-left: 40px;
|
||||
}
|
||||
body.file-popup {
|
||||
font-size: 90%;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 300%;
|
||||
text-shadow: rgba(135,145,135,0.65) 2px 2px 3px;
|
||||
color: #6C8C22;
|
||||
}
|
||||
h2,h3,h4 { margin-top: 1.5em; }
|
||||
|
||||
:link,
|
||||
:visited {
|
||||
color: #6C8C22;
|
||||
text-decoration: none;
|
||||
}
|
||||
:link:hover,
|
||||
:visited:hover {
|
||||
border-bottom: 1px dotted #6C8C22;
|
||||
}
|
||||
|
||||
pre {
|
||||
background: #ddd;
|
||||
padding: 0.5em 0;
|
||||
}
|
||||
|
||||
/* @group Generic Classes */
|
||||
|
||||
.initially-hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#search-field {
|
||||
width: 98%;
|
||||
background: #eee;
|
||||
border: none;
|
||||
height: 1.5em;
|
||||
-webkit-border-radius: 4px;
|
||||
}
|
||||
#search-field:focus {
|
||||
background: #f1edba;
|
||||
}
|
||||
#search-field:-moz-placeholder,
|
||||
#search-field::-webkit-input-placeholder {
|
||||
font-weight: bold;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.missing-docs {
|
||||
font-size: 120%;
|
||||
background: white url(images/wrench_orange.png) no-repeat 4px center;
|
||||
color: #ccc;
|
||||
line-height: 2em;
|
||||
border: 1px solid #d00;
|
||||
opacity: 1;
|
||||
padding-left: 20px;
|
||||
text-indent: 24px;
|
||||
letter-spacing: 3px;
|
||||
font-weight: bold;
|
||||
-webkit-border-radius: 5px;
|
||||
-moz-border-radius: 5px;
|
||||
}
|
||||
|
||||
.target-section {
|
||||
border: 2px solid #dcce90;
|
||||
border-left-width: 8px;
|
||||
padding: 0 1em;
|
||||
background: #fff3c2;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Index Page, Standalone file pages */
|
||||
.indexpage ul {
|
||||
line-height: 160%;
|
||||
list-style: none;
|
||||
}
|
||||
.indexpage ul :link,
|
||||
.indexpage ul :visited {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.indexpage li {
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.indexpage ul > li {
|
||||
background: url(images/bullet_black.png) no-repeat left 4px;
|
||||
}
|
||||
.indexpage li.method {
|
||||
background: url(images/plugin.png) no-repeat left 4px;
|
||||
}
|
||||
.indexpage li.module {
|
||||
background: url(images/package.png) no-repeat left 4px;
|
||||
}
|
||||
.indexpage li.class {
|
||||
background: url(images/ruby.png) no-repeat left 4px;
|
||||
}
|
||||
.indexpage li.file {
|
||||
background: url(images/page_white_text.png) no-repeat left 4px;
|
||||
}
|
||||
.indexpage li li {
|
||||
background: url(images/tag_blue.png) no-repeat left 4px;
|
||||
}
|
||||
.indexpage li .toc-toggle {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background: url(images/add.png) no-repeat;
|
||||
}
|
||||
|
||||
.indexpage li .toc-toggle.open {
|
||||
background: url(images/delete.png) no-repeat;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Top-Level Structure */
|
||||
|
||||
#metadata {
|
||||
float: left;
|
||||
width: 260px;
|
||||
}
|
||||
|
||||
#documentation {
|
||||
margin: 2em 1em 5em 300px;
|
||||
min-width: 340px;
|
||||
}
|
||||
|
||||
#validator-badges {
|
||||
clear: both;
|
||||
margin: 1em 1em 2em;
|
||||
font-size: smaller;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Metadata Section */
|
||||
#metadata .section {
|
||||
background-color: #dedede;
|
||||
-moz-border-radius: 5px;
|
||||
-webkit-border-radius: 5px;
|
||||
border: 1px solid #aaa;
|
||||
margin: 0 8px 8px;
|
||||
font-size: 90%;
|
||||
overflow: hidden;
|
||||
}
|
||||
#metadata h3.section-header {
|
||||
margin: 0;
|
||||
padding: 2px 8px;
|
||||
background: #ccc;
|
||||
color: #666;
|
||||
-moz-border-radius-topleft: 4px;
|
||||
-moz-border-radius-topright: 4px;
|
||||
-webkit-border-top-left-radius: 4px;
|
||||
-webkit-border-top-right-radius: 4px;
|
||||
border-bottom: 1px solid #aaa;
|
||||
}
|
||||
#metadata #home-section h3.section-header {
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
#metadata ul,
|
||||
#metadata dl,
|
||||
#metadata p {
|
||||
padding: 8px;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
#file-metadata {
|
||||
margin-top: 2em;
|
||||
}
|
||||
|
||||
#file-metadata ul {
|
||||
padding-left: 28px;
|
||||
list-style-image: url(images/page_green.png);
|
||||
}
|
||||
|
||||
dl.svninfo {
|
||||
color: #666;
|
||||
margin: 0;
|
||||
}
|
||||
dl.svninfo dt {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
ul.link-list li {
|
||||
white-space: nowrap;
|
||||
}
|
||||
ul.link-list .type {
|
||||
font-size: 8px;
|
||||
text-transform: uppercase;
|
||||
color: white;
|
||||
background: #969696;
|
||||
padding: 2px 4px;
|
||||
-webkit-border-radius: 5px;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Class Metadata Section */
|
||||
#class-metadata {
|
||||
margin-top: 2em;
|
||||
}
|
||||
/* @end */
|
||||
|
||||
/* @group Project Metadata Section */
|
||||
#project-metadata {
|
||||
margin-top: 2em;
|
||||
}
|
||||
|
||||
#project-metadata .section {
|
||||
border: 1px solid #aaa;
|
||||
}
|
||||
#project-metadata h3.section-header {
|
||||
border-bottom: 1px solid #aaa;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#project-metadata form {
|
||||
color: #777;
|
||||
background: #ccc;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Documentation Section */
|
||||
.description {
|
||||
font-size: 100%;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.description p {
|
||||
margin: 1em 0.4em;
|
||||
}
|
||||
|
||||
.description li p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.description ol,
|
||||
.description ul {
|
||||
margin-left: 1.5em;
|
||||
}
|
||||
.description ol li,
|
||||
.description ul li {
|
||||
line-height: 1.4em;
|
||||
}
|
||||
|
||||
.note-list {
|
||||
margin: 8px 0;
|
||||
}
|
||||
|
||||
.label-list {
|
||||
margin: 8px 1.5em;
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
.description .label-list {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.note-list dt {
|
||||
font-weight: bold;
|
||||
}
|
||||
.note-list dd {
|
||||
padding: 0 12px;
|
||||
}
|
||||
|
||||
.label-list dt {
|
||||
padding: 2px 4px;
|
||||
font-weight: bold;
|
||||
background: #ddd;
|
||||
}
|
||||
.label-list dd {
|
||||
padding: 2px 12px;
|
||||
}
|
||||
.label-list dd + dt,
|
||||
.note-list dd + dt {
|
||||
margin-top: 0.7em;
|
||||
}
|
||||
|
||||
#documentation .section {
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
#documentation h2.section-header {
|
||||
margin-top: 1em;
|
||||
padding: 0.25em 0.5em;
|
||||
background: #ccc;
|
||||
color: #333;
|
||||
font-size: 175%;
|
||||
border: 1px solid #bbb;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
}
|
||||
|
||||
.documentation-section-title {
|
||||
position: relative;
|
||||
}
|
||||
.documentation-section-title .section-click-top {
|
||||
position: absolute;
|
||||
top: 6px;
|
||||
right: 12px;
|
||||
font-size: 10px;
|
||||
color: #9b9877;
|
||||
visibility: hidden;
|
||||
padding-right: 0.5px;
|
||||
}
|
||||
|
||||
.documentation-section-title:hover .section-click-top {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
#documentation h3.section-header {
|
||||
margin-top: 1em;
|
||||
padding: 0.25em 0.5em;
|
||||
background-color: #dedede;
|
||||
color: #333;
|
||||
font-size: 150%;
|
||||
border: 1px solid #bbb;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
}
|
||||
|
||||
#constants-list > dl,
|
||||
#attributes-list > dl {
|
||||
margin: 1em 0 2em;
|
||||
border: 0;
|
||||
}
|
||||
#constants-list > dl dt,
|
||||
#attributes-list > dl dt {
|
||||
padding-left: 0;
|
||||
font-weight: bold;
|
||||
font-family: Monaco, "Andale Mono";
|
||||
background: inherit;
|
||||
}
|
||||
#constants-list > dl dt a,
|
||||
#attributes-list > dl dt a {
|
||||
color: inherit;
|
||||
}
|
||||
#constants-list > dl dd,
|
||||
#attributes-list > dl dd {
|
||||
margin: 0 0 1em 0;
|
||||
padding: 0;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.documentation-section h2 {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.documentation-section h2 a {
|
||||
position: absolute;
|
||||
top: 8px;
|
||||
right: 10px;
|
||||
font-size: 12px;
|
||||
color: #9b9877;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.documentation-section h2:hover a {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
/* @group Method Details */
|
||||
|
||||
#documentation .method-source-code {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#documentation .method-detail {
|
||||
margin: 0.5em 0;
|
||||
padding: 0.5em 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
#documentation .method-detail:hover {
|
||||
background-color: #f1edba;
|
||||
}
|
||||
#documentation .method-heading {
|
||||
position: relative;
|
||||
padding: 2px 4px 0 20px;
|
||||
font-size: 125%;
|
||||
font-weight: bold;
|
||||
color: #333;
|
||||
background: url(images/brick.png) no-repeat left bottom;
|
||||
}
|
||||
#documentation .method-heading :link,
|
||||
#documentation .method-heading :visited {
|
||||
color: inherit;
|
||||
}
|
||||
#documentation .method-click-advice {
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
right: 5px;
|
||||
font-size: 10px;
|
||||
color: #9b9877;
|
||||
visibility: hidden;
|
||||
padding-right: 20px;
|
||||
line-height: 20px;
|
||||
background: url(images/zoom.png) no-repeat right top;
|
||||
}
|
||||
#documentation .method-heading:hover .method-click-advice {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
#documentation .method-alias .method-heading {
|
||||
color: #666;
|
||||
background: url(images/brick_link.png) no-repeat left bottom;
|
||||
}
|
||||
|
||||
#documentation .method-description,
|
||||
#documentation .aliases {
|
||||
margin: 0 20px;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
#documentation .method-description p,
|
||||
#documentation .aliases p {
|
||||
line-height: 1.2em;
|
||||
}
|
||||
|
||||
#documentation .aliases {
|
||||
padding-top: 4px;
|
||||
font-style: italic;
|
||||
cursor: default;
|
||||
}
|
||||
#documentation .method-description p {
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
#documentation .method-description ul {
|
||||
margin-left: 1.5em;
|
||||
}
|
||||
pre {
|
||||
margin: 0.5em 0;
|
||||
}
|
||||
|
||||
#documentation .attribute-method-heading {
|
||||
background: url(images/tag_green.png) no-repeat left bottom;
|
||||
}
|
||||
#documentation #attribute-method-details .method-detail:hover {
|
||||
background-color: transparent;
|
||||
cursor: default;
|
||||
}
|
||||
#documentation .attribute-access-type {
|
||||
font-size: 60%;
|
||||
text-transform: uppercase;
|
||||
vertical-align: super;
|
||||
padding: 0 2px;
|
||||
}
|
||||
/* @end */
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Source Code */
|
||||
|
||||
pre {
|
||||
overflow: auto;
|
||||
background: #262626;
|
||||
color: white;
|
||||
border: 1px dashed #999;
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
.description pre {
|
||||
margin: 0 0.4em;
|
||||
}
|
||||
|
||||
.ruby-constant { color: #7fffd4; background: transparent; }
|
||||
.ruby-keyword { color: #00ffff; background: transparent; }
|
||||
.ruby-ivar { color: #eedd82; background: transparent; }
|
||||
.ruby-operator { color: #00ffee; background: transparent; }
|
||||
.ruby-identifier { color: #ffdead; background: transparent; }
|
||||
.ruby-node { color: #ffa07a; background: transparent; }
|
||||
.ruby-comment { color: #dc0000; font-weight: bold; background: transparent; }
|
||||
.ruby-regexp { color: #ffa07a; background: transparent; }
|
||||
.ruby-value { color: #7fffd4; background: transparent; }
|
||||
|
||||
/* @end */
|
||||
|
||||
|
||||
/* @group search results */
|
||||
#search-results h1 {
|
||||
font-size: 1em;
|
||||
font-weight: normal;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
#search-results .current {
|
||||
background: #ccc;
|
||||
border-bottom: 1px solid transparent;
|
||||
}
|
||||
|
||||
#search-results li {
|
||||
list-style: none;
|
||||
border-bottom: 1px solid #aaa;
|
||||
-moz-border-radius: 4px;
|
||||
-webkit-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
#search-results li:last-child {
|
||||
border-bottom: none;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
#search-results li p {
|
||||
padding: 0;
|
||||
margin: 0.5em;
|
||||
}
|
||||
|
||||
#search-results .search-namespace {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#search-results li em {
|
||||
background: yellow;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
#search-results pre {
|
||||
margin: 0.5em;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
@@ -1,622 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||
|
||||
<title>Table of Contents - RDoc Documentation</title>
|
||||
|
||||
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "./";
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
||||
|
||||
|
||||
<body class="indexpage">
|
||||
<h1>Table of Contents - RDoc Documentation</h1>
|
||||
|
||||
<h2>Pages</h2>
|
||||
<ul>
|
||||
<li class="file">
|
||||
<a href="CREDITS.html">CREDITS</a>
|
||||
</li>
|
||||
<li class="file">
|
||||
<a href="Gemfile.html">Gemfile</a>
|
||||
</li>
|
||||
<li class="file">
|
||||
<a href="README.html">README</a>
|
||||
|
||||
<img class="toc-toggle" src="images/transparent.png" alt="" title="toggle headings">
|
||||
<ul class="initially-hidden">
|
||||
<li><a href="README.html#label-LICENSE%3D%3D">LICENSE==</a>
|
||||
<li><a href="README.html#label-INSTALL%3D%3D">INSTALL==</a>
|
||||
<li><a href="README.html#label-KNOWN+ISSUES%3D%3D">KNOWN ISSUES==</a>
|
||||
<li><a href="README.html#label-WPSCAN+ARGUMENTS%3D%3D">WPSCAN ARGUMENTS==</a>
|
||||
<li><a href="README.html#label-WPSCAN+EXAMPLES%3D%3D">WPSCAN EXAMPLES==</a>
|
||||
<li><a href="README.html#label-WPSTOOLS+ARGUMENTS%3D%3D">WPSTOOLS ARGUMENTS==</a>
|
||||
<li><a href="README.html#label-WPSTOOLS+EXAMPLES%3D%3D">WPSTOOLS EXAMPLES==</a>
|
||||
<li><a href="README.html#label-PROJECT+HOME%3D%3D%3D">PROJECT HOME===</a>
|
||||
<li><a href="README.html#label-REPOSITORY%3D%3D%3D">REPOSITORY===</a>
|
||||
<li><a href="README.html#label-ISSUES%3D%3D%3D">ISSUES===</a>
|
||||
<li><a href="README.html#label-SPONSOR%3D%3D%3D">SPONSOR===</a>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="file">
|
||||
<a href="log_txt.html">log</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2 id="classes">Classes/Modules</h2>
|
||||
<ul>
|
||||
<li class="class">
|
||||
<a href="Array.html">Array</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="Browser.html">Browser</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="BruteForce.html">BruteForce</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="CacheFileStore.html">CacheFileStore</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="CheckerPlugin.html">CheckerPlugin</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="CustomOptionParser.html">CustomOptionParser</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="GenerateList.html">GenerateList</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="GitUpdater.html">GitUpdater</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="ListGeneratorPlugin.html">ListGeneratorPlugin</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="Malwares.html">Malwares</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="Object.html">Object</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="Plugin.html">Plugin</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="Plugins.html">Plugins</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="SvnParser.html">SvnParser</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="SvnUpdater.html">SvnUpdater</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="URI.html">URI</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="Updater.html">Updater</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="UpdaterFactory.html">UpdaterFactory</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="Vulnerable.html">Vulnerable</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WebSite.html">WebSite</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpConfigBackup.html">WpConfigBackup</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpDetector.html">WpDetector</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpEnumerator.html">WpEnumerator</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpFullPathDisclosure.html">WpFullPathDisclosure</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpItem.html">WpItem</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpLoginProtection.html">WpLoginProtection</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpOptions.html">WpOptions</a>
|
||||
|
||||
<img class="toc-toggle" src="images/transparent.png" alt="" title="toggle headings">
|
||||
<ul class="initially-hidden">
|
||||
<li><a href="WpOptions.html#label-Options">Options</a>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpPlugin.html">WpPlugin</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpPlugins.html">WpPlugins</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpReadme.html">WpReadme</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpTarget.html">WpTarget</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpTheme.html">WpTheme</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpThemes.html">WpThemes</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpTimthumbs.html">WpTimthumbs</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpUser.html">WpUser</a>
|
||||
</li>
|
||||
<li class="module">
|
||||
<a href="WpUsernames.html">WpUsernames</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpVersion.html">WpVersion</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpVulnerability.html">WpVulnerability</a>
|
||||
</li>
|
||||
<li class="class">
|
||||
<a href="WpscanOptions.html">WpscanOptions</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2 id="methods">Methods</h2>
|
||||
<ul>
|
||||
|
||||
<li class="method"><a href="WpDetector.html#method-c-aggressive_detection">::aggressive_detection — WpDetector</a>
|
||||
|
||||
<li class="method"><a href="UpdaterFactory.html#method-c-available_updaters_classes">::available_updaters_classes — UpdaterFactory</a>
|
||||
|
||||
<li class="method"><a href="WpOptions.html#method-c-check_options">::check_options — WpOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-c-clean_option">::clean_option — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpConfigBackup.html#method-c-config_backup_files">::config_backup_files — WpConfigBackup</a>
|
||||
|
||||
<li class="method"><a href="WpEnumerator.html#method-c-enumerate">::enumerate — WpEnumerator</a>
|
||||
|
||||
<li class="method"><a href="URI.html#method-c-escape">::escape — URI</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find">::find — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpTheme.html#method-c-find">::find — WpTheme</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_advanced_fingerprinting">::find_from_advanced_fingerprinting — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_atom_generator">::find_from_atom_generator — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpTheme.html#method-c-find_from_css_link">::find_from_css_link — WpTheme</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_links_opml">::find_from_links_opml — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_meta_generator">::find_from_meta_generator — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_rdf_generator">::find_from_rdf_generator — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_readme">::find_from_readme — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_rss_generator">::find_from_rss_generator — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-find_from_sitemap_generator">::find_from_sitemap_generator — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpTheme.html#method-c-find_from_wooframework">::find_from_wooframework — WpTheme</a>
|
||||
|
||||
<li class="method"><a href="WpEnumerator.html#method-c-generate_items">::generate_items — WpEnumerator</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-c-get_opt_long">::get_opt_long — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="UpdaterFactory.html#method-c-get_updater">::get_updater — UpdaterFactory</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-c-instance">::instance — Browser</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-c-is_long_option-3F">::is_long_option? — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="BruteForce.html#method-c-lines_in_file">::lines_in_file — BruteForce</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-c-load_from_arguments">::load_from_arguments — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="Malwares.html#method-c-malware_pattern">::malware_pattern — Malwares</a>
|
||||
|
||||
<li class="method"><a href="Malwares.html#method-c-malwares_file">::malwares_file — Malwares</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-c-new">::new — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-c-new">::new — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="Updater.html#method-c-new">::new — Updater</a>
|
||||
|
||||
<li class="method"><a href="Plugin.html#method-c-new">::new — Plugin</a>
|
||||
|
||||
<li class="method"><a href="WpPlugin.html#method-c-new">::new — WpPlugin</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-c-new">::new — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="CustomOptionParser.html#method-c-new">::new — CustomOptionParser</a>
|
||||
|
||||
<li class="method"><a href="WpTheme.html#method-c-new">::new — WpTheme</a>
|
||||
|
||||
<li class="method"><a href="CacheFileStore.html#method-c-new">::new — CacheFileStore</a>
|
||||
|
||||
<li class="method"><a href="CheckerPlugin.html#method-c-new">::new — CheckerPlugin</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-new">::new — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="SvnParser.html#method-c-new">::new — SvnParser</a>
|
||||
|
||||
<li class="method"><a href="WpVulnerability.html#method-c-new">::new — WpVulnerability</a>
|
||||
|
||||
<li class="method"><a href="ListGeneratorPlugin.html#method-c-new">::new — ListGeneratorPlugin</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-c-new">::new — WpUser</a>
|
||||
|
||||
<li class="method"><a href="GenerateList.html#method-c-new">::new — GenerateList</a>
|
||||
|
||||
<li class="method"><a href="Plugins.html#method-c-new">::new — Plugins</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-c-option_to_instance_variable_setter">::option_to_instance_variable_setter — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="CustomOptionParser.html#method-c-option_to_symbol">::option_to_symbol — CustomOptionParser</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-c-page_hash">::page_hash — WebSite</a>
|
||||
|
||||
<li class="method"><a href="WpDetector.html#method-c-passive_detection">::passive_detection — WpDetector</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-c-reset">::reset — Browser</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-c-valid_response_codes">::valid_response_codes — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpVersion.html#method-c-version_pattern">::version_pattern — WpVersion</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-3C-3D-3E">#<=> — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-3C-3D-3E">#<=> — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-3D-3D">#== — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-3D-3D-3D">#=== — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-3D-3D-3D">#=== — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WpTheme.html#method-i-3D-3D-3D">#=== — WpTheme</a>
|
||||
|
||||
<li class="method"><a href="Array.html#method-i-_grep_">#_grep_ — Array</a>
|
||||
|
||||
<li class="method"><a href="CustomOptionParser.html#method-i-add">#add — CustomOptionParser</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-add_http_protocol">#add_http_protocol — Object</a>
|
||||
|
||||
<li class="method"><a href="CustomOptionParser.html#method-i-add_option">#add_option — CustomOptionParser</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-add_trailing_slash">#add_trailing_slash — Object</a>
|
||||
|
||||
<li class="method"><a href="WpUsernames.html#method-i-author_url">#author_url — WpUsernames</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-banner">#banner — Object</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-basic_auth-3D">#basic_auth= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-better_wp_security_url">#better_wp_security_url — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-bluetrait_event_viewer_url">#bluetrait_event_viewer_url — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="BruteForce.html#method-i-brute_force">#brute_force — BruteForce</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-changelog_url">#changelog_url — WpItem</a>
|
||||
|
||||
<li class="method"><a href="CheckerPlugin.html#method-i-check_local_vulnerable_files">#check_local_vulnerable_files — CheckerPlugin</a>
|
||||
|
||||
<li class="method"><a href="CheckerPlugin.html#method-i-check_vuln_ref_urls">#check_vuln_ref_urls — CheckerPlugin</a>
|
||||
|
||||
<li class="method"><a href="CacheFileStore.html#method-i-clean">#clean — CacheFileStore</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-colorize">#colorize — Object</a>
|
||||
|
||||
<li class="method"><a href="WpConfigBackup.html#method-i-config_backup">#config_backup — WpConfigBackup</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-debug_log_url">#debug_log_url — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-directory_listing-3F">#directory_listing? — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-enumerate_all_plugins-3D">#enumerate_all_plugins= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-enumerate_all_themes-3D">#enumerate_all_themes= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-enumerate_only_vulnerable_plugins-3D">#enumerate_only_vulnerable_plugins= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-enumerate_only_vulnerable_themes-3D">#enumerate_only_vulnerable_themes= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-enumerate_options_from_string">#enumerate_options_from_string — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-enumerate_plugins-3D">#enumerate_plugins= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-enumerate_themes-3D">#enumerate_themes= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-eql-3F">#eql? — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-error_404_hash">#error_404_hash — WebSite</a>
|
||||
|
||||
<li class="method"><a href="WpPlugin.html#method-i-error_log-3F">#error_log? — WpPlugin</a>
|
||||
|
||||
<li class="method"><a href="WpPlugin.html#method-i-error_log_url">#error_log_url — WpPlugin</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-extract_name_from_url">#extract_name_from_url — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpUsernames.html#method-i-extract_nickname_from_body">#extract_nickname_from_body — WpUsernames</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-forge_request">#forge_request — Browser</a>
|
||||
|
||||
<li class="method"><a href="WpFullPathDisclosure.html#method-i-full_path_disclosure_url">#full_path_disclosure_url — WpFullPathDisclosure</a>
|
||||
|
||||
<li class="method"><a href="GenerateList.html#method-i-generate_full_list">#generate_full_list — GenerateList</a>
|
||||
|
||||
<li class="method"><a href="GenerateList.html#method-i-generate_popular_list">#generate_popular_list — GenerateList</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-get">#get — Browser</a>
|
||||
|
||||
<li class="method"><a href="CacheFileStore.html#method-i-get_entry_file_path">#get_entry_file_path — CacheFileStore</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-get_equal_string_end">#get_equal_string_end — Object</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-get_full_url">#get_full_url — WpItem</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-get_metasploit_url">#get_metasploit_url — Object</a>
|
||||
|
||||
<li class="method"><a href="WpUsernames.html#method-i-get_nickname_from_response">#get_nickname_from_response — WpUsernames</a>
|
||||
|
||||
<li class="method"><a href="WpUsernames.html#method-i-get_nickname_from_url">#get_nickname_from_url — WpUsernames</a>
|
||||
|
||||
<li class="method"><a href="GenerateList.html#method-i-get_popular_items">#get_popular_items — GenerateList</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-get_sub_folder">#get_sub_folder — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-get_url_without_filename">#get_url_without_filename — WpItem</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-green">#green — Object</a>
|
||||
|
||||
<li class="method"><a href="Array.html#method-i-grep">#grep — Array</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-has_basic_auth-3F">#has_basic_auth? — WebSite</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_better_wp_security_protection-3F">#has_better_wp_security_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_bluetrait_event_viewer_protection-3F">#has_bluetrait_event_viewer_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-has_changelog-3F">#has_changelog? — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-has_debug_log-3F">#has_debug_log? — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpFullPathDisclosure.html#method-i-has_full_path_disclosure-3F">#has_full_path_disclosure? — WpFullPathDisclosure</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_limit_login_attempts_protection-3F">#has_limit_login_attempts_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="GitUpdater.html#method-i-has_local_changes-3F">#has_local_changes? — GitUpdater</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_login_lock_protection-3F">#has_login_lock_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_login_lockdown_protection-3F">#has_login_lockdown_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_login_protection-3F">#has_login_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_login_security_solution_protection-3F">#has_login_security_solution_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="Malwares.html#method-i-has_malwares-3F">#has_malwares? — Malwares</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-has_options-3F">#has_options? — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpReadme.html#method-i-has_readme-3F">#has_readme? — WpReadme</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-has_readme-3F">#has_readme? — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-has_simple_login_lockdown_protection-3F">#has_simple_login_lockdown_protection? — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpTimthumbs.html#method-i-has_timthumbs-3F">#has_timthumbs? — WpTimthumbs</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-has_xml_rpc-3F">#has_xml_rpc? — WebSite</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-help">#help — Object</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-homepage_hash">#homepage_hash — WebSite</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-id">#id — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-id-3D">#id= — WpUser</a>
|
||||
|
||||
<li class="method"><a href="GitUpdater.html#method-i-is_installed-3F">#is_installed? — GitUpdater</a>
|
||||
|
||||
<li class="method"><a href="SvnUpdater.html#method-i-is_installed-3F">#is_installed? — SvnUpdater</a>
|
||||
|
||||
<li class="method"><a href="Updater.html#method-i-is_installed-3F">#is_installed? — Updater</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-is_multisite-3F">#is_multisite? — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-limit_login_attempts_url">#limit_login_attempts_url — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-load_config">#load_config — Browser</a>
|
||||
|
||||
<li class="method"><a href="Updater.html#method-i-local_revision_number">#local_revision_number — Updater</a>
|
||||
|
||||
<li class="method"><a href="SvnUpdater.html#method-i-local_revision_number">#local_revision_number — SvnUpdater</a>
|
||||
|
||||
<li class="method"><a href="GitUpdater.html#method-i-local_revision_number">#local_revision_number — GitUpdater</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-login_protection_plugin">#login_protection_plugin — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-login_security_solution_url">#login_security_solution_url — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-login_url">#login_url — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="Malwares.html#method-i-malwares">#malwares — Malwares</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-max_threads-3D">#max_threads= — Browser</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-merge_request_params">#merge_request_params — Browser</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-name">#name — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-name-3D">#name= — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-nickname">#nickname — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WpUser.html#method-i-nickname-3D">#nickname= — WpUser</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-online-3F">#online? — WebSite</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-output_vulnerabilities">#output_vulnerabilities — Object</a>
|
||||
|
||||
<li class="method"><a href="SvnParser.html#method-i-parse">#parse — SvnParser</a>
|
||||
|
||||
<li class="method"><a href="WpPlugins.html#method-i-plugins_from_aggressive_detection">#plugins_from_aggressive_detection — WpPlugins</a>
|
||||
|
||||
<li class="method"><a href="WpPlugins.html#method-i-plugins_from_passive_detection">#plugins_from_passive_detection — WpPlugins</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-post">#post — Browser</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-proxy-3D">#proxy= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-proxy_auth-3D">#proxy_auth= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-proxy_auth-3D">#proxy_auth= — Browser</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-puts">#puts — Object</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-raise_invalid_proxy_auth_format">#raise_invalid_proxy_auth_format — Browser</a>
|
||||
|
||||
<li class="method"><a href="CacheFileStore.html#method-i-read_entry">#read_entry — CacheFileStore</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-readme_url">#readme_url — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpReadme.html#method-i-readme_url">#readme_url — WpReadme</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-red">#red — Object</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-redirection">#redirection — WebSite</a>
|
||||
|
||||
<li class="method"><a href="Plugins.html#method-i-register">#register — Plugins</a>
|
||||
|
||||
<li class="method"><a href="Plugin.html#method-i-register_options">#register_options — Plugin</a>
|
||||
|
||||
<li class="method"><a href="Plugins.html#method-i-register_plugin">#register_plugin — Plugins</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-registration_enabled-3F">#registration_enabled? — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-registration_url">#registration_url — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpUsernames.html#method-i-remove_junk_from_nickname">#remove_junk_from_nickname — WpUsernames</a>
|
||||
|
||||
<li class="method"><a href="GitUpdater.html#method-i-repo_directory_arguments">#repo_directory_arguments — GitUpdater</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-require_files_from_directory">#require_files_from_directory — Object</a>
|
||||
|
||||
<li class="method"><a href="GitUpdater.html#method-i-reset_head">#reset_head — GitUpdater</a>
|
||||
|
||||
<li class="method"><a href="CustomOptionParser.html#method-i-results">#results — CustomOptionParser</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-rss_url">#rss_url — WebSite</a>
|
||||
|
||||
<li class="method"><a href="ListGeneratorPlugin.html#method-i-run">#run — ListGeneratorPlugin</a>
|
||||
|
||||
<li class="method"><a href="CheckerPlugin.html#method-i-run">#run — CheckerPlugin</a>
|
||||
|
||||
<li class="method"><a href="Plugin.html#method-i-run">#run — Plugin</a>
|
||||
|
||||
<li class="method"><a href="GenerateList.html#method-i-save">#save — GenerateList</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-search_replace_db_2_exists-3F">#search_replace_db_2_exists? — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-search_replace_db_2_url">#search_replace_db_2_url — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="GenerateList.html#method-i-set_file_name">#set_file_name — GenerateList</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-set_option_from_cli">#set_option_from_cli — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpLoginProtection.html#method-i-simple_login_lockdown_url">#simple_login_lockdown_url — WpLoginProtection</a>
|
||||
|
||||
<li class="method"><a href="WpTimthumbs.html#method-i-targets_url_from_theme">#targets_url_from_theme — WpTimthumbs</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-theme">#theme — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpThemes.html#method-i-themes_from_aggressive_detection">#themes_from_aggressive_detection — WpThemes</a>
|
||||
|
||||
<li class="method"><a href="WpThemes.html#method-i-themes_from_passive_detection">#themes_from_passive_detection — WpThemes</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-threads-3D">#threads= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpTimthumbs.html#method-i-timthumbs">#timthumbs — WpTimthumbs</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-to_h">#to_h — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-to_s">#to_s — WpItem</a>
|
||||
|
||||
<li class="method"><a href="Updater.html#method-i-update">#update — Updater</a>
|
||||
|
||||
<li class="method"><a href="GitUpdater.html#method-i-update">#update — GitUpdater</a>
|
||||
|
||||
<li class="method"><a href="SvnUpdater.html#method-i-update">#update — SvnUpdater</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-url">#url — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-url-3D">#url= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="Object.html#method-i-usage">#usage — Object</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-user_agent">#user_agent — Browser</a>
|
||||
|
||||
<li class="method"><a href="Browser.html#method-i-user_agent_mode-3D">#user_agent_mode= — Browser</a>
|
||||
|
||||
<li class="method"><a href="WpUsernames.html#method-i-usernames">#usernames — WpUsernames</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-version">#version — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-version">#version — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="Vulnerable.html#method-i-vulnerabilities">#vulnerabilities — Vulnerable</a>
|
||||
|
||||
<li class="method"><a href="WpscanOptions.html#method-i-wordlist-3D">#wordlist= — WpscanOptions</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-wordpress-3F">#wordpress? — WebSite</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-wp_content_dir">#wp_content_dir — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-wp_org_item-3F">#wp_org_item? — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpItem.html#method-i-wp_org_url">#wp_org_url — WpItem</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-wp_plugins_dir">#wp_plugins_dir — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="WpTarget.html#method-i-wp_plugins_dir_exists-3F">#wp_plugins_dir_exists? — WpTarget</a>
|
||||
|
||||
<li class="method"><a href="CacheFileStore.html#method-i-write_entry">#write_entry — CacheFileStore</a>
|
||||
|
||||
<li class="method"><a href="WebSite.html#method-i-xml_rpc_url">#xml_rpc_url — WebSite</a>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<footer id="validator-badges">
|
||||
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
||||
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
||||
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
||||
</footer>
|
||||
|
||||