Latihan 1 dari materi Insecure Deserialization di Security — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Buat fungsi classifyDeserialization(code) yang mendeteksi pola deserialization berbahaya di snippet kode.
Input: string kode. Return salah satu:
"unsafe" jika kode mengandung salah satu pattern berbahaya:
unserialize( (PHP)pickle.loads( (Python)yaml.load( tanpa SafeLoader / safe_loadObjectInputStream( (Java)Marshal.load( (Ruby)"safe" jika kode menggunakan json.loads(, JSON.parse(, yaml.safe_load(, atau tidak mengandung pattern di atasContoh:
classifyDeserialization("$data = unserialize($_COOKIE['x']);") // "unsafe"
classifyDeserialization("json.loads(request.body)") // "safe"
classifyDeserialization("yaml.safe_load(f)") // "safe"