Senin, 22 September 2025

Ngoprek EFI dengan AI: Contoh C++

Eh bro, pernah kebayang nggak kalau AI bisa jalan dari level BIOS alias EFI? Bayangin komputer kamu nyala, terus AI kecil-kecilan udah mulai mikirin cara booting paling cepat dan aman. Seru kan?

Sip, Kita Mulai dari EFI

EFI itu versi modern BIOS. Bedanya dia fleksibel, bisa boot cepat, dan support partisi gede. Jadi kalau BIOS itu kayak HP jadul, EFI itu iPhone terbaru. Nah, sekarang kita bisa tambahin “otak AI” di lapisan ini.

Contoh Kode AI Mini di EFI (C++)

Ini cuma contoh super simpel buat ngasih gambaran, AI-nya ringan banget. Misal kita mau AI belajar pola booting sederhana dan memutuskan delay optimal:

#include <stdio.h>

// Contoh AI mini: prediksi delay booting
int predictBootDelay(int lastDelays[], int n) {
    int sum = 0;
    for(int i=0; i<n; i++) {
        sum += lastDelays[i];
    }
    // AI mini: rata-rata aja
    return sum / n;
}

int main() {
    int bootTimes[5] = {1200, 1150, 1180, 1220, 1170}; // dalam ms
    int optimalDelay = predictBootDelay(bootTimes, 5);
    printf("Optimal boot delay: %d ms\n", optimalDelay);
    return 0;
}

Ini jelas banget, bro. AI mini kita cuma ngitung rata-rata boot time terakhir buat bantu “nge-set” delay optimal. Bayangin kalau algoritma ini lebih kompleks, bisa prediksi prioritas hardware, amanin sistem, atau bahkan optimasi memory sebelum OS muncul!

Kelebihan Serius

  • Booting lebih cepat karena AI belajar pola.
  • Keamanan ekstra, karena bisa deteksi perilaku aneh sebelum OS muncul.
  • Developer bisa eksperimen AI low-level tanpa ganggu OS.

Jadi kesimpulannya, main-main sama AI di EFI itu bukan cuma seru tapi juga ngasih insight baru soal komputer dari level paling bawah. Santai tapi cerdas, bro!

Selamat ngoprek, semoga AI mini kamu nggak malah ngambek.

Label: , ,

Minggu, 17 Agustus 2025

Mengetes Kerentanan DLL Side-Loading di Aplikasi Windows

Nah, meskipun masalah DLL side-loading ini salah satu “plague” paling umum di aplikasi Win32, dan Microsoft punya waktu lama banget buat ngatasin ini, ternyata developer masih harus ribet ngecek sendiri apakah aplikasinya rentan.

Misalnya, kamu mau cek apakah Rufus rentan side-loading. Caranya gampang, tinggal pakai ProcMon dengan filter berikut:

Process Name contains rufus
Operation is CreateFile
Result contains NAME NOT FOUND

Catatan: ProcMon itu lumayan berat karena monitoring real-time, jadi sebaiknya pause dulu sampai siap nge-run aplikasi.

Setelah ProcMon jalan, jalankan Rufus dan lihat setiap permintaan CreateFile untuk DLL di direktori aplikasi. Di Rufus 4.6, misalnya, muncul request untuk cfgmgr32.dll.

Nah, ini bahaya. Kalau seseorang bisa akses user kamu atau lokasi executable, mereka bisa menaruh cfgmgr32.dll jahat yang bisa nge-run kode dengan privilege lebih tinggi.

Iya sih, kalau orang itu udah punya akses user di Windows, mungkin mereka nggak perlu nunggu Rufus jalan buat nge-run kode, tapi tetap, Rufus seharusnya nggak boleh load DLL nggak dipercaya dari direktori aplikasi.

Masalah ini sebenarnya udah diperbaiki di Rufus 4.7. Tapi, sejujurnya, Microsoft sebenarnya bisa bikin fitur untuk developer supaya executable nggak pernah load DLL dari direktori aplikasi. Sayangnya, opsi ini dulu ada di SetDllDirectory() tapi sekarang agak misterius hilang dari dokumentasi resmi.

Jadi, nggak heran kalau banyak aplikasi Windows dianggap kurang aman.

Terima kasih juga buat EmperialX dan Shauryae1337 yang nge-report isu Rufus 4.6 dan ngenalin ProcMon buat ngecek kerentanan kayak gini.

Jumat, 13 Juni 2025

Download oscdimg.exe dari Microsoft Tanpa Ribet

Microsoft emang kadang nyebelin kalau mau download file kecil kayak oscdimg.exe. Padahal ini utility dasar yang berguna banget buat bikin ISO dari kumpulan file dan folder.

Tenang, kita tahu triknya. Pakai PowerShell, tinggal jalankan:



curl.exe -L -A "Microsoft-Symbol-Server/10.0.0.0" https://msdl.microsoft.com/download/symbols/oscdimg.exe/688CABB065000/oscdimg.exe -o oscdimg.exe

  

Nah, sekarang kamu udah punya oscdimg.exe tanpa harus download gigabyte sampah tambahan.

Untuk bikin ISO dari command prompt Windows, misal dari folder C:\tmp\image\:



oscdimg -g -h -k -m -u2 -udfver102 -l"My Image" C:\tmp\image\ C:\tmp\image.iso

  

Dan biar lebih keren lagi, ini saya kasih Python script yang bisa bikin URL download otomatis dari PE executable Microsoft:



#!/bin/env python3



# Script ini bikin URL debug server dari PE executable Microsoft,

# sehingga bisa langsung download pake curl.

import os

import sys

import pefile



def build_symbol_server_url(pe_path):

    exe_name = os.path.basename(pe_path)

    pe = pefile.PE(pe_path)

    time_date_stamp = pe.FILE_HEADER.TimeDateStamp

    size_of_image = pe.OPTIONAL_HEADER.SizeOfImage

    hex_part = '{:08X}{:X}'.format(time_date_stamp, size_of_image)

    url = f"https://msdl.microsoft.com/download/symbols/{exe_name}/{hex_part}/{exe_name}"

    return url



if __name__ == "__main__":

    if len(sys.argv) != 2:

        print(f"Usage: {sys.argv[0]} ")

        sys.exit(1)

    pe_path = sys.argv[1]

    try:

        url = build_symbol_server_url(pe_path)

        print(url)

    except Exception as e:

        print(f"Error: {e}")

        sys.exit(1)

  

Label: , ,