De ceva vreme folosesc Termux pentru a transforma telefonul într-un mic server Linux de buzunar, rulând diverse teste direct de pe el. Până acum, „laboratorul” meu mobil rula pe un Redmi Note 8 Pro care, deși funcționa perfect, avea ecranul spart. Recent, am făcut un upgrade la un Xiaomi Mi 11T, fostul telefon al Oanei.

Nikto în Android: tutorial de instalare în Termux

Deși are camera foto principală defectă (nu mai focalizează), telefonul este perfect pentru ce-mi trebuie mie, având un ecran impecabil. Această schimbare m-a motivat să reiau configurarea de la zero și să documentez în detaliu instalarea unuia dintre instrumentele mele preferate.

Spre deosebire de multe tutoriale care prezintă doar calea ideală, acest articol este o cronică a experienței reale, cu toate erorile, frustrările și soluțiile pe care le-am găsit pe parcurs. Este un ghid practic, pas cu pas, pentru oricine vrea să instaleze Nikto pe un telefon Android fără root și, foarte probabil, se va lovi de aceleași obstacole. Procesul nu a fost direct, dar fiecare problemă rezolvată a fost o lecție valoroasă.

De ce Nikto pe telefon?

Scopul meu este să recreez pe noul telefon laboratorul de securitate pe care îl aveam și pe vechiul Redmi, iar Nikto este unul dintre instrumentele esențiale din acest arsenal. Posibilitatea de a rula unelte de pentesting direct de pe telefon este extrem de utilă, permițându-mi să fac verificări rapide în diverse rețele, fără să fiu legat de un laptop.

O mențiune importantă: întreaga configurare a fost realizată prin SSH, fiind conectat la telefon de pe Mac-ul personal și folosind iTerm ca terminal. Așadar, capturile de ecran din articol reflectă sesiunea remote, nu direct ecranul telefonului. Deși am documentat procesul pe un Xiaomi Mi 11T, pașii sunt valabili pentru majoritatea telefoanelor Android pe care poate rula cea mai recentă versiune de Termux, obținută de pe F-Droid sau GitHub.

Prima încercare și prima barieră

Am început, ca de obicei, cu actualizarea completă a pachetelor din Termux, pentru a mă asigura că totul este la zi.

pkg update && pkg upgrade

Primul impuls a fost să încerc instalarea directă din repository, folosind comanda clasică.

pkg install nikto

Evident, am fost întâmpinat de o eroare previzibilă: E: Unable to locate package nikto.

Unable to locate package Nikto

Așa am ajuns la prima concluzie: Nikto nu se află în repository-urile oficiale Termux și necesită o instalare manuală, ceea ce deschidea calea către o serie de provocări legate de dependențele Perl.

Dependențele Perl: Net::SSLeay

Știam că Nikto depinde de câteva module Perl, cel mai important fiind Net::SSLeay pentru gestionarea conexiunilor SSL. Am încercat instalarea acestuia prin CPAN (managerul de pachete pentru Perl), dar am intrat într-un labirint de erori. Prima problemă majoră a apărut la compilare: scriptul de instalare nu găsea bibliotecile OpenSSL, deși acestea erau instalate corect în sistem.

*** Could not find OpenSSL
If it's already installed, please set the OPENSSL_PREFIX environment
variable accordingly.

Am încercat să setez manual variabilele de mediu (OPENSSL_PREFIX, OPENSSL_LIB, OPENSSL_INCLUDE), dar fără succes. Frustrarea creștea, deoarece verificările manuale confirmau că bibliotecile libssl.so și libcrypto.so existau în directorul /data/data/com.termux/files/usr/lib. Problema nu era absența fișierelor, ci faptul că scriptul de instalare nu știa unde să le caute.

Eureka!

După nenumărate încercări eșuate, am decis să analizez direct scriptul Makefile.PL al modulului Net::SSLeay. Am descoperit că acesta nu doar verifica existența bibliotecilor, ci și a executabilului openssl în PATH. O simplă verificare cu comanda which openssl a scos la iveală problema reală: deși OpenSSL era funcțional, executabilul nu era găsit imediat în calea sistemului. O rulare a comenzii openssl version a forțat actualizarea PATH-ului, iar de acolo lucrurile s-au simplificat.

Cheia succesului a fost setarea corectă a variabilei de mediu OPENSSL_PREFIX și rularea manuală a pașilor de compilare și instalare:

cd ~/.cpan/build/Net-SSLeay-1.94-4/
export OPENSSL_PREFIX=/data/data/com.termux/files/usr
perl Makefile.PL
make
make test
make install

Deși make test a returnat câteva erori minore, acestea erau de natură cosmetică și nu afectau funcționalitatea, așa că am continuat instalarea.

Instalare Nikto în Termux - pachete

O verificare finală a confirmat că modulul Net::SSLeay versiunea 1.94 a fost instalat cu succes.

Instalarea Nikto și configurarea finală

Odată rezolvată problema critică a dependenței Net::SSLeay, restul procesului a decurs fără probleme. Am clonat repository-ul oficial Nikto, am făcut scriptul executabil și am instalat celelalte module Perl necesare (LWP::Protocol::https, JSON::PP etc.), care de data aceasta s-au instalat fără erori.

cd ~
git clone https://github.com/sullo/nikto
cd nikto/program
chmod +x nikto.pl

Pentru a simplifica utilizarea, am adăugat variabilele de mediu pentru OpenSSL în fișierul ~/.zshrc pentru a deveni permanente și am creat un alias pentru a putea rula Nikto de oriunde, folosind doar comanda nikto.

Nikto instalat

echo 'alias nikto="perl ~/nikto/program/nikto.pl"' >> ~/.zshrc
source ~/.zshrc

Un test final cu nikto -Version a confirmat că totul era funcțional.

Ghid complet de instalare

Pentru cei care doresc să evite orele de troubleshooting, iată secvența completă de pași, cu explicațiile și comenzile separate.

1. Actualizarea sistemului
Primul pas este să ne asigurăm că toate pachetele din Termux sunt la zi.

pkg update && pkg upgrade

2. Instalarea pachetelor necesare
Instalăm toate dependențele de care vom avea nevoie pentru compilare și rulare: Perl, OpenSSL, Clang, Make și Git.

pkg install perl openssl clang make git

3. Setarea permanentă a variabilelor de mediu
Pentru ca modulele Perl să găsească OpenSSL, setăm variabila OPENSSL_PREFIX și o adăugăm în ~/.zshrc.

cat >> ~/.zshrc << 'EOF'
export OPENSSL_PREFIX=/data/data/com.termux/files/usr
EOF
source ~/.zshrc

4. Configurarea inițială CPAN
La prima rulare a comenzii cpan, va trebui realizată o configurare inițială. Se recomandă să acceptați configurarea automată (yes), să alegeți instalarea modulelor local (local::lib) și să permiteți modificarea automată a fișierului de configurare (yes).

5. Instalarea modulelor Perl
Instalăm Net::SSLeay și celelalte module necesare pentru funcționalitatea completă a Nikto.

cpan -i Net::SSLeay LWP::Protocol::https JSON::PP HTTP::Cookies LWP::UserAgent

6. Instalarea Nikto
Clonăm cea mai recentă versiune de pe GitHub și facem scriptul principal executabil.

cd ~
git clone https://github.com/sullo/nikto
cd nikto/program
chmod +x nikto.pl

7. Crearea unui alias (opțional)
Pentru a rula Nikto mai ușor, creăm un alias.

echo 'alias nikto="perl ~/nikto/program/nikto.pl"' >> ~/.zshrc
source ~/.zshrc

8. Testarea finală
Verificăm dacă totul funcționează corect, afișând versiunea instalată.

nikto -Version

Nikto este un instrument puternic pentru testarea securității. Utilizarea sa pe sisteme pentru care nu aveți autorizație explicită este ilegală și poate avea consecințe serioase. Folosiți-l responsabil, exclusiv pe propriile sisteme sau pe platforme de învățare precum TryHackMe sau HackTheBox.

Resurse utile

Pentru cei interesați să aprofundeze subiectul, iată două linkuri esențiale:

Concluzie

Deși instalarea Nikto pe Termux a fost mai complicată decât mă așteptam, bătaia de cap a meritat, că am învățat lucrui noi, inclusiv Gemini mi-a mulțumit când i-am arătat ciorna markdown a ghidului pe care tocmai l-ați citit. Sper să nu se rezume la măguleli, ci chiar să bage la cip tot ce a învățat.

Spune-ți părerea!

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.