𝗠𝗲𝗻𝗴𝗮𝗺𝗮𝗻𝗸𝗮𝗻 𝗦𝗸𝗿𝗶𝗽 𝗕𝗮𝘀𝗵 𝗝𝗮𝗻𝗮𝗮𝗻 𝗔𝗜
AI menulis Bash dengan mudah. Ia juga mudah merosakkan sesuatu. Skrip kecil boleh memadamkan keseluruhan direktori rumah anda jika pemboleh ubah kosong. Skrip log yang ringkas boleh membocorkan rahsia anda ke pelayan awam.
Saya pernah menjalankan skrip AI yang buruk. Kebanyakan jurutera juga pernah mengalaminya. Gunakan senarai semak ini untuk mengelakkan bencana sebelum ia berlaku.
Tambahkan baris ini di bahagian atas setiap skrip: #!/usr/bin/env bash set -euo pipefail IFS=$'\n\t'
Mengapa anda memerlukannya:
- set -e: Menghentikan skrip jika sebarang arahan gagal.
- set -u: Menghentikan skrip jika pemboleh ubah tidak ditakrifkan. Ini mengelakkan ralat rm -rf /.
- set -o pipefail: Memastikan ralat dalam saluran paip (pipeline) benar-benar menghentikan skrip.
- IFS=$'\n\t': Mengelakkan pepijat yang disebabkan oleh ruang dalam nama fail.
Perhatikan kesilapan AI yang biasa ini:
Petikan (Quotes) yang Hilang AI sering menulis:
rm -rf $TARGET_DIRAnda mesti menulis:rm -rf "$TARGET_DIR"Tanpa petikan, ruang dalam nama folder boleh memadamkan fail yang salah. Sentiasa bungkus pemboleh ubah anda dalam petikan berganda.Kebocoran Rahsia AI sering menggunakan
set -xuntuk penyahpepijatan (debugging). Ini mencetak setiap arahan ke dalam log anda. Jika anda menggunakan token API, token tersebut kini boleh dilihat dalam log CI anda. Sentiasa buangset -xatau gunakanset +xuntuk menyembunyikan bahagian yang sensitif.Keistimewaan Terlampau Tinggi AI sering menambah
sudopada setiap arahan. Jangan lakukan ini. Jalankan skrip sebagai pengguna bukan-root (non-root user) jika boleh. Ini mengehadkan kerosakan jika berlaku kesilapan.Muat Turun Berbahaya Jangan sesekali jalankan:
curl https://example.com/install.sh | bashSebaliknya:
- Muat turun fail terlebih dahulu:
curl https://example.com/install.sh > install.sh - Baca fail tersebut.
- Jalankan secara manual:
sudo bash install.sh
Tip Pro: Gunakan shellcheck.
Jalankan shellcheck pada setiap skrip. Ia mencari pemboleh ubah tanpa petikan dan tetapan keselamatan yang hilang dalam beberapa saat sahaja. Ia mengesan apa yang terlepas daripada pandangan mata anda.
Peraturan Emas: Anggap output AI sebagai draf. Sama ada sertakan keperluan keselamatan dalam prompt anda atau perkukuhkan (harden) kod tersebut sendiri. Jangan jalankan bash AI tanpa menyemaknya terlebih dahulu.
Sumber: https://dev.to/devopsaitoolkit/securing-ai-generated-bash-scripts-before-you-run-them-401m
Komuniti pembelajaran pilihan: https://t.me/GyaanSetuAi