<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=KI%3A_PRAKTEK_9%3A_Serangan_terhadap_AI</id>
	<title>KI: PRAKTEK 9: Serangan terhadap AI - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=KI%3A_PRAKTEK_9%3A_Serangan_terhadap_AI"/>
	<link rel="alternate" type="text/html" href="https://onnocenter.or.id/wiki/index.php?title=KI:_PRAKTEK_9:_Serangan_terhadap_AI&amp;action=history"/>
	<updated>2026-05-04T05:09:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.4</generator>
	<entry>
		<id>https://onnocenter.or.id/wiki/index.php?title=KI:_PRAKTEK_9:_Serangan_terhadap_AI&amp;diff=73226&amp;oldid=prev</id>
		<title>Onnowpurbo at 11:21, 23 January 2026</title>
		<link rel="alternate" type="text/html" href="https://onnocenter.or.id/wiki/index.php?title=KI:_PRAKTEK_9:_Serangan_terhadap_AI&amp;diff=73226&amp;oldid=prev"/>
		<updated>2026-01-23T11:21:36Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://onnocenter.or.id/wiki/index.php?title=KI:_PRAKTEK_9:_Serangan_terhadap_AI&amp;amp;diff=73226&amp;amp;oldid=73184&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Onnowpurbo</name></author>
	</entry>
	<entry>
		<id>https://onnocenter.or.id/wiki/index.php?title=KI:_PRAKTEK_9:_Serangan_terhadap_AI&amp;diff=73184&amp;oldid=prev</id>
		<title>Onnowpurbo: Created page with &quot; PRAKTEK 9: Serangan terhadap AI Fokus modul ini adalah membongkar asumsi “AI selalu benar”. Mahasiswa diajak hands-on melihat sendiri bagaimana model AI bisa ditipu, dima...&quot;</title>
		<link rel="alternate" type="text/html" href="https://onnocenter.or.id/wiki/index.php?title=KI:_PRAKTEK_9:_Serangan_terhadap_AI&amp;diff=73184&amp;oldid=prev"/>
		<updated>2026-01-23T01:49:12Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot; PRAKTEK 9: Serangan terhadap AI Fokus modul ini adalah membongkar asumsi “AI selalu benar”. Mahasiswa diajak hands-on melihat sendiri bagaimana model AI bisa ditipu, dima...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
PRAKTEK 9: Serangan terhadap AI&lt;br /&gt;
Fokus modul ini adalah membongkar asumsi “AI selalu benar”. Mahasiswa diajak hands-on melihat sendiri bagaimana model AI bisa ditipu, dimanipulasi, dan disesatkan, bahkan dengan perubahan kecil yang tidak terlihat oleh manusia.&lt;br /&gt;
Seluruh praktik menggunakan Linux Ubuntu 24.04, Python, dan open-source software. Tidak ada black box, tidak ada proprietary tools.&lt;br /&gt;
Tujuan&lt;br /&gt;
Setelah menyelesaikan modul ini, mahasiswa mampu:&lt;br /&gt;
Memahami kelemahan fundamental sistem AI&lt;br /&gt;
Menjelaskan konsep adversarial example dan data poisoning&lt;br /&gt;
Mensimulasikan serangan nyata terhadap model AI&lt;br /&gt;
Menganalisis perubahan output akibat manipulasi input/data&lt;br /&gt;
Menyadari bahwa AI adalah sistem statistik, bukan sistem kebenaran&lt;br /&gt;
Pesan kunci:&lt;br /&gt;
AI bisa salah — dan kesalahan itu bisa direkayasa.&lt;br /&gt;
Konsep Inti (Fundamental yang Wajib Dipahami)&lt;br /&gt;
Adversarial Example&lt;br /&gt;
Adversarial example adalah input yang dimodifikasi sangat kecil, sering kali tidak terlihat oleh manusia, tetapi mengubah prediksi AI secara drastis.&lt;br /&gt;
Contoh dunia nyata:&lt;br /&gt;
Gambar rambu STOP → AI membaca Speed Limit&lt;br /&gt;
Email normal → diklasifikasikan sebagai spam&lt;br /&gt;
Teks biasa → lolos sensor moderasi&lt;br /&gt;
👉 Masalahnya bukan bug, tetapi cara AI belajar dari pola statistik.&lt;br /&gt;
Data Poisoning&lt;br /&gt;
Data poisoning adalah serangan sebelum AI digunakan, yaitu dengan merusak data latih (training data).&lt;br /&gt;
Contoh nyata:&lt;br /&gt;
Dataset wajah diberi label salah&lt;br /&gt;
Review palsu dimasukkan ke data rekomendasi&lt;br /&gt;
Data sensor dimanipulasi sebelum pelatihan&lt;br /&gt;
👉 Jika data rusak, model secanggih apa pun akan rusak.&lt;br /&gt;
Tools yang Digunakan&lt;br /&gt;
Semua tools bersifat open source:&lt;br /&gt;
Ubuntu Linux 24.04&lt;br /&gt;
Python 3.12&lt;br /&gt;
scikit-learn&lt;br /&gt;
NumPy&lt;br /&gt;
Jupyter Notebook&lt;br /&gt;
(opsional) Matplotlib untuk visualisasi&lt;br /&gt;
Praktikum Lengkap (Step-by-Step)&lt;br /&gt;
Bagian A — Setup Lingkungan&lt;br /&gt;
&lt;br /&gt;
sudo apt update&lt;br /&gt;
sudo apt install python3 python3-pip python3-venv -y&lt;br /&gt;
Buat virtual environment:&lt;br /&gt;
python3 -m venv ai-attack-env&lt;br /&gt;
source ai-attack-env/bin/activate&lt;br /&gt;
Install library:&lt;br /&gt;
pip install numpy scikit-learn matplotlib jupyter&lt;br /&gt;
Bagian B — Train Model AI Sederhana&lt;br /&gt;
Kita mulai dari model yang “benar” dan “bersih”.&lt;br /&gt;
Dataset &amp;amp; Model&lt;br /&gt;
from sklearn.datasets import load_iris&lt;br /&gt;
from sklearn.model_selection import train_test_split&lt;br /&gt;
from sklearn.linear_model import LogisticRegression&lt;br /&gt;
from sklearn.metrics import accuracy_score&lt;br /&gt;
&lt;br /&gt;
# Load dataset&lt;br /&gt;
data = load_iris()&lt;br /&gt;
X, y = data.data, data.target&lt;br /&gt;
&lt;br /&gt;
# Split&lt;br /&gt;
X_train, X_test, y_train, y_test = train_test_split(&lt;br /&gt;
    X, y, test_size=0.2, random_state=42&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
# Train model&lt;br /&gt;
model = LogisticRegression(max_iter=200)&lt;br /&gt;
model.fit(X_train, y_train)&lt;br /&gt;
&lt;br /&gt;
# Evaluate&lt;br /&gt;
y_pred = model.predict(X_test)&lt;br /&gt;
print(&amp;quot;Accuracy:&amp;quot;, accuracy_score(y_test, y_pred))&lt;br /&gt;
Catatan Penting:&lt;br /&gt;
Model ini tidak salah. Ia bekerja sesuai statistik.&lt;br /&gt;
Bagian C — Adversarial Example (Serangan Input)&lt;br /&gt;
Tujuan&lt;br /&gt;
Membuktikan bahwa perubahan kecil bisa menipu AI.&lt;br /&gt;
Ambil Satu Data Uji&lt;br /&gt;
import numpy as np&lt;br /&gt;
&lt;br /&gt;
sample = X_test[0]&lt;br /&gt;
label = y_test[0]&lt;br /&gt;
&lt;br /&gt;
print(&amp;quot;Original prediction:&amp;quot;, model.predict([sample]))&lt;br /&gt;
print(&amp;quot;True label:&amp;quot;, label)&lt;br /&gt;
Manipulasi Input Secara Halus&lt;br /&gt;
&lt;br /&gt;
# Tambahkan noise kecil&lt;br /&gt;
epsilon = 0.1&lt;br /&gt;
adversarial_sample = sample + epsilon * np.sign(sample)&lt;br /&gt;
&lt;br /&gt;
print(&amp;quot;Adversarial prediction:&amp;quot;, model.predict([adversarial_sample]))&lt;br /&gt;
Yang terjadi:&lt;br /&gt;
Secara visual: data hampir sama&lt;br /&gt;
Secara matematis: AI membaca berbeda&lt;br /&gt;
Diskusi Kritis&lt;br /&gt;
Apakah manusia bisa melihat perbedaannya? ❌&lt;br /&gt;
Apakah AI berubah keputusan? ✅&lt;br /&gt;
Apakah ini bug? ❌&lt;br /&gt;
Apakah ini kelemahan desain AI? ✅&lt;br /&gt;
&lt;br /&gt;
Bagian D — Data Poisoning (Serangan Data Training)&lt;br /&gt;
Tujuan&lt;br /&gt;
Menunjukkan bahwa AI bisa “dibohongi” sejak awal pelatihan.&lt;br /&gt;
Racuni Dataset&lt;br /&gt;
&lt;br /&gt;
import random&lt;br /&gt;
&lt;br /&gt;
# Salin data latih&lt;br /&gt;
X_poisoned = X_train.copy()&lt;br /&gt;
y_poisoned = y_train.copy()&lt;br /&gt;
&lt;br /&gt;
# Ubah label secara acak&lt;br /&gt;
for i in random.sample(range(len(y_poisoned)), 10):&lt;br /&gt;
    y_poisoned[i] = (y_poisoned[i] + 1) % 3&lt;br /&gt;
Train Model dengan Data Rusak&lt;br /&gt;
&lt;br /&gt;
poisoned_model = LogisticRegression(max_iter=200)&lt;br /&gt;
poisoned_model.fit(X_poisoned, y_poisoned)&lt;br /&gt;
&lt;br /&gt;
y_pred_poisoned = poisoned_model.predict(X_test)&lt;br /&gt;
print(&amp;quot;Accuracy poisoned model:&amp;quot;, accuracy_score(y_test, y_pred_poisoned))&lt;br /&gt;
Hasil:&lt;br /&gt;
Akurasi turun, tetapi AI tidak tahu bahwa ia sedang salah.&lt;br /&gt;
Bagian E — Analisis &amp;amp; Refleksi&lt;br /&gt;
Apa yang Dipelajari Mahasiswa?&lt;br /&gt;
AI tidak memahami makna, hanya pola&lt;br /&gt;
Perubahan kecil → dampak besar&lt;br /&gt;
Kualitas data lebih penting dari algoritma&lt;br /&gt;
Serangan AI murah dan mudah dilakukan&lt;br /&gt;
&lt;br /&gt;
Output Praktikum (Wajib Dikumpulkan)&lt;br /&gt;
Mahasiswa menyerahkan:&lt;br /&gt;
Notebook Jupyter&lt;br /&gt;
Training normal&lt;br /&gt;
Adversarial example&lt;br /&gt;
Data poisoning&lt;br /&gt;
Analisis singkat (1–2 halaman):&lt;br /&gt;
Bagian mana yang paling berbahaya?&lt;br /&gt;
Mana yang lebih sulit dideteksi?&lt;br /&gt;
Implikasi untuk AI di pemerintahan / industri?&lt;br /&gt;
Insight Penutup (Inspiratif)&lt;br /&gt;
AI bukan masalahnya.&lt;br /&gt;
Cara kita mempercayainya tanpa verifikasi — itulah masalahnya.&lt;br /&gt;
Modul ini membekali mahasiswa mindset security-first:&lt;br /&gt;
Jangan percaya output AI&lt;br /&gt;
Selalu audit data&lt;br /&gt;
Selalu uji asumsi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Pranala Menarik==&lt;br /&gt;
&lt;br /&gt;
* [[Keamanan Informasi: Kuliah]]&lt;/div&gt;</summary>
		<author><name>Onnowpurbo</name></author>
	</entry>
</feed>