Compare commits
1334 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
21221d48d0 | ||
|
|
1f1a190c84 | ||
|
|
82d79c4662 | ||
|
|
08771a6d5d | ||
|
|
e01d18f224 | ||
|
|
8496650542 | ||
|
|
399245cd0f | ||
|
|
adfa5dddcf | ||
|
|
85971e0e91 | ||
|
|
3a3376ec41 | ||
|
|
d988b6ccbf | ||
|
|
6654f446a4 | ||
|
|
88808db9a5 | ||
|
|
dfad0fd6bd | ||
|
|
3fe49a24c7 | ||
|
|
ac609445fb | ||
|
|
0223f74a53 | ||
|
|
607a5b3fda | ||
|
|
e3ac331a71 | ||
|
|
e09b4cc76d | ||
|
|
c24ed707ef | ||
|
|
a8c55ddee3 | ||
|
|
e080835224 | ||
|
|
2fe675abce | ||
|
|
d230221999 | ||
|
|
91a01265e5 | ||
|
|
77286301a7 | ||
|
|
7c39827c16 | ||
|
|
8f789994eb | ||
|
|
79cb9c8142 | ||
|
|
de1d047c08 | ||
|
|
8252cb486b | ||
|
|
fb8ad72335 | ||
|
|
bc4f0c002b | ||
|
|
0a53c52645 | ||
|
|
7941a8accb | ||
|
|
5389923b34 | ||
|
|
9c1149cb25 | ||
|
|
c5130de805 | ||
|
|
020633503b | ||
|
|
74b9776801 | ||
|
|
5a605d686c | ||
|
|
4ba9bdf605 | ||
|
|
3f647348c3 | ||
|
|
de4f90dd72 | ||
|
|
4a7b4754f0 | ||
|
|
fe05534a95 | ||
|
|
c7c7e75b32 | ||
|
|
efc6aed388 | ||
|
|
197521d5b1 | ||
|
|
23420f62df | ||
|
|
33149caede | ||
|
|
67bec7136b | ||
|
|
57a12114dc | ||
|
|
e32abea46b | ||
|
|
b12b271a61 | ||
|
|
f337cccc68 | ||
|
|
7f9e178f75 | ||
|
|
b19696090f | ||
|
|
d7488bd402 | ||
|
|
604299a1ac | ||
|
|
6800d51347 | ||
|
|
7cecd249a8 | ||
|
|
a214ea9341 | ||
|
|
884a19b13d | ||
|
|
771f4ae766 | ||
|
|
9273398c0e | ||
|
|
a5ed6ad134 | ||
|
|
1bbf575e91 | ||
|
|
49582fd841 | ||
|
|
bdaf12c1fa | ||
|
|
ef27c98056 | ||
|
|
722f3ce384 | ||
|
|
9d084a7b2f | ||
|
|
c31a06e255 | ||
|
|
ea36c79c26 | ||
|
|
cbe33caeef | ||
|
|
8b44354fec | ||
|
|
619302cd11 | ||
|
|
3e94ca11df | ||
|
|
f818778e0a | ||
|
|
280a91f139 | ||
|
|
82367a81c9 | ||
|
|
93b1234d0f | ||
|
|
571bc5cf90 | ||
|
|
91de353307 | ||
|
|
7ec394a8f2 | ||
|
|
451c6c07ca | ||
|
|
a6b0548426 | ||
|
|
f89463c4d8 | ||
|
|
3be63d85f2 | ||
|
|
d271b63aa4 | ||
|
|
fb46fd7101 | ||
|
|
64513bb9d1 | ||
|
|
ef56f82de9 | ||
|
|
f775379f42 | ||
|
|
1b377dd674 | ||
|
|
99837127a6 | ||
|
|
f2d205e576 | ||
|
|
bf5bde0e36 | ||
|
|
18314adce2 | ||
|
|
d1a7a0ee1f | ||
|
|
eb73025338 | ||
|
|
66cd3e08a0 | ||
|
|
aa8e525681 | ||
|
|
7a36f89124 | ||
|
|
3e56acab64 | ||
|
|
012670b349 | ||
|
|
44cb13644a | ||
|
|
bd8e6db092 | ||
|
|
96ae8ade5d | ||
|
|
04b1cee71e | ||
|
|
bd07cf859f | ||
|
|
e937906647 | ||
|
|
03618f38b5 | ||
|
|
94fdddb056 | ||
|
|
12dfc60f75 | ||
|
|
a383d12061 | ||
|
|
3131c6cb5d | ||
|
|
5f53297f58 | ||
|
|
cebd808674 | ||
|
|
30a07f037e | ||
|
|
4ef1387781 | ||
|
|
1578ce2ebd | ||
|
|
391fd6c960 | ||
|
|
ef7ac1d77b | ||
|
|
ca2610d74f | ||
|
|
8d8aa52b9b | ||
|
|
84ec0c3964 | ||
|
|
f55736599e | ||
|
|
b890235a82 | ||
|
|
2cc3bc5759 | ||
|
|
ca100ef7e9 | ||
|
|
721cad75a2 | ||
|
|
c3110a4ab7 | ||
|
|
452aabf89b | ||
|
|
adcd6734ef | ||
|
|
a68c1f1cf7 | ||
|
|
712eaf9f1e | ||
|
|
7e119fa2ac | ||
|
|
ac90ad0129 | ||
|
|
6b61e273a0 | ||
|
|
aab8e85f9d | ||
|
|
3959892c20 | ||
|
|
420ad6cd37 | ||
|
|
664bff544e | ||
|
|
6716de6635 | ||
|
|
4f50fbdfe4 | ||
|
|
009abb3fd5 | ||
|
|
191b4402e1 | ||
|
|
13bc347897 | ||
|
|
187e2f1330 | ||
|
|
8d2ec115f5 | ||
|
|
921596f6f8 | ||
|
|
a00987efc8 | ||
|
|
b1a35d9df8 | ||
|
|
08dfa4cab2 | ||
|
|
63ca695b51 | ||
|
|
55310247c2 | ||
|
|
456334af75 | ||
|
|
38ce047d9e | ||
|
|
14be7dead5 | ||
|
|
ab2e368c6f | ||
|
|
0e7ca594ed | ||
|
|
f742287496 | ||
|
|
cb37919e76 | ||
|
|
933fc26b66 | ||
|
|
8ea94175ac | ||
|
|
013fb12c00 | ||
|
|
1e6b5a1e4d | ||
|
|
aed20db328 | ||
|
|
332684f4e2 | ||
|
|
12d275c26b | ||
|
|
9b1312c7d9 | ||
|
|
874b069357 | ||
|
|
03a917c326 | ||
|
|
6a5560a0b1 | ||
|
|
6b0bbdc605 | ||
|
|
4c0608d47d | ||
|
|
2e1aede8b4 | ||
|
|
2c3e968710 | ||
|
|
ecf45803e0 | ||
|
|
2e4ede4251 | ||
|
|
4f52649f28 | ||
|
|
11e58ff88d | ||
|
|
a7c097a5a9 | ||
|
|
8c53686697 | ||
|
|
6754f1467a | ||
|
|
fb98b3cc9a | ||
|
|
729f6fd308 | ||
|
|
e2b0711271 | ||
|
|
eb8cffb1a8 | ||
|
|
d7e534ca74 | ||
|
|
347e261748 | ||
|
|
7deb9c4fbf | ||
|
|
c1ab5ad929 | ||
|
|
2686c37aa1 | ||
|
|
45edb9973d | ||
|
|
2bd4ce08c4 | ||
|
|
460d1ac86c | ||
|
|
9df8da0b6f | ||
|
|
baaf85f567 | ||
|
|
6ffe817e86 | ||
|
|
edbdbdac56 | ||
|
|
11c3c6d20e | ||
|
|
81019b9fc8 | ||
|
|
4514123279 | ||
|
|
0fc4a448aa | ||
|
|
bde51cc946 | ||
|
|
4f7e29163f | ||
|
|
7837d1f6e8 | ||
|
|
99bb300559 | ||
|
|
f1108ef7d1 | ||
|
|
bd6cfec71c | ||
|
|
ef3ed86096 | ||
|
|
097898b120 | ||
|
|
6fbf2643a1 | ||
|
|
a1989c105e | ||
|
|
97426e6d7d | ||
|
|
b2e1b65ae5 | ||
|
|
06c8d34451 | ||
|
|
ecba81ea5b | ||
|
|
26e0066c82 | ||
|
|
6ebb9b6f66 | ||
|
|
102e30c29a | ||
|
|
a8a716e0bd | ||
|
|
9e23aaa5c0 | ||
|
|
9b059c3985 | ||
|
|
2d3c7e65d2 | ||
|
|
9e7d3462ab | ||
|
|
aececf980b | ||
|
|
e5f3b4bf1d | ||
|
|
9b629bb1c4 | ||
|
|
9e39a57231 | ||
|
|
47e9608aa2 | ||
|
|
2f012caa3e | ||
|
|
e835fc3ac0 | ||
|
|
5240e9ce98 | ||
|
|
b8ab2c839f | ||
|
|
1ee81b90bf | ||
|
|
1354f2debb | ||
|
|
7373ea24d8 | ||
|
|
7fc03461ba | ||
|
|
a5e45e2d79 | ||
|
|
42cf2ac19b | ||
|
|
6098d064a7 | ||
|
|
cd79f576b7 | ||
|
|
4039a4a820 | ||
|
|
919085d829 | ||
|
|
88f27b39c4 | ||
|
|
b1f38a51fe | ||
|
|
ef0253ee9e | ||
|
|
3cf33af0e2 | ||
|
|
3eaa060aac | ||
|
|
cf4efee340 | ||
|
|
0b04a96e15 | ||
|
|
c1d928c503 | ||
|
|
479b21a722 | ||
|
|
ceeaeaf487 | ||
|
|
d5179b742b | ||
|
|
b38055c497 | ||
|
|
ff1e9e63d6 | ||
|
|
a1a4293851 | ||
|
|
f39cc8ee53 | ||
|
|
9fc5b90f25 | ||
|
|
e7c9c884e9 | ||
|
|
0469128917 | ||
|
|
656e38eae7 | ||
|
|
95721350da | ||
|
|
98d9e87356 | ||
|
|
a69cb4f4c2 | ||
|
|
f42ea74e26 | ||
|
|
d9b86f9922 | ||
|
|
605e9cfe6d | ||
|
|
dd53c7b200 | ||
|
|
f9b10dc9db | ||
|
|
daef491d3e | ||
|
|
95fde17d97 | ||
|
|
2c6cbb7799 | ||
|
|
3498d4317a | ||
|
|
611ef49d03 | ||
|
|
fd2212db7b | ||
|
|
4d8b8ba64c | ||
|
|
32fe70a354 | ||
|
|
e2652df546 | ||
|
|
d1427d5f99 | ||
|
|
ef814f3602 | ||
|
|
00acc8289e | ||
|
|
341f980974 | ||
|
|
1b7ea5bed3 | ||
|
|
ee1c92ffa0 | ||
|
|
0114a50f61 | ||
|
|
c7c9e105ef | ||
|
|
3e31e71116 | ||
|
|
e74b1d2210 | ||
|
|
1ca2f28187 | ||
|
|
9fc75b651e | ||
|
|
934a6acdd2 | ||
|
|
88adc5676f | ||
|
|
f27483ea7b | ||
|
|
6a11c620cf | ||
|
|
7281f15051 | ||
|
|
b1196fb09b | ||
|
|
27fb875c0d | ||
|
|
3cdeac5dfb | ||
|
|
e1c47ce5c3 | ||
|
|
d9523cb1bc | ||
|
|
bd2403388e | ||
|
|
7511208b8b | ||
|
|
4586d44c1f | ||
|
|
717e5b07d1 | ||
|
|
2c6082f454 | ||
|
|
586239292b | ||
|
|
7bd1c87bf6 | ||
|
|
6eded4cdc2 | ||
|
|
5e693f2274 | ||
|
|
b0e3aeed6c | ||
|
|
dd9ef38636 | ||
|
|
32df782470 | ||
|
|
1d9162930c | ||
|
|
152d02bcbe | ||
|
|
2cc4dc724b | ||
|
|
1ee14f4c69 | ||
|
|
7748019a76 | ||
|
|
8241a1d8a3 | ||
|
|
83e3373561 | ||
|
|
c8c126d444 | ||
|
|
c12b1d0670 | ||
|
|
5caf4f45a9 | ||
|
|
8f51ff2910 | ||
|
|
6b8436f825 | ||
|
|
c4b146b36b | ||
|
|
098b14884d | ||
|
|
47d8818028 | ||
|
|
e3bc50a163 | ||
|
|
34ba6a86c9 | ||
|
|
2369ef53ac | ||
|
|
8d3907ff65 | ||
|
|
2760eaca85 | ||
|
|
af0319cc66 | ||
|
|
e050539747 | ||
|
|
451756c764 | ||
|
|
afa40df7ad | ||
|
|
fb2b606d26 | ||
|
|
e0ebd47730 | ||
|
|
e97f4e8020 | ||
|
|
79f07b7350 | ||
|
|
c1c8829536 | ||
|
|
ef20371562 | ||
|
|
c08f275cf7 | ||
|
|
6f995fe350 | ||
|
|
68aec92d3a | ||
|
|
dda328210c | ||
|
|
c3f4f232e3 | ||
|
|
302f1da066 | ||
|
|
a6e65d33dd | ||
|
|
7b0cb29466 | ||
|
|
a3eedb14f4 | ||
|
|
74d73a1d17 | ||
|
|
92e7e8516c | ||
|
|
61ac0b7d20 | ||
|
|
8b4ea7fd7c | ||
|
|
90846cf770 | ||
|
|
a9e33ea282 | ||
|
|
eea006e787 | ||
|
|
9e58098e5c | ||
|
|
ff49f574d4 | ||
|
|
599d816a88 | ||
|
|
4b0dd04114 | ||
|
|
36a0fbf181 | ||
|
|
3cfd8f40da | ||
|
|
23173c4bf4 | ||
|
|
722c31ccd9 | ||
|
|
7623a01272 | ||
|
|
1b90fdce73 | ||
|
|
ce57db9526 | ||
|
|
8b9e47cd11 | ||
|
|
a87a261b80 | ||
|
|
989d561679 | ||
|
|
b349990b19 | ||
|
|
2104b49cee | ||
|
|
77606efb77 | ||
|
|
6164ad2ab1 | ||
|
|
a60d58dcb0 | ||
|
|
4e45d17ad2 | ||
|
|
c8e614d064 | ||
|
|
544beeb078 | ||
|
|
a00f0d8367 | ||
|
|
ea57290792 | ||
|
|
603a4afaf3 | ||
|
|
19e2772729 | ||
|
|
82ebb82a5f | ||
|
|
516ae6b68c | ||
|
|
59225a4b9c | ||
|
|
1da9d36ecc | ||
|
|
0787e5c738 | ||
|
|
8a661088bb | ||
|
|
91659a32af | ||
|
|
5f8cd7e5c4 | ||
|
|
bc3f62a766 | ||
|
|
92faedb4a5 | ||
|
|
6f7008dd91 | ||
|
|
447589541f | ||
|
|
45f5f50262 | ||
|
|
f77a27ecc3 | ||
|
|
09de2eb194 | ||
|
|
7747a5665b | ||
|
|
aa617b5106 | ||
|
|
8038e2e01a | ||
|
|
212b068a8d | ||
|
|
2bcea0b566 | ||
|
|
512d4f2fb9 | ||
|
|
b524546e9c | ||
|
|
f91e287207 | ||
|
|
0fcf0a6a88 | ||
|
|
f9f3d74a3b | ||
|
|
2bfd0f2cc0 | ||
|
|
cdeb2eebe5 | ||
|
|
5134516afc | ||
|
|
e14b5d99eb | ||
|
|
a0375f52cf | ||
|
|
69dbcf3947 | ||
|
|
79387730bc | ||
|
|
3e6b019044 | ||
|
|
1886b90be7 | ||
|
|
85421f9b4b | ||
|
|
3749ef8433 | ||
|
|
dfb3e98fec | ||
|
|
a40442c8a9 | ||
|
|
a7396d6bee | ||
|
|
507c4c67ff | ||
|
|
cbdc04e929 | ||
|
|
a6582a1da3 | ||
|
|
3d8f3df8f1 | ||
|
|
7b8dbdedb5 | ||
|
|
53b13eacaa | ||
|
|
fcc76d99ef | ||
|
|
9a2141025a | ||
|
|
bfe3285375 | ||
|
|
5cf9c6e073 | ||
|
|
5e00d77e69 | ||
|
|
a4dfb05d0c | ||
|
|
97a798e357 | ||
|
|
47aafe88f8 | ||
|
|
bc356ab8e5 | ||
|
|
dd5cdfd848 | ||
|
|
de2cb08a6b | ||
|
|
9a2550ad48 | ||
|
|
2f6e4c0736 | ||
|
|
a9c5cbf11f | ||
|
|
facd0d398a | ||
|
|
1b2fc5d403 | ||
|
|
9d290aa533 | ||
|
|
9046291128 | ||
|
|
59131b6b51 | ||
|
|
3725a23c49 | ||
|
|
812c42c89a | ||
|
|
285d7d3265 | ||
|
|
134789602b | ||
|
|
55f49b5f78 | ||
|
|
cd8067285f | ||
|
|
10c09e9375 | ||
|
|
bb70c0733a | ||
|
|
3dad2b31bb | ||
|
|
7844acd70f | ||
|
|
f01b0b3404 | ||
|
|
10fee6e144 | ||
|
|
c4c8a8b703 | ||
|
|
7053a1e42a | ||
|
|
fd3c4261de | ||
|
|
d21e475d12 | ||
|
|
48bdf0b2a9 | ||
|
|
ac1c652854 | ||
|
|
3b286de9db | ||
|
|
cbcb696cfd | ||
|
|
13320ea8cc | ||
|
|
bdf45f6a0b | ||
|
|
667b1e9f99 | ||
|
|
e52e82fb78 | ||
|
|
78cb3f8ee2 | ||
|
|
a0f476fb24 | ||
|
|
13c32bfe53 | ||
|
|
a54da059ef | ||
|
|
76fe0def4f | ||
|
|
9a25b747ae | ||
|
|
aeefd3e873 | ||
|
|
f9efdcb654 | ||
|
|
be672cbcba | ||
|
|
c4ca7e471a | ||
|
|
bbce082ec2 | ||
|
|
781214a2f0 | ||
|
|
7942eaf64b | ||
|
|
36cd3c0c42 | ||
|
|
620bccb102 | ||
|
|
3ca79bebc7 | ||
|
|
a1add0cfdb | ||
|
|
dc22ad1ca1 | ||
|
|
010df5a081 | ||
|
|
71e8b22849 | ||
|
|
17dcc7ec80 | ||
|
|
138c17d4a3 | ||
|
|
565eed99ef | ||
|
|
1f13c47a46 | ||
|
|
ec5d12c940 | ||
|
|
bac19b2486 | ||
|
|
5fbfa1453c | ||
|
|
dab2001dcc | ||
|
|
5bff9eb4d8 | ||
|
|
e2102bdefa | ||
|
|
2a3e06610f | ||
|
|
d186240cfc | ||
|
|
0f0d4f06bb | ||
|
|
249af325c9 | ||
|
|
a7532f2154 | ||
|
|
1c0a00e9b2 | ||
|
|
b1b8066fe5 | ||
|
|
25c2f3adad | ||
|
|
68e47d70fd | ||
|
|
af3b3f4ee5 | ||
|
|
1b63d514ac | ||
|
|
c6453a6e10 | ||
|
|
3f3f5fdaa0 | ||
|
|
2f72721ee2 | ||
|
|
92d99c6d64 | ||
|
|
f3b26b1101 | ||
|
|
4f0a5bcf15 | ||
|
|
ffb1a8ad84 | ||
|
|
70c07cf731 | ||
|
|
b2d946794b | ||
|
|
90617c5433 | ||
|
|
278dc34b44 | ||
|
|
dcd5d7b534 | ||
|
|
2d48465e1d | ||
|
|
6bda493f6e | ||
|
|
5459b8bb7a | ||
|
|
e410939bde | ||
|
|
047de2d747 | ||
|
|
997f4d35c2 | ||
|
|
ca547f1239 | ||
|
|
c9665773e2 | ||
|
|
eeeea6b735 | ||
|
|
bbd6a2b5d5 | ||
|
|
d33db2a0fe | ||
|
|
1f2588d677 | ||
|
|
f30bad5c5a | ||
|
|
5a5bf77b1c | ||
|
|
22c6597005 | ||
|
|
9761d70f23 | ||
|
|
518135006c | ||
|
|
9327eb7e75 | ||
|
|
13080ade9e | ||
|
|
9c3947a7b1 | ||
|
|
f33cbcaa53 | ||
|
|
2c8fe7971f | ||
|
|
85e10330cb | ||
|
|
a02fd4b6f6 | ||
|
|
9395119749 | ||
|
|
2c0bbe9082 | ||
|
|
b1535864aa | ||
|
|
fd880da057 | ||
|
|
6c62b06e46 | ||
|
|
b44869ec49 | ||
|
|
b3a6251b04 | ||
|
|
80667bc38f | ||
|
|
cff35ea845 | ||
|
|
cb93397ae4 | ||
|
|
c805a8d624 | ||
|
|
3f775c081c | ||
|
|
864b892da0 | ||
|
|
f7773d2113 | ||
|
|
cf471d0f36 | ||
|
|
d14791679c | ||
|
|
f358d34e54 | ||
|
|
7ba3a7dd2f | ||
|
|
196af51e2c | ||
|
|
cbe959da66 | ||
|
|
9512fd4cca | ||
|
|
e2b6853c46 | ||
|
|
2578bfd0ff | ||
|
|
277fff5f2c | ||
|
|
4c72e9d206 | ||
|
|
7a44a303e5 | ||
|
|
e3796045eb | ||
|
|
85ad8d8b9f | ||
|
|
f737c92988 | ||
|
|
5d05ecaee3 | ||
|
|
8cc83a8df9 | ||
|
|
43b0f1bea9 | ||
|
|
a12ee4a61e | ||
|
|
d595a45f2b | ||
|
|
76a6d59837 | ||
|
|
bfe9bf2d5b | ||
|
|
59cac169e7 | ||
|
|
c24ee89b16 | ||
|
|
a73c2d7292 | ||
|
|
97671b3592 | ||
|
|
dd38586ead | ||
|
|
e11de68203 | ||
|
|
97ce286ff2 | ||
|
|
99e4e5a219 | ||
|
|
316b9aa68a | ||
|
|
7318d6615f | ||
|
|
6782b108b0 | ||
|
|
494af0ad23 | ||
|
|
55cff03747 | ||
|
|
599cc7c3af | ||
|
|
bfa7a7a6dc | ||
|
|
b243a5404b | ||
|
|
2e40a7377a | ||
|
|
62e86a0474 | ||
|
|
8c1ee9cf21 | ||
|
|
3afda882de | ||
|
|
69fd90ed3a | ||
|
|
554530dd60 | ||
|
|
2472e5546f | ||
|
|
a7ee4c09f5 | ||
|
|
7effac73b9 | ||
|
|
125924d125 | ||
|
|
00aaac866f | ||
|
|
170299c13c | ||
|
|
ac6f56dbf4 | ||
|
|
09c494c6c5 | ||
|
|
fdd685d20c | ||
|
|
fcff22981b | ||
|
|
7f82a41e66 | ||
|
|
17d12b41db | ||
|
|
2f7d68f7f1 | ||
|
|
dc1c65b418 | ||
|
|
23de013c86 | ||
|
|
a922b00716 | ||
|
|
babe21a3dc | ||
|
|
59ef0b05a1 | ||
|
|
3da7ed76c5 | ||
|
|
bbf0cd7578 | ||
|
|
25be97e65c | ||
|
|
175bb9206e | ||
|
|
68605ad409 | ||
|
|
4500687d47 | ||
|
|
fc38e6f270 | ||
|
|
f1936fea6b | ||
|
|
24bdcf66ed | ||
|
|
8688523ced | ||
|
|
856944e463 | ||
|
|
84f6894bc4 | ||
|
|
9bf33f89a9 | ||
|
|
c0fa7c42cd | ||
|
|
3281a85ae9 | ||
|
|
0db965a95f | ||
|
|
0732ea1162 | ||
|
|
c88497afba | ||
|
|
d4892c19b4 | ||
|
|
3ed25b069d | ||
|
|
e51b1f7643 | ||
|
|
7d07b27d4f | ||
|
|
57fdc90623 | ||
|
|
72bec2ef49 | ||
|
|
58a3805788 | ||
|
|
40f96dd2bd | ||
|
|
fca13d453e | ||
|
|
32e590f398 | ||
|
|
301b44dcae | ||
|
|
e45e91b0bf | ||
|
|
fe31dbca26 | ||
|
|
51fa754ec5 | ||
|
|
2ce10af051 | ||
|
|
c107422353 | ||
|
|
1e1fdee5a7 | ||
|
|
fffcd61cc4 | ||
|
|
2fd11cba15 | ||
|
|
f1ec85aef5 | ||
|
|
4c4b363035 | ||
|
|
8555e0c7e7 | ||
|
|
c07f7390ec | ||
|
|
34f6e15271 | ||
|
|
135f0677e4 | ||
|
|
63ad255f2b | ||
|
|
16ac8ea196 | ||
|
|
0e00773238 | ||
|
|
cf1f676268 | ||
|
|
d2f304b047 | ||
|
|
0a9bb138c5 | ||
|
|
6236391c86 | ||
|
|
78257cb1c0 | ||
|
|
c4cb75668c | ||
|
|
9880bcacd6 | ||
|
|
52aedd0a31 | ||
|
|
c7ce741857 | ||
|
|
bcbf012406 | ||
|
|
ec75b4418b | ||
|
|
716b84f507 | ||
|
|
e95b3a59ef | ||
|
|
9dc179b2cd | ||
|
|
efe1b01936 | ||
|
|
cd26b0c5a9 | ||
|
|
b075f71f11 | ||
|
|
44145ef265 | ||
|
|
82ef21b821 | ||
|
|
5655d7456c | ||
|
|
a7992102af | ||
|
|
ee2cd412ce | ||
|
|
1c34f48c39 | ||
|
|
0c2937936b | ||
|
|
b0c3f6c82a | ||
|
|
e047525be9 | ||
|
|
7f1ad590f6 | ||
|
|
fbf2d827c2 | ||
|
|
72619df02c | ||
|
|
c58d8992cf | ||
|
|
c98177ea20 | ||
|
|
766409e581 | ||
|
|
c076d61cc9 | ||
|
|
92e265ecc9 | ||
|
|
e223df64cf | ||
|
|
629ebf5ff2 | ||
|
|
0019eb70b5 | ||
|
|
e5f1be0b30 | ||
|
|
dd74934638 | ||
|
|
8d4973a9cc | ||
|
|
a49c091cd5 | ||
|
|
7d0268a4ce | ||
|
|
44e53e7225 | ||
|
|
1a1689da1f | ||
|
|
a28802e84e | ||
|
|
2798e71a52 | ||
|
|
e3647092b0 | ||
|
|
117cc13ed7 | ||
|
|
2d39a04575 | ||
|
|
d3e9457532 | ||
|
|
afc737b9bd | ||
|
|
32e597f6a4 | ||
|
|
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 |
8
.gitignore
vendored
@@ -1,5 +1,6 @@
|
||||
cache/*
|
||||
cache
|
||||
coverage
|
||||
.bundle
|
||||
.DS_Store
|
||||
.DS_Store?
|
||||
*.sublime-*
|
||||
@@ -7,3 +8,8 @@ coverage
|
||||
.*.swp
|
||||
Gemfile.lock
|
||||
log.txt
|
||||
.yardoc
|
||||
debug.log
|
||||
wordlist.txt
|
||||
rspec_results.html
|
||||
data/
|
||||
|
||||
1
.ruby-gemset
Normal file
@@ -0,0 +1 @@
|
||||
wpscan
|
||||
1
.ruby-version
Normal file
@@ -0,0 +1 @@
|
||||
2.1.5
|
||||
@@ -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
|
||||
|
||||
20
.travis.yml
@@ -1,6 +1,18 @@
|
||||
language: ruby
|
||||
rvm:
|
||||
- "1.9.2"
|
||||
- "1.9.3"
|
||||
- "2.0.0"
|
||||
script: bundle exec rspec --format documentation
|
||||
- 1.9.2
|
||||
- 1.9.3
|
||||
- 2.0.0
|
||||
- 2.1.0
|
||||
- 2.1.1
|
||||
- 2.1.2
|
||||
- 2.1.3
|
||||
- 2.1.4
|
||||
- 2.1.5
|
||||
script: bundle exec rspec
|
||||
notifications:
|
||||
email:
|
||||
- wpscanteam@gmail.com
|
||||
matrix:
|
||||
allow_failures:
|
||||
- rvm: 1.9.2
|
||||
|
||||
372
CHANGELOG.md
Normal file
@@ -0,0 +1,372 @@
|
||||
# Changelog
|
||||
## Master
|
||||
[Work in progress](https://github.com/wpscanteam/wpscan/compare/2.6...master)
|
||||
|
||||
## Version 2.6
|
||||
Released: 2014-12-19
|
||||
|
||||
New
|
||||
* Updates the readmes to reflect the new --usernames option
|
||||
* Improves plugin/theme version detection by looking at the "Version:"
|
||||
* Solution to avoid mandatory blank newline at the end of the wordlist
|
||||
* Add check for valid credentials
|
||||
* Add Sucuri sponsor to banner
|
||||
* Add protocol to sucuri url in banner
|
||||
* Add response code to proxy error output
|
||||
* Add a statement about mendatory newlines at the end of list
|
||||
* Give warning if default username 'admin' is still used
|
||||
* License amendment to make it more clear about value added usage
|
||||
|
||||
Removed
|
||||
* remove malwares
|
||||
* remove malware folder
|
||||
* Removes the theme version check from the readme, unrealistic scenario
|
||||
|
||||
General core
|
||||
* Update to Ruby 2.1.5 and travis
|
||||
* Prevent parent theme infinite loop
|
||||
* Fixes the progressbar being overriden by next brute forcing attempts
|
||||
|
||||
Fixed issues
|
||||
* Fix UTF-8 encode on security db file download
|
||||
* Fix #703 - Disable logging by default. Implement log option.
|
||||
* Fix #705 - Installation instructions for Ubuntu < 14.04 apparently incomplete
|
||||
* Fix #717 - Expand on readme.html finding output
|
||||
* Fix #716 - Adds the --version in the help
|
||||
* Fix #715 - Add new updating info to docs
|
||||
* Fix #727 - WpItems detection: Perform the passive check and filter only vulnerable results at the end if required
|
||||
* Fix #737 - Adds some readme files to check for plugin versions
|
||||
* Fix #739 - Adds the --usernames option
|
||||
|
||||
WPScan Database Statistics:
|
||||
* Total vulnerable versions: 88
|
||||
* Total vulnerable plugins: 901
|
||||
* Total vulnerable themes: 313
|
||||
* Total version vulnerabilities: 1050
|
||||
* Total plugin vulnerabilities: 1355
|
||||
* Total theme vulnerabilities: 349
|
||||
|
||||
## Version 2.5.1
|
||||
Released: 2014-09-29
|
||||
|
||||
Fixes reference URL to WPVDB
|
||||
|
||||
## Version 2.5
|
||||
Released: 2014-09-26 (@ BruCON 2014)
|
||||
|
||||
New
|
||||
* Exit program after --update
|
||||
* Detect directory listing in upload folder
|
||||
* Be more verbose when no version can be detected
|
||||
* Added detection for Yoast Wordpress SEO plugin
|
||||
* Also ensure to not process empty Location headers
|
||||
* Ensures a nil location is not processed when enumerating usernames
|
||||
* Fix #626 - Detect 'Must_Use_Plugins'
|
||||
* better username extraction
|
||||
* Add a --cookie option. Ref #485
|
||||
* Add a --no-color option
|
||||
* Output: Give 'Fixed in' an informational tag
|
||||
* Added ArchAssault distro - WPScan comes pre-installed with this distro
|
||||
* Layout changes with new colors
|
||||
|
||||
Removed
|
||||
* Removes the source code updaters
|
||||
* Removes the ListGenerator plugin from WPStools
|
||||
* Removes all files from data/
|
||||
|
||||
General core
|
||||
* Update docs to reflect new updating logic
|
||||
* Little output change and coloring
|
||||
* Adds a missing verbose output
|
||||
* Re-build redirection url if begin with slash '/'
|
||||
* Fixes the remove_conditional_comments function
|
||||
* Ensures to give a string to Typhoeus
|
||||
* Fix wpstools check-vuln-ref-urls
|
||||
* Fix rspecs for new json
|
||||
* Only output if different from style_url
|
||||
* Add exception so 'ruby wpscan.rb http://domain.com' is detected
|
||||
* Added make to Debian installation, which is needed in minimal installation.
|
||||
* Add build-essentials requirement to Ubuntu > 14.04
|
||||
* Updated installation instr. for GNU/Linux Debian.
|
||||
* Changes VersionCompare#is_newer_or_same? by lesser_or_equal?
|
||||
* Fixes the location of the robots.txt check
|
||||
* Updates the recommended ruby version
|
||||
* Rspec 3.0 support
|
||||
* Adds ruby 2.1.2 to Travis
|
||||
* Updated ruby-progressbar to 1.5.0
|
||||
|
||||
WordPress Fingerprints
|
||||
* Adds WP 4.0 fingerprints
|
||||
* Adds WP 3.9.2, 3.8.4 & 3.7.4 fingerprints - Ref #652
|
||||
* Adds 3.9.1 fingerprints
|
||||
|
||||
Fixed issues
|
||||
* Fix #689 - Adds config file to check
|
||||
* Fix #694 - Output Arrays
|
||||
* Fix #693 - Adds pathname require statement
|
||||
* Fix #657 - generate method
|
||||
* Fix #685 - Potenial fix for 'marshal data too short' error
|
||||
* Fix #686 - Adds specs for relative URI in Location headers
|
||||
* Fix #435 - Update license
|
||||
* Fix #674 - Improves the Plugins & Themes passive detection
|
||||
* Fix #673 - Problem with the output
|
||||
* Fix #661 - Don't hash directories named like a file
|
||||
* Fix #653 - Fix for infinite loop in wpstools
|
||||
* Fix #625 - Only parse styles when needed
|
||||
* Fix #481 - Fix for Jetpack plugin false positive
|
||||
* Fix #480 - Properly removes the colour sequence from log
|
||||
* Fix #472 - WPScan stops after redirection if not WordPress website
|
||||
* Fix #464 - Readmes updated to reflect recent changes about the config file & batch mode
|
||||
|
||||
Vulnerabilities
|
||||
* geoplaces4 also uses name GeoPlaces4beta
|
||||
* Added metasploit module's
|
||||
* Added some timthumb detections
|
||||
|
||||
WPScan Database Statistics:
|
||||
* Total vulnerable versions: 87
|
||||
* Total vulnerable plugins: 854
|
||||
* Total vulnerable themes: 303
|
||||
* Total version vulnerabilities: 752
|
||||
* Total plugin vulnerabilities: 1351
|
||||
* Total theme vulnerabilities: 345
|
||||
|
||||
## Version 2.4
|
||||
Released: 2014-04-17
|
||||
|
||||
New
|
||||
* '--batch' switch option added - Fix #454
|
||||
* Add random-agent
|
||||
* Added more CLI options
|
||||
* Switch over to nist - Fix #301
|
||||
* New choice added when a redirection is detected - Fix #438
|
||||
|
||||
Removed
|
||||
* Removed 'Total WordPress Sites in the World' counter from stats
|
||||
* Old wpscan repo links removed - Fix #440
|
||||
* Fingerprinting Dev script removed
|
||||
* Useless code removed
|
||||
|
||||
General core
|
||||
* Rspecs update
|
||||
* Forcing Travis notify the team
|
||||
* Ruby 2.1.1 added to Travis
|
||||
* Equal output layout for interaction questions
|
||||
* Only output error trace if verbose if enabled
|
||||
* Memory improvements during wp-items enumerations
|
||||
* Fixed broken link checker, fixed some broken links
|
||||
* Couple more 404s fixed
|
||||
* Themes & Plugins list updated
|
||||
|
||||
WordPress Fingerprints
|
||||
* WP 3.8.2 & 3.7.2 Fingerprints added - Fix #448
|
||||
* WP 3.8.3 & 3.7.3 fingerprints
|
||||
* WP 3.9 fingerprints
|
||||
|
||||
Fixed issues
|
||||
* Fix #380 - Redirects in WP 3.6-3.0
|
||||
* Fix #413 - Check the version of the Timthumbs files found
|
||||
* Fix #429 - Error WpScan Cache Browser
|
||||
* Fix #431 - Version number comparison between '2.3.3' and '0.42b'
|
||||
* Fix #439 - Detect if the target goes down during the scan
|
||||
* Fix #451 - Do not rely only on files in wp-content for fingerprinting
|
||||
* Fix #453 - Documentation or inplemention of option parameters
|
||||
* Fix #455 - Fails with a message if the target returns a 403 during the wordpress check
|
||||
|
||||
Vulnerabilities
|
||||
* Update WordPress Vulnerabilities
|
||||
* Fixed some duplicate vulnerabilities
|
||||
|
||||
WPScan Database Statistics:
|
||||
* Total vulnerable versions: 79; 1 is new
|
||||
* Total vulnerable plugins: 748; 55 are new
|
||||
* Total vulnerable themes: 292; 41 are new
|
||||
* Total version vulnerabilities: 617; 326 are new
|
||||
* Total plugin vulnerabilities: 1162; 146 are new
|
||||
* Total theme vulnerabilities: 330; 47 are new
|
||||
|
||||
## Version 2.3
|
||||
Released: 2014-02-11
|
||||
|
||||
New
|
||||
* Brute forcing over https!
|
||||
* Detect and output parent theme!
|
||||
* Complete fingerprint script & hash search
|
||||
* New spell checker!
|
||||
* Added database modification dates in status report
|
||||
* Added 'Total WordPress Sites in the World' statistics
|
||||
* Added separator between Name and Version in Item
|
||||
* Added a "Work in progress" URL in the CHANGELOG
|
||||
|
||||
Removed
|
||||
* Removed "Exiting!" sentence
|
||||
* Removed Backtrack Linux. Not maintained anymore.
|
||||
|
||||
General core
|
||||
* Ruby 2.1.0 added to Travis
|
||||
* Updated the version of WebMock required
|
||||
* Better string concatenation in code (improves speed)
|
||||
* Some modifications in the output of an item
|
||||
* Output cosmetics
|
||||
* rspec-mocks version constraint released
|
||||
* Tabs replaced by spaces
|
||||
* Rspecs update
|
||||
* Indent code cleanup
|
||||
* Themes & Plugins lists regenerated
|
||||
|
||||
Vulnerabilities
|
||||
* Update WordPress Vulnerabilities
|
||||
* Disabled some fake reported vulnerabilities
|
||||
* Fixed some duplicate vulnerabilities
|
||||
|
||||
WPScan Database Statistics:
|
||||
* Total vulnerable versions: 78; 2 are new
|
||||
* Total vulnerable plugins: 693; 83 are new
|
||||
* Total vulnerable themes: 251; 55 are new
|
||||
* Total version vulnerabilities: 291 17 are new
|
||||
* Total plugin vulnerabilities: 1016; 236 are new
|
||||
* Total theme vulnerabilities: 283; 79 are new
|
||||
|
||||
WordPress Fingerprints
|
||||
* Better fingerprints
|
||||
* WP 3.8.1 Fingerprinting
|
||||
* WP 3.8 Fingerprinting
|
||||
|
||||
Fixed issues
|
||||
* Fix #404 - Brute forcing issue over https
|
||||
* Fix #398 - Removed a fake vuln in WP Super Cache
|
||||
* Fix #393 - sudo added to the bundle install cmd for Mac OSX
|
||||
* Fix #228, #327 - Infinite loop when self-redirect
|
||||
* Fix #201 - Incorrect Paramter Parsing when no url was supplied
|
||||
|
||||
## Version 2.2
|
||||
Released: 2013-11-12
|
||||
|
||||
New
|
||||
* 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 Database Statistics:
|
||||
* Total vulnerable versions: 76; 4 are new
|
||||
* Total vulnerable plugins: 610; 201 are new
|
||||
* Total vulnerable themes: 196; 47 are new
|
||||
* Total version vulnerabilities: 274; 53 are new
|
||||
* Total plugin vulnerabilities: 780; 286 are new
|
||||
* Total theme vulnerabilities: 204; 52 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
|
||||
|
||||
8
CREDITS
@@ -6,14 +6,16 @@ This file is to give credit to WPScan's contributors. If you feel your name shou
|
||||
|
||||
Erwan.LR - @erwan_lr - (Project Developer)
|
||||
Christian Mehlmauer - @_FireFart_ - (Project Developer)
|
||||
Gianluca Brindisi - @gbrindisi (Project Developer)
|
||||
Peter van der Laan - pvdl - (Vuln Hunter and Code Cleaner)
|
||||
Ryan Dewhurst - @ethicalhack3r (Project Lead)
|
||||
|
||||
*Other Contributors*
|
||||
|
||||
Henri Salo AKA fgeek - Reported lots of vulnerabilities
|
||||
Alip AKA Undead - alip.aswalid at gmail.com
|
||||
michee08 - Reported and gave potential solutions to bugs.
|
||||
michee08 - Reported and gave potential solutions to bugs
|
||||
Callum Pember - Implemented proxy support - callumpember at gmail.com
|
||||
g0tmi1k - Additional timthumb checks + bug reports.
|
||||
g0tmi1k - Additional timthumb checks + bug reports
|
||||
Melvin Lammerts - Reported a couple of fake vulnerabilities - melvin at 12k.nl
|
||||
Paolo Perego - @thesp0nge - Basic authentication
|
||||
Gianluca Brindisi - @gbrindisi - Project Developer
|
||||
|
||||
2
DISCLAIMER.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
WPScan is not responsible for misuse or for any damage that you may cause!
|
||||
You agree that you use this software at your own risk.
|
||||
19
Gemfile
@@ -1,11 +1,14 @@
|
||||
source "https://rubygems.org"
|
||||
source 'https://rubygems.org'
|
||||
|
||||
gem "typhoeus", "~>0.6.2"
|
||||
gem "nokogiri"
|
||||
gem "json"
|
||||
gem 'typhoeus', '~>0.6.8'
|
||||
gem 'nokogiri'
|
||||
gem 'json'
|
||||
gem 'terminal-table'
|
||||
gem 'ruby-progressbar', '>=1.6.0'
|
||||
|
||||
group :development, :test do
|
||||
gem "webmock", "~>1.9.3"
|
||||
gem "simplecov"
|
||||
gem "rspec", :require => "spec"
|
||||
group :test do
|
||||
gem 'webmock', '>=1.17.2'
|
||||
gem 'simplecov'
|
||||
gem 'rspec', '>=3.0'
|
||||
gem 'rspec-its'
|
||||
end
|
||||
|
||||
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
The WPScan software and its data (henceforth both referred to simply as "WPScan") is dual-licensed - copyright 2011-2014 The WPScan Team.
|
||||
|
||||
Cases that include commercialization of WPScan require a commercial, non-free license. Otherwise, the system can be used under the terms of the GNU General Public License.
|
||||
|
||||
Cases of commercialization are:
|
||||
|
||||
- Using WPScan to provide commercial managed/Software-as-a-Service services.
|
||||
- Distributing WPScan as a commercial product or as part of one.
|
||||
- Using WPScan as a value added service/product.
|
||||
|
||||
Cases which do not require a commercial license, and thus fall under the terms of GNU General Public License, include (but are not limited to):
|
||||
|
||||
- Penetration testers (or penetration testing organizations) using WPScan as part of their assessment toolkit. So long as that does not conflict with the commercialization clause.
|
||||
- Using WPScan to test your own systems.
|
||||
- Any non-commercial use of WPScan.
|
||||
|
||||
If you need to acquire a commercial license or are unsure about whether you need to acquire a commercial license, please get in touch, we will be happy to clarify things for you and work with you to accommodate your requirements.
|
||||
|
||||
wpscanteam at gmail.com
|
||||
|
||||
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
178
README
@@ -9,77 +9,119 @@ __________________________________________________
|
||||
|
||||
==LICENSE==
|
||||
|
||||
WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2011-2013 The WPScan Team
|
||||
The WPScan software and its data (henceforth both referred to simply as "WPScan") is dual-licensed - copyright 2011-2014 The WPScan Team.
|
||||
|
||||
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.
|
||||
Cases that include commercialization of WPScan require a commercial, non-free license. Otherwise, the system can be used under the terms of the GNU General Public License.
|
||||
|
||||
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.
|
||||
Cases of commercialization are:
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
- Using WPScan to provide commercial managed/Software-as-a-Service services.
|
||||
- Distributing WPScan as a commercial product or as part of one.
|
||||
- Using WPScan as a value added service/product.
|
||||
|
||||
ryandewhurst at gmail
|
||||
Cases which do not require a commercial license, and thus fall under the terms of GNU General Public License, include (but are not limited to):
|
||||
|
||||
- Penetration testers (or penetration testing organizations) using WPScan as part of their assessment toolkit. So long as that does not conflict with the commercialization clause.
|
||||
- Using WPScan to test your own systems.
|
||||
- Any non-commercial use of WPScan.
|
||||
|
||||
If you need to acquire a commercial license or are unsure about whether you need to acquire a commercial license, please get in touch, we will be happy to clarify things for you and work with you to accommodate your requirements.
|
||||
|
||||
wpscanteam at gmail.com
|
||||
|
||||
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
==INSTALL==
|
||||
|
||||
WPScan comes pre-installed on the following Linux distributions:
|
||||
|
||||
* BackBox Linux
|
||||
* BackTrack Linux (outdated WPScan installed, update needed)
|
||||
* Kali Linux
|
||||
* Pentoo
|
||||
* SamuraiWTF
|
||||
* ArchAssault
|
||||
|
||||
Prerequisites:
|
||||
|
||||
* Windows not supported
|
||||
* Ruby => 1.9
|
||||
* RubyGems
|
||||
* Ruby >= 1.9.2 - Recommended: 2.1.4
|
||||
* Curl >= 7.21 - Recommended: latest - FYI the 7.29 has a segfault
|
||||
* RubyGems - Recommended: latest
|
||||
* Git
|
||||
|
||||
-> Installing on Debian/Ubuntu:
|
||||
Windows is not supported.
|
||||
|
||||
If installed from Github update the code base with git pull. The databases are updated with wpscan.rb --update.
|
||||
|
||||
-> Installing on Ubuntu:
|
||||
|
||||
Before Ubuntu 14.04:
|
||||
|
||||
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
|
||||
|
||||
From Ubuntu 14.04:
|
||||
|
||||
sudo apt-get install libcurl4-gnutls-dev libxml2 libxml2-dev libxslt1-dev ruby-dev build-essential
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && bundle install --without test
|
||||
|
||||
-> Installing on Debian:
|
||||
|
||||
sudo apt-get install git ruby ruby-dev libcurl4-gnutls-dev make
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler
|
||||
bundle install --without test --path vendor/bundle
|
||||
|
||||
-> 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 && sudo bundle install --without test
|
||||
|
||||
-> Installing with RVM:
|
||||
|
||||
cd ~
|
||||
curl -sSL https://get.rvm.io | bash -s stable
|
||||
source ~/.rvm/scripts/rvm
|
||||
echo "source ~/.rvm/scripts/rvm" >> ~/.bashrc
|
||||
rvm install 2.1.4
|
||||
rvm use 2.1.4 --default
|
||||
echo "gem: --no-ri --no-rdoc" > ~/.gemrc
|
||||
gem install bundler
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
bundle install --without test
|
||||
|
||||
==KNOWN ISSUES==
|
||||
|
||||
- Typhoeus segmentation fault:
|
||||
Update cURL to version => 7.21 (may have to install from source)
|
||||
See http://code.google.com/p/wpscan/issues/detail?id=81
|
||||
|
||||
- Proxy not working:
|
||||
Update cURL to version => 7.21.7 (may have to install from source).
|
||||
@@ -105,10 +147,16 @@ 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==
|
||||
|
||||
--update Update to the latest revision
|
||||
--update Update the databases.
|
||||
|
||||
--url | -u <target url> The WordPress URL/domain to scan.
|
||||
|
||||
@@ -123,15 +171,19 @@ ryandewhurst at gmail
|
||||
ap all plugins (can take a long time)
|
||||
tt timthumbs
|
||||
t themes
|
||||
vp only vulnerable themes
|
||||
vt 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'
|
||||
Multiple values are allowed : "-e tt,p" will enumerate timthumbs and plugins
|
||||
If no option is supplied, the default is "vt,tt,u,vp"
|
||||
|
||||
--exclude-content-based '<regexp or string>' Used with the enumeration option, will exclude all occurrences based on the regexp or string supplied
|
||||
--exclude-content-based "<regexp or string>" Used with the enumeration option, will exclude all occurrences based on the regexp or string supplied
|
||||
You do not need to provide the regexp delimiters, but you must write the quotes (simple or double)
|
||||
|
||||
--config-file | -c <config file> Use the specified config file
|
||||
--config-file | -c <config file> Use the specified config file, see the example.conf.json
|
||||
|
||||
--user-agent | -a <User-Agent> Use the specified User-Agent
|
||||
|
||||
--random-agent | -r Use a random User-Agent
|
||||
|
||||
--follow-redirection If the target url has a redirection, it will be followed without asking if you wanted to do so or not
|
||||
|
||||
@@ -142,20 +194,36 @@ ryandewhurst at gmail
|
||||
--proxy <[protocol://]host:port> Supply a proxy (will override the one from conf/browser.conf.json).
|
||||
HTTP, SOCKS4 SOCKS4A and SOCKS5 are supported. If no protocol is given (format host:port), HTTP will be used
|
||||
|
||||
--proxy-auth <username:password> Supply the proxy login credentials (will override the one from conf/browser.conf.json).
|
||||
--proxy-auth <username:password> Supply the proxy login credentials.
|
||||
|
||||
--basic-auth <username:password> Set the HTTP Basic authentication
|
||||
--basic-auth <username:password> Set the HTTP Basic authentication.
|
||||
|
||||
--wordlist | -w <wordlist> Supply a wordlist for the password bruter and do the brute.
|
||||
--wordlist | -w <wordlist> Supply a wordlist for the password brute forcer.
|
||||
|
||||
--threads | -t <number of threads> The number of threads to use when multi-threading requests. (will override the value from conf/browser.conf.json)
|
||||
--threads | -t <number of threads> The number of threads to use when multi-threading requests.
|
||||
|
||||
--username | -U <username> Only brute force the supplied username.
|
||||
|
||||
--usernames <path-to-file> Only brute force the usernames from the file.
|
||||
|
||||
--cache-ttl <cache-ttl> Typhoeus cache TTL.
|
||||
|
||||
--request-timeout <request-timeout> Request Timeout.
|
||||
|
||||
--connect-timeout <connect-timeout> Connect Timeout.
|
||||
|
||||
--max-threads <max-threads> Maximum Threads.
|
||||
|
||||
--help | -h This help screen.
|
||||
|
||||
--verbose | -v Verbose output.
|
||||
|
||||
--batch Never ask for user input, use the default behaviour.
|
||||
|
||||
--no-color Do not use colors in the output.
|
||||
|
||||
--log Save STDOUT to log.txt
|
||||
|
||||
==WPSCAN EXAMPLES==
|
||||
|
||||
Do 'non-intrusive' checks...
|
||||
@@ -174,21 +242,33 @@ 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's databases...
|
||||
|
||||
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.
|
||||
--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 *pages* 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
|
||||
-v, --verbose Verbose output
|
||||
--check-vuln-ref-urls, --cvru Check all the vulnerabilities reference urls for 404
|
||||
--check-local-vulnerable-files, --clvf LOCAL_DIRECTORY Perform a recursive scan in the LOCAL_DIRECTORY to find vulnerable files or shells
|
||||
s, --stats Show WpScan Database statistics.
|
||||
--spellcheck, --sc Check all files for common spelling mistakes.
|
||||
|
||||
==WPSTOOLS EXAMPLES==
|
||||
|
||||
- Generate a new 'most popular' plugin list, up to 150 pages ...
|
||||
ruby wpstools.rb --generate_plugin_list 150
|
||||
|
||||
- Locally scan a wordpress installation for vulnerable files or shells :
|
||||
Locally scan a wordpress installation for vulnerable files or shells:
|
||||
ruby wpstools.rb --check-local-vulnerable-files /var/www/wordpress/
|
||||
|
||||
===PROJECT HOME===
|
||||
@@ -203,8 +283,10 @@ https://github.com/wpscanteam/wpscan
|
||||
|
||||
https://github.com/wpscanteam/wpscan/issues
|
||||
|
||||
===SPONSOR===
|
||||
===DEVELOPER DOCUMENTATION===
|
||||
|
||||
WPScan is sponsored by the RandomStorm Open Source Initiative.
|
||||
http://rdoc.info/github/wpscanteam/wpscan/frames
|
||||
|
||||
Visit RandomStorm at http://www.randomstorm.com
|
||||
===SPECIAL THANKS===
|
||||
|
||||
RandomStorm - https://www.randomstorm.com
|
||||
|
||||
223
README.md
@@ -1,98 +1,129 @@
|
||||

|
||||

|
||||
|
||||
|
||||
[](https://travis-ci.org/wpscanteam/CMSScanner)
|
||||
[](https://codeclimate.com/github/wpscanteam/wpscan)
|
||||
[](https://gemnasium.com/wpscanteam/wpscan)
|
||||
|
||||
#### LICENSE
|
||||
|
||||
WPScan - WordPress Security Scanner
|
||||
Copyright (C), 2011-2013 The WPScan Team
|
||||
The WPScan software and its data (henceforth both referred to simply as "WPScan") is dual-licensed - copyright 2011-2014 The WPScan Team.
|
||||
|
||||
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.
|
||||
Cases that include commercialization of WPScan require a commercial, non-free license. Otherwise, the system can be used under the terms of the GNU General Public License.
|
||||
|
||||
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.
|
||||
Cases of commercialization are:
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
- Using WPScan to provide commercial managed/Software-as-a-Service services.
|
||||
- Distributing WPScan as a commercial product or as part of one.
|
||||
- Using WPScan as a value added service/product.
|
||||
|
||||
ryandewhurst at gmail
|
||||
Cases which do not require a commercial license, and thus fall under the terms of GNU General Public License, include (but are not limited to):
|
||||
|
||||
- Penetration testers (or penetration testing organizations) using WPScan as part of their assessment toolkit. So long as that does not conflict with the commercialization clause.
|
||||
- Using WPScan to test your own systems.
|
||||
- Any non-commercial use of WPScan.
|
||||
|
||||
If you need to acquire a commercial license or are unsure about whether you need to acquire a commercial license, please get in touch, we will be happy to clarify things for you and work with you to accommodate your requirements.
|
||||
|
||||
wpscanteam at gmail.com
|
||||
|
||||
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#### INSTALL
|
||||
|
||||
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)
|
||||
- [Kali Linux](http://www.kali.org/)
|
||||
- [Pentoo](http://www.pentoo.ch/)
|
||||
- [SamuraiWTF](http://samurai.inguardians.com/)
|
||||
- [ArchAssault](https://archassault.org/)
|
||||
|
||||
Prerequisites:
|
||||
|
||||
- Windows not supported
|
||||
- Ruby => 1.9
|
||||
- RubyGems
|
||||
- Ruby >= 1.9.2 - Recommended: 2.1.4
|
||||
- Curl >= 7.21 - Recommended: latest - FYI the 7.29 has a segfault
|
||||
- RubyGems - Recommended: latest
|
||||
- Git
|
||||
|
||||
*Installing on Debian/Ubuntu:*
|
||||
Windows is not supported.
|
||||
If installed from Github update the code base with ```git pull```. The databases are updated with ```wpscan.rb --update```.
|
||||
|
||||
```sudo apt-get install libcurl4-gnutls-dev libopenssl-ruby libxml2 libxml2-dev libxslt1-dev ruby-dev```
|
||||
####Installing on Ubuntu:
|
||||
|
||||
```git clone https://github.com/wpscanteam/wpscan.git```
|
||||
Before Ubuntu 14.04:
|
||||
|
||||
```cd wpscan```
|
||||
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
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
From Ubuntu 14.04:
|
||||
|
||||
*Installing on Fedora:*
|
||||
sudo apt-get install libcurl4-gnutls-dev libxml2 libxml2-dev libxslt1-dev ruby-dev build-essential
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && bundle install --without test
|
||||
|
||||
```sudo yum install libcurl-devel```
|
||||
####Installing on Debian:
|
||||
|
||||
```git clone https://github.com/wpscanteam/wpscan.git```
|
||||
sudo apt-get install git ruby ruby-dev libcurl4-gnutls-dev make
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler
|
||||
bundle install --without test --path vendor/bundle
|
||||
|
||||
```cd wpscan```
|
||||
####Installing on Fedora:
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
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
|
||||
|
||||
*Installing on Archlinux:*
|
||||
####Installing on Archlinux:
|
||||
|
||||
```pacman -Sy ruby```
|
||||
pacman -Syu ruby
|
||||
pacman -Syu libyaml
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && bundle install --without test
|
||||
gem install typhoeus
|
||||
gem install nokogiri
|
||||
|
||||
```pacman -Sy libyaml```
|
||||
####Installing on Mac OSX:
|
||||
|
||||
```git clone https://github.com/wpscanteam/wpscan.git```
|
||||
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](http://stackoverflow.com/questions/17775115/cant-setup-ruby-environment-installing-fii-gem-error)
|
||||
|
||||
```cd wpscan```
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
sudo gem install bundler && sudo bundle install --without test
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
####Installing with RVM:
|
||||
|
||||
```gem install typhoeus```
|
||||
|
||||
```gem install nokogiri```
|
||||
|
||||
*Installing on Mac OSX:*
|
||||
|
||||
```git clone https://github.com/wpscanteam/wpscan.git```
|
||||
|
||||
```cd wpscan```
|
||||
|
||||
```sudo gem install bundler && bundle install --without test development```
|
||||
cd ~
|
||||
curl -sSL https://get.rvm.io | bash -s stable
|
||||
source ~/.rvm/scripts/rvm
|
||||
echo "source ~/.rvm/scripts/rvm" >> ~/.bashrc
|
||||
rvm install 2.1.4
|
||||
rvm use 2.1.4 --default
|
||||
echo "gem: --no-ri --no-rdoc" > ~/.gemrc
|
||||
gem install bundler
|
||||
git clone https://github.com/wpscanteam/wpscan.git
|
||||
cd wpscan
|
||||
bundle install --without test
|
||||
|
||||
#### KNOWN ISSUES
|
||||
|
||||
- Typhoeus segmentation fault
|
||||
|
||||
Update cURL to version => 7.21 (may have to install from source)
|
||||
See http://code.google.com/p/wpscan/issues/detail?id=81
|
||||
|
||||
- Proxy not working
|
||||
|
||||
Update cURL to version => 7.21.7 (may have to install from source).
|
||||
|
||||
Installation from sources :
|
||||
```
|
||||
|
||||
Grab the sources from http://curl.haxx.se/download.html
|
||||
Decompress the archive
|
||||
Open the folder with the extracted files
|
||||
@@ -100,25 +131,33 @@ Prerequisites:
|
||||
Run make
|
||||
Run sudo make install
|
||||
Run sudo ldconfig
|
||||
```
|
||||
|
||||
|
||||
- cannot load such file -- readline:
|
||||
|
||||
```sudo aptitude install libreadline5-dev libncurses5-dev```
|
||||
sudo aptitude install libreadline5-dev libncurses5-dev
|
||||
|
||||
Then, open the directory of the readline gem (you have to locate it)
|
||||
```
|
||||
|
||||
cd ~/.rvm/src/ruby-1.9.2-p180/ext/readline
|
||||
ruby extconf.rb
|
||||
make
|
||||
make install
|
||||
```
|
||||
|
||||
See http://vvv.tobiassjosten.net/ruby-on-rails/fixing-readline-for-the-ruby-on-rails-console/ for more details
|
||||
|
||||
See [http://vvv.tobiassjosten.net/ruby-on-rails/fixing-readline-for-the-ruby-on-rails-console/](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](https://github.com/wpscanteam/wpscan/issues/148)
|
||||
|
||||
#### WPSCAN ARGUMENTS
|
||||
|
||||
--update Update to the latest revision
|
||||
--update Update the databases.
|
||||
|
||||
--url | -u <target url> The WordPress URL/domain to scan.
|
||||
|
||||
@@ -135,13 +174,17 @@ Prerequisites:
|
||||
t themes
|
||||
vt 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'
|
||||
Multiple values are allowed : "-e tt,p" will enumerate timthumbs and plugins
|
||||
If no option is supplied, the default is "vt,tt,u,vp"
|
||||
|
||||
--exclude-content-based '<regexp or string>' Used with the enumeration option, will exclude all occurrences based on the regexp or string supplied
|
||||
--exclude-content-based "<regexp or string>" Used with the enumeration option, will exclude all occurrences based on the regexp or string supplied
|
||||
You do not need to provide the regexp delimiters, but you must write the quotes (simple or double)
|
||||
|
||||
--config-file | -c <config file> Use the specified config file
|
||||
--config-file | -c <config file> Use the specified config file, see the example.conf.json
|
||||
|
||||
--user-agent | -a <User-Agent> Use the specified User-Agent
|
||||
|
||||
--random-agent | -r Use a random User-Agent
|
||||
|
||||
--follow-redirection If the target url has a redirection, it will be followed without asking if you wanted to do so or not
|
||||
|
||||
@@ -152,20 +195,36 @@ Prerequisites:
|
||||
--proxy <[protocol://]host:port> Supply a proxy (will override the one from conf/browser.conf.json).
|
||||
HTTP, SOCKS4 SOCKS4A and SOCKS5 are supported. If no protocol is given (format host:port), HTTP will be used
|
||||
|
||||
--proxy-auth <username:password> Supply the proxy login credentials (will override the one from conf/browser.conf.json).
|
||||
--proxy-auth <username:password> Supply the proxy login credentials.
|
||||
|
||||
--basic-auth <username:password> Set the HTTP Basic authentication
|
||||
--basic-auth <username:password> Set the HTTP Basic authentication.
|
||||
|
||||
--wordlist | -w <wordlist> Supply a wordlist for the password bruter and do the brute.
|
||||
--wordlist | -w <wordlist> Supply a wordlist for the password brute forcer.
|
||||
|
||||
--threads | -t <number of threads> The number of threads to use when multi-threading requests. (will override the value from conf/browser.conf.json)
|
||||
--threads | -t <number of threads> The number of threads to use when multi-threading requests.
|
||||
|
||||
--username | -U <username> Only brute force the supplied username.
|
||||
|
||||
--usernames <path-to-file> Only brute force the usernames from the file.
|
||||
|
||||
--cache-ttl <cache-ttl> Typhoeus cache TTL.
|
||||
|
||||
--request-timeout <request-timeout> Request Timeout.
|
||||
|
||||
--connect-timeout <connect-timeout> Connect Timeout.
|
||||
|
||||
--max-threads <max-threads> Maximum Threads.
|
||||
|
||||
--help | -h This help screen.
|
||||
|
||||
--verbose | -v Verbose output.
|
||||
|
||||
--batch Never ask for user input, use the default behaviour.
|
||||
|
||||
--no-color Do not use colors in the output.
|
||||
|
||||
--log Save STDOUT to log.txt
|
||||
|
||||
#### WPSCAN EXAMPLES
|
||||
|
||||
Do 'non-intrusive' checks...
|
||||
@@ -192,41 +251,49 @@ Use custom content directory...
|
||||
|
||||
```ruby wpscan.rb -u www.example.com --wp-content-dir custom-content```
|
||||
|
||||
Update WPScan...
|
||||
Update WPScan's databases...
|
||||
|
||||
```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.
|
||||
--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 *pages* 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
|
||||
-v, --verbose Verbose output
|
||||
--check-vuln-ref-urls, --cvru Check all the vulnerabilities reference urls for 404
|
||||
--check-local-vulnerable-files, --clvf LOCAL_DIRECTORY Perform a recursive scan in the LOCAL_DIRECTORY to find vulnerable files or shells
|
||||
-s, --stats Show WpScan Database statistics.
|
||||
--spellcheck, --sc Check all files for common spelling mistakes.
|
||||
|
||||
|
||||
#### WPSTOOLS EXAMPLES
|
||||
|
||||
Generate a new 'most popular' plugin list, up to 150 pages...
|
||||
|
||||
```ruby wpstools.rb --generate_plugin_list 150```
|
||||
|
||||
Locally scan a wordpress installation for vulnerable files or shells:
|
||||
```ruby wpstools.rb --check-local-vulnerable-files /var/www/wordpress/```
|
||||
|
||||
```ruby wpstools.rb --check-local-vulnerable-files /var/www/wordpress/```
|
||||
|
||||
#### PROJECT HOME
|
||||
|
||||
www.wpscan.org
|
||||
[http://www.wpscan.org](http://www.wpscan.org)
|
||||
|
||||
#### VULNERABILITY DATABASE
|
||||
|
||||
[https://www.wpvulndb.com](https://www.wpvulndb.com)
|
||||
|
||||
#### GIT REPOSITORY
|
||||
|
||||
https://github.com/wpscanteam/wpscan
|
||||
[https://github.com/wpscanteam/wpscan](https://github.com/wpscanteam/wpscan)
|
||||
|
||||
#### ISSUES
|
||||
|
||||
https://github.com/wpscanteam/wpscan/issues
|
||||
[https://github.com/wpscanteam/wpscan/issues](https://github.com/wpscanteam/wpscan/issues)
|
||||
|
||||
#### SPONSOR
|
||||
#### DEVELOPER DOCUMENTATION
|
||||
|
||||
WPScan is sponsored by the [RandomStorm](http://www.randomstorm.com) Open Source Initiative.
|
||||
[http://rdoc.info/github/wpscanteam/wpscan/frames](http://rdoc.info/github/wpscanteam/wpscan/frames)
|
||||
|
||||
#### SPECIAL THANKS
|
||||
|
||||
[RandomStorm](https://www.randomstorm.com)
|
||||
|
||||
4
cache/.gitignore
vendored
@@ -1,4 +0,0 @@
|
||||
# Ignore everything in this directory
|
||||
*
|
||||
# Except this file
|
||||
!.gitignore
|
||||
@@ -1,63 +0,0 @@
|
||||
{
|
||||
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0",
|
||||
/* Modes :
|
||||
static : will use the defined user_agent for each request
|
||||
semi-static : will randomly choose a user agent into available_user_agents before each scan
|
||||
random : each request will choose a random user agent in available_user_agents
|
||||
*/
|
||||
"user_agent_mode": "static",
|
||||
|
||||
/* Uncomment the "proxy" line to use the proxy
|
||||
SOCKS proxies (4, 4A, 5) are supported, ie : "proxy": "socks5://127.0.0.1:9000"
|
||||
If you do not specify the protocol, http will be used
|
||||
*/
|
||||
//"proxy": "127.0.0.1:3128",
|
||||
//"proxy_auth": "username:password",
|
||||
|
||||
"cache_ttl": 600, // 10 minutes, at this time the cache is cleaned before each scan. If this value is set to 0, the cache will be disabled
|
||||
|
||||
"request_timeout": 2000, // 2s
|
||||
|
||||
"max_threads": 20,
|
||||
|
||||
// Some user_agents can be found there http://techpatterns.com/downloads/firefox/useragentswitcher.xml (thx to Gianluca Brindisi)
|
||||
"available_user_agents":
|
||||
[
|
||||
// Windows
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.0.249.0 Safari/532.5",
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/534.14 (KHTML, like Gecko) Chrome/9.0.601.0 Safari/534.14",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.27 (KHTML, like Gecko) Chrome/12.0.712.0 Safari/534.27",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.24 Safari/535.1",
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 5.1; tr; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 ( .NET CLR 3.5.30729; .NET4.0E)",
|
||||
"Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.6 (KHTML, like Gecko) Chrome/20.0.1092.0 Safari/536.6",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20120403211507 Firefox/12.0",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1",
|
||||
"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)",
|
||||
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
|
||||
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)",
|
||||
"Opera/9.80 (Windows NT 6.1; U; es-ES) Presto/2.9.181 Version/12.00",
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/5.0.2 Safari/533.18.5",
|
||||
|
||||
// MAC
|
||||
"Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_5; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.15 Safari/534.13",
|
||||
"Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.5; en-US; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
|
||||
"Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418.8 (KHTML, like Gecko) Safari/419.3",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_0) AppleWebKit/536.3 (KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2; rv:10.0.1) Gecko/20100101 Firefox/10.0.1",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.55.3 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10",
|
||||
|
||||
// Linux
|
||||
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.20 Safari/535.1",
|
||||
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.24 (KHTML, like Gecko) Ubuntu/10.10 Chromium/12.0.703.0 Chrome/12.0.703.0 Safari/534.24",
|
||||
"Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.9) Gecko/20100915 Gentoo Firefox/3.6.9",
|
||||
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.16) Gecko/20120421 Gecko Firefox/11.0",
|
||||
"Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20100101 Firefox/12.0",
|
||||
"Opera/9.80 (X11; Linux x86_64; U; pl) Presto/2.7.62 Version/11.00",
|
||||
"Mozilla/5.0 (X11; U; Linux x86_64; us; rv:1.9.1.19) Gecko/20110430 shadowfox/7.0 (like Firefox/7.0"
|
||||
]
|
||||
}
|
||||
2
data/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
*
|
||||
!.gitignore
|
||||
@@ -1,66 +0,0 @@
|
||||
<?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
|
||||
-->
|
||||
|
||||
<hashes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="local_vulnerable_files.xsd">
|
||||
|
||||
<hash sha1="17c372678aafb3bc1a7b37320b5cc1d8af433527">
|
||||
<title>XSS in swfupload.swf</title>
|
||||
<file>swfupload.swf</file>
|
||||
<reference>http://brindi.si/g/blog/vulnerable-swf-bundled-in-wordpress-plugins.html</reference>
|
||||
</hash>
|
||||
|
||||
<hash sha1="775dc1089829ef07838406def28a4d8bfef69d66">
|
||||
<title>Arbitrary File Upload Vulnerability</title>
|
||||
<file>php.php</file>
|
||||
<reference>http://packetstormsecurity.com/files/119241/wpvalums-shell.txt</reference>
|
||||
</hash>
|
||||
|
||||
<!-- This one a is the same as above, but the postSize verification has been removed -->
|
||||
<hash sha1="5e8f0d5a917d2937318a9bafd0529135bd473e70">
|
||||
<title>Arbitrary File Upload Vulnerability</title>
|
||||
<file>php.php</file>
|
||||
<reference>http://packetstormsecurity.com/files/119218/wpreflexgallery-shell.txt</reference>
|
||||
</hash>
|
||||
|
||||
<hash sha1="3f9ad05b05b65ee2b6efa1373f708293dd2005c7">
|
||||
<title>Arbitrary File Upload Vulnerability</title>
|
||||
<file>uploadify.php</file>
|
||||
<reference>http://packetstormsecurity.com/files/119219/wpuploader104-shell.txt</reference>
|
||||
</hash>
|
||||
|
||||
<hash sha1="ac638cc38f011b74a8d9a4e7d3d60358e472166c">
|
||||
<title>Inline phpinfo()</title>
|
||||
<file>phpinfo.php</file>
|
||||
<reference>http://php.net/manual/en/function.phpinfo.php</reference>
|
||||
</hash>
|
||||
|
||||
<hash sha1="012ee25cceff745e681fbb3697a06f3712f55554">
|
||||
<title>phpinfo()</title>
|
||||
<file>phpinfo.php</file>
|
||||
<reference>http://php.net/manual/en/function.phpinfo.php</reference>
|
||||
</hash>
|
||||
|
||||
</hashes>
|
||||
@@ -1,58 +0,0 @@
|
||||
<?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">
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:minLength value="1" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="uritype">
|
||||
<xs:restriction base="xs:anyURI">
|
||||
<xs:minLength value="1" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="sha1type">
|
||||
<xs:restriction base="stringtype">
|
||||
<xs:pattern value="[0-9a-f]{40}"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:complexType name="hashtype">
|
||||
<xs:sequence minOccurs="1" maxOccurs="1">
|
||||
<xs:element name="title" type="stringtype"/>
|
||||
<xs:element name="file" type="stringtype"/>
|
||||
<xs:element name="reference" type="uritype"/>
|
||||
</xs:sequence>
|
||||
<xs:attribute type="sha1type" name="sha1" use="required"/>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:element name="hashes">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="hash" type="hashtype" maxOccurs="unbounded" minOccurs="1"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
</xs:schema>
|
||||
@@ -1,3 +0,0 @@
|
||||
http://.*\.rr\.nu
|
||||
http://www\.thesea\.org/media\.php
|
||||
|
||||
2200
data/plugins.txt
33640
data/plugins_full.txt
1235
data/theme_vulns.xml
1555
data/themes.txt
6542
data/themes_full.txt
2446
data/timthumbs.txt
@@ -1,97 +0,0 @@
|
||||
<?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">
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:minLength value="1" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="uritype">
|
||||
<xs:restriction base="xs:anyURI">
|
||||
<xs:minLength value="1" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="typetype">
|
||||
<xs:restriction base="stringtype">
|
||||
<xs:enumeration value="SQLI"/>
|
||||
<xs:enumeration value="MULTI"/>
|
||||
<xs:enumeration value="REDIRECT"/>
|
||||
<xs:enumeration value="RCE"/>
|
||||
<xs:enumeration value="RFI"/>
|
||||
<xs:enumeration value="LFI"/>
|
||||
<xs:enumeration value="UPLOAD"/>
|
||||
<xs:enumeration value="UNKNOWN"/>
|
||||
<xs:enumeration value="XSS"/>
|
||||
<xs:enumeration value="CSRF"/>
|
||||
<xs:enumeration value="AUTHBYPASS"/>
|
||||
<xs:enumeration value="FPD"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:complexType name="itemtype">
|
||||
<xs:sequence>
|
||||
<xs:element name="vulnerability" type="vulntype" maxOccurs="unbounded" minOccurs="1" />
|
||||
</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>
|
||||
<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>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:element name="vulnerabilities">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<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:complexType>
|
||||
<xs:unique name="uniquePlugin">
|
||||
<xs:selector xpath="plugin"/>
|
||||
<xs:field xpath="@name"/>
|
||||
</xs:unique>
|
||||
<xs:unique name="uniqueTheme">
|
||||
<xs:selector xpath="theme"/>
|
||||
<xs:field xpath="@name"/>
|
||||
</xs:unique>
|
||||
<xs:unique name="uniqueWordpress">
|
||||
<xs:selector xpath="wordpress"/>
|
||||
<xs:field xpath="@version"/>
|
||||
</xs:unique>
|
||||
</xs:element>
|
||||
|
||||
</xs:schema>
|
||||
@@ -1,224 +0,0 @@
|
||||
<?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.
|
||||
http://wordpress.org/download/release-archive/
|
||||
|
||||
Position is important, DO NOT change anything unless you know what you are doing :p
|
||||
-->
|
||||
|
||||
<wp-versions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="wp_versions.xsd">
|
||||
|
||||
<file src="wp-includes/js/tiny_mce.js">
|
||||
<hash md5="6e79ab6d786c5c95920064add33ee599">
|
||||
<version>3.5.1</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="55cd8e5ceca9c1763b1401164d70df50">
|
||||
<version>3.5</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/wp-lists.js">
|
||||
<hash md5="46e1341cd4ea49f31046f7d7962adc7f">
|
||||
<version>3.4.2</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/customize-preview.js">
|
||||
<hash md5="617d9fd858e117c7d1d087be168b5643">
|
||||
<version>3.4.1</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="da36bc2dfcb13350c799b62de68dfa4b">
|
||||
<version>3.4</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="a8a259fc5197a78ffe62d6be38dc52f8">
|
||||
<version>3.4-beta4</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/plupload/plupload.js">
|
||||
|
||||
<hash md5="85199c05db63fcb5880de4af8be7b571">
|
||||
<version>3.3.2</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="$wp-content$/themes/twentyeleven/style.css">
|
||||
|
||||
<!-- same md5 for 3.3.2 -->
|
||||
<hash md5="030d3bac906ba69e9fbc99c5bac54a8e">
|
||||
<version>3.3.1</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-admin/js/wp-fullscreen.js">
|
||||
|
||||
<hash md5="5675f7793f171b6424bf72f9d7bf4d9a">
|
||||
<version>3.2.1</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="7b423e0b7c9221092737ad5271d09863">
|
||||
<version>3.2</version>
|
||||
</hash>
|
||||
|
||||
</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>
|
||||
|
||||
|
||||
<file src="$wp-content$/themes/twentyten/style.css">
|
||||
|
||||
<hash md5="6211e2ac1463bf99e98f28ab63e47c54">
|
||||
<version>3.0</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="$wp-plugins$/akismet/readme.txt">
|
||||
|
||||
<hash md5="4d5e52da417aa0101054bd41e6243389">
|
||||
<version>2.8.6</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="58e086dea9d24ed074fe84ba87386c69">
|
||||
<version>2.8.5</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="48c52025b5f28731e9a0c864c189c2e7">
|
||||
<version>2.8.2</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/wp-ajax-response.js">
|
||||
|
||||
<hash md5="0289d1c13821599764774d55516ab81a">
|
||||
<version>2.7.1</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/thickbox/thickbox.css">
|
||||
|
||||
<hash md5="9c2bd2be0893adbe02a0f864526734c2">
|
||||
<version>2.7</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.js">
|
||||
|
||||
<hash md5="5b140ddf0f08034402ae78b31d8a1a28">
|
||||
<version>2.6</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/tinymce/themes/advanced/js/image.js">
|
||||
|
||||
<hash md5="088245408531c58bb52cc092294cc384">
|
||||
<version>2.5.1</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/tinymce/themes/advanced/js/link.js">
|
||||
|
||||
<hash md5="19c6f3118728c38eb7779aab4847d2d9">
|
||||
<version>2.5</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/wp-ajax.js">
|
||||
|
||||
<hash md5="c5dbce0c3232c477033e0ce486c62755">
|
||||
<version>2.2</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="$wp-content$/themes/default/style.css">
|
||||
|
||||
<hash md5="e44545f529a54de88209ce588676231c">
|
||||
<version>2.0.1</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="f786f66d3a40846aa22dcdfeb44fa562">
|
||||
<version>2.0</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-layout.css">
|
||||
|
||||
<hash md5="7140e06c00ed03d2bb3dad7672557510">
|
||||
<version>1.2.1</version>
|
||||
</hash>
|
||||
|
||||
<hash md5="1bcc9253506c067eb130c9fc4f211a2f">
|
||||
<version>1.2-delta</version>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
|
||||
<file src="layout2b.css">
|
||||
|
||||
<hash md5="baec6b6ccbf71d8dced9f1bf67c751e1">
|
||||
<version>0.71-gold</version>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
</wp-versions>
|
||||
@@ -1,57 +0,0 @@
|
||||
<?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">
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:minLength value="1" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:complexType name="filetype">
|
||||
<xs:sequence>
|
||||
<xs:element name="hash" type="hashtype" maxOccurs="unbounded" minOccurs="1"/>
|
||||
</xs:sequence>
|
||||
<xs:attribute type="stringtype" name="src" use="required"/>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:simpleType name="md5type">
|
||||
<xs:restriction base="stringtype">
|
||||
<xs:pattern value="[0-9a-f]{32}"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:complexType name="hashtype">
|
||||
<xs:sequence minOccurs="1" maxOccurs="1">
|
||||
<xs:element name="version" type="stringtype"/>
|
||||
</xs:sequence>
|
||||
<xs:attribute type="md5type" name="md5" use="required"/>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:element name="wp-versions">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="file" type="filetype" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
</xs:schema>
|
||||
1346
data/wp_vulns.xml
41
dev/pre-commit-hook.rb
Executable file
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
# from the top level dir:
|
||||
# ln -sf ../../dev/pre-commit-hook.rb .git/hooks/pre-commit
|
||||
|
||||
require 'pty'
|
||||
html_path = 'rspec_results.html'
|
||||
|
||||
begin
|
||||
PTY.spawn( "rspec spec --format h > #{html_path}" ) do |stdin, stdout, pid|
|
||||
begin
|
||||
stdin.each { |line| print line }
|
||||
rescue Errno::EIO => e
|
||||
puts "Error: #{e.to.s}"
|
||||
return 1
|
||||
end
|
||||
end
|
||||
rescue PTY::ChildExited
|
||||
puts 'Child process exit!'
|
||||
end
|
||||
|
||||
# find out if there were any errors
|
||||
html = open(html_path).read
|
||||
examples = html.match(/(\d+) examples/)[0].to_i rescue 0
|
||||
errors = html.match(/(\d+) errors/)[0].to_i rescue 0
|
||||
if errors == 0 then
|
||||
errors = html.match(/(\d+) failure/)[0].to_i rescue 0
|
||||
end
|
||||
pending = html.match(/(\d+) pending/)[0].to_i rescue 0
|
||||
|
||||
if errors.zero?
|
||||
puts "0 failed! #{examples} run, #{pending} pending"
|
||||
sleep 1
|
||||
exit 0
|
||||
else
|
||||
puts "\aCOMMIT FAILED!!"
|
||||
puts "View your rspec results at #{File.expand_path(html_path)}"
|
||||
puts
|
||||
puts "#{errors} failed! #{examples} run, #{pending} pending"
|
||||
exit 1
|
||||
end
|
||||
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 );
|
||||
});
|
||||