Ringkasan Forensic
Ringkasan Forensic
Computer Forensic Core Concepts o Technical analysis → berbau hacking, malware, virus
Digital Forensic: tindakan untuk melakukan pengumpulan, pengamanan, validasi, identifikasi, o Content analysis → berbau hoax (mostly dia pake tools, ga terlalu technical)
analisa, interpretasi, dokumentasi dan mempresentasikan bukti-bukti digital untuk membangun
rekayasa ulang sebuah kejadian untuk mengungkap fakta sebuah tindakan kriminal Basic Cyber Forensic Skill
berdasarkan hasil pengujian dan pengamatan. a. Technical Ability
b. Investigate Ability
Artifacts: sebuah sisa-sisa atau traces dari suatu sistem setelah suatu kejadian terjadi dan dalam c. Communication Ability
kasus tertentu bisa dijadikan sebagai barang bukti.
Digital Forensic Method:
Evidence: sebuah benda/data yang digunakan dalam proses hukum, kehilangan Preservation -> Collection -> Validation -> Identification -> Analysis -> Interpretation ->
“evidence/barang bukti” dapat menjadi suatu masalah bagi Investigator. Documentation and presentation of digital evidence.
Locard Exchanged Principle -> “in the physical world, when perpetrators enter or leave a crime Digital Forensic Investigation:
scene, they will leave something behind and take something with them - Data Recovery
- Identity Theft
Kegunaan Digital Forensic - Malware and Ransomware Investigation
● Criminal Investigation -> menginvestigasi kasus kriminal, cukup self explanatory - Network and Internet Investigation
● Civil Litigation -> sebagai penyelesaian sengketa perdata di pengadilan. - Email Investigation
● Intelligence -> untuk mengumpulkan informasi secara digital, bisa berbentuk bukti - Corporate Espionage
transaksi, atau bukti” lain - Child Pornography Investigation, etc.
● Administrative matters -> penggunaan digital forensik di investigasi non criminal.
Contohnya mencari pegawai yang melanggar policy atau peraturan dari sebuah organisasi, Digital Forensic Process:
data breach investigation, auditing, intellectual property theft, dll. 1. Acquisition
pengumpulan bukti digital untuk diteliti, tergantung, ini bisa berupa akusisi physical hard
Forensic Organization: drives, optical media, storage card, handphone, chips, atau hanya sebuah document
- Scientific Working Group on Digital Evidence (SWGDE) file. Nanti stelah diakusisi, diduplicate dulu biar datanya lebih terintegrate (syarat standar)
- American Academy of Forensic Sciences (AAFS) 2. Analysis
- American Society of Crime Laboratory Directors (ASCLD) Identifikasi = menentukan letak asset digital pada evidence. Analisa = analisa dengan
- National Institute of Standard and Technology (NIST) metode sesuai dgn data yang diprocess (log analysis, statistical analysis, cara analisa
- American Society for Testing and Materials (ASTM) lainnya). Interpretation = berdasarkan hasil analisa, investigator merangkai rekayasa
ulang kejadiannya bagaimana, dari alur, process, hingga efek dari kejadian itu.
Subfield of computer forensic: 3. Presentation
a. Intrusion and Malware Analysis → examining malware (network/hard drive/log) investigator mempresent datanya kepada pihak penting. menjelaskan secara detail
b. Media Exploitation → kegiatan biasa tapi terjadi/barang buktinya ada di digital (criminal, penemuan dan alur dari barang bukti yang berhasil diakuisisi (Chain of Custody), tidak
terrorism, kidnapping) jarang investigator juga harus me-defend konklusi yang dia buat berdasarkan analisanya.
c. E-discovery → bedanya sama yang kedua, dia cuman berperan seperti pihak ke-3 atau
validator di pengadilan (buat crosscheck dengan investigator di sana) Evidence Source Example
d. Mobile Device → examining mobile devices + mobile malware analysis 1, Digital: Hard Drive (HDD, SSD, IDE, SCSCI, SATA, etc.), RAID, Flash Memory/ Flashdisk, RAM
e. Cyber Threat Intelligence → pake bbrp Teknik buat provide information dan ngemanfaatin Memory , Smartphone
itu buat ngeprevent dari further attack (ngevisualisasiin karakteristik attacknya buat 2. Non-Digital: Password, Username, IP Address, Domain, Subdomain, Online storage OR Sticky
ngeformulate IOC (indicator of compromise), combine IOC buat formulate TTP notes around computer, under keyboard, notebooks, planner
(Techniques, Tactics, Procedures)
1 2
8. Copious note taking -> Semua penemuan, perubahan, dan data dari image harus
dimasukin ke report.
Cyber Forensic Acquisition
Forensic acquisition adalah sebuah tindakan untuk mentransfer digital evidence ke image file
dan digunakan untuk analisis dan prosecution dari crimenya, bukti ini gaboleh di copy paste, Principle of Acquisition
harus kloning karena bisa mengubah barang buktiny ● Old School
Examer tidak akan membuat perubahan kepada barang bukti selama pengambilan, cara
Forensic Image → a bit-level copy of all data on suspect digital media, not same as Windows file yang digunakan dalam extract data antara lain: Hard drive extraction, write - blocking
copy (Read only) standard dead imaging techniques (proses imaging saat media penyimpanan tidak aktif).
● New School
Forensic Acquisition process: Dibandingkan old school, disini examiner diperbolehkan melakukan perubahan tetapi
1. Sterilization destination media diusahakan seminimum mungkin. Dengan cara antara lain: Live acquisition, RAM
- Formatting destination media. acquisition.
- Make zero byte on hard disk (proses ngeclear tempat penaruhan file image lu) → Tools : NB. Modern network intrusion, encryption, malware attack -> lebih cocok ke New School
AOMEI, puran wipe disk:
Security Option 1 → harddisknya cmn didelete kyk biasa (ga safe, deleted file masih bs Logical vs Physical Images
direcover) ● Logical Images
Security Option 2 → write 1 pass random data + 1 pass of zeros, over entire disk ○ Does not capture volume slack, additional partitions, atau unallocated space.
Security Option 3 → write 2 passes random rada + 1 pass of known data, over entire disk Jadi informasi yang “relevan” aja. (ex: D: aja)
Security Option 4 → writes over the data 7 times (US standard) ○ Prefered dan juga De-facto standard
2. Identify Evidence -> sumbernya dari device mana aja ex: kejadiannya dmn, victimnya ● Physical image
siapa ○ 1 to 1 image sm evidence nya (capture everything)
3. Create & maintain chain of custody ○ Digunakan saat
- dokumentasi semua proses forensik secara step by step. Seperti cara ■ Ukuran hard drivenya terlalu besar
mengamankan, transport, dan verifikasi barang yang kita dapatkan untuk ■ Evidence menggunakan RAID system
diinvestigasi agar dapat digunakan nanti dalam sidang perkara dan dapat dijadikan ■ Jika permit yang diberikan hanya untuk section kecil saja
bukti, siapa yang melakukan apa, dan kapan hal tersebut terjadi kepada barang
bukti tersebut. -> demonstrate “trust” kepada pengadilan dan masyarakat bahwa Dead Aqusition Basic Process (imaging biasa (di device yg mati) dan gabakal alter any data di
bukti tidak ditampered disknya):
- Collection, Examination, Analysis, Reporting of Media -> Data -> Information -> 1. Option 1 : Pull the hard drive
Evidence a. Extract the hard drive
Poin” penting dalam chain of custody document: b. Attach Write blocker device
● How was the document collected? c. Use software imaging tools and hash
● When was it collected? d. Take notes
● How do you transport it? Dapat digunakan pada shutdown computer, external hard drive, usb, cd/dvd
● How was it tracked? 2. Option 2 : Linux boot CD/USB
● How was it stored? a. Pilih linux boot cd
● Who has access? b. Masukan boot cd ke komputer dan set bios boot dari cd / usb
4. Using write block device (optional) c. Pilih imaging dan hashing option
- dibuat read - only tanpa merusak atau merubah isi dari drive tersebut. d. Take notes
- Deepfreeze di install pada komputer windows target
- Di lab akan dilakukan image mounting Live Acquisition Basic Process (Saat melakukan live acquisitions pastikan menggunakan
5. Create image -> Dilakukan agar originalitas data tidak berubah (tools: FTK imager, image approach yang tidak invasive, dan berpikir sebelum melakukan apapun. Mulai dari data yang
format: .E01 (Encase) , Raw dd .001, AccessData Custom Content Image .ADI) paling volatile, misalnya evidence yang ada di RAM):
6. Hash Image -> Image yg diclone akan dihash buat ngeverif barang buktinya selalu sama 1. Setup usb or network collection repo
7. Verify hash image, Tools HashCalc (min.3 jenis hashing) Untuk tracking lalu lintas jaringan dan data yang dapat diakses pengguna.
2. Collect volatile memory
3 4
Mengumpulkan terlebih dahulu memory yang bisa berubah cepat (ram, cache..) - SSDs yang menerapkan TRIM Technology yang membuat data lebih mudah dihilangkan.
3. Unplug network connection - Environment tanpa DFIR Personel yang terlatih, dimana sebuah kejadian dapat terjadi dan
Karena disatu sisi menghindari purging data dari pihak ke 3, tetapi bisa membatasi device berlalu tanpa ada yang sadar.
tersangka juga.
4. Direct live acquisition tools to storage repository and create forensic image Storage and Memory -> Data dapat di store dengan berbagai cara, ada 4 cara yang umum untuk
5. Collect live state information: network connections, running process, open port, etc. dilakukan antara lain electromagnetism, microscopic, electrical transistors(flash), and
6. Take notes! reflecting light (CDs, DVDs, etc)
Data Volatility -> tipe ini bisa berubah sewaktu-waktu tanpa adanya warning, ex: RAM, di RAM Jenis-jenis memory
data bisa “ada” selama ada listrik yang mengalir atau klo programnya diterminated maka - Magnetic Disk: Kebanyakan drives sekarang pakai magnetic, cara kerjanya adalah ketika
activitynya hilang. Beda dengan hardisk disk-termagnetisasi dibaca dengan 1, dan apabila tidak dibaca dengan 0 Contohnya ada
Hard Disk Drive (HDD) dan Floppy Disk (Disket)
Order of Volatility - Flash Memory: Flash memory digunakan dengan cara melihat tegangan elektrik yang
1. CPU, cache, register content diberikan, pada saat ada tegangan elektrik (charged) maka akan dibaca sebagai 1, tanap
2. Routing table, arp cache, kernel statistic, process table adanya tegangan yang masuk akan dibaca sebagai 0. Contohnya ada USB Flash Drive
3. Memory (Flashdisk) dan Solid-State Drive (SSD)
4. Temporary file system/swap space - Optical Storage: Adalah jenis storage yang menggunakan cahaya laser untuk melakukan
5. Remotely logged data read dan write di memory.Contohnya antara lain adalah Digital Versatile Disc (DVD) dan
6. Data contained on archival media CD ( Compact Disc)
Forensic Acquisition Checklist -> Checklist setelah securing sebuah bukti Contoh RAM:
1. Apa aja jenis devices yg ada? - Extended Data Output RAM (EDO RAM)
2. Ada berapa devices yg diselidiki? - Synchronous Dynamic RAM (SDRAM)
3. Apakah devicesnya itu bisa jalan? - DDR-SDRAM/DDR 1 (Double Data Rate - SDRAM) - 400 MT/s & max 3,2 GB/s
4. Tools apa yg diperlukan? - DDR 2 - 800 MT/s & max 6,4 GB/s
5. Apakah dibutuhkan expertise? - DDR 3 - 1.600 MT/s & max 14,9 GB/s
Kind of documentation: Photography, notes, chain of custody - DDR 4 - 3,200 MT/s & max 21 GB/s
- Graphics Double Data Rate Synchronous Dynamic RAM (GDDR SDRAM)
Chain of Custody 101
1. Buktinya ga bisa sembarang semua bukti dipakai, hrus memenuhi syarat, salah satunya Computing Environments -> Pada suatu computing environment dengan computing
chain of custody yang jelas tanpa ada yg kurang environment yang lain tentunya tidak sama, pasti ada perbedaan di masing-masing computer,
2. Semua proses hrus dicatat (cth. Dalam transportasi komputer bukti, mobile berhenti berapa seberapa besar networknya dan bahkan kompleksitas sistemnya. Environment sendiri bisa kita
kali dicatat, setiap kali bukti berpindah tangan, lokasi, smua dicatat) bagi ke 4 macam, stand-alone, networked, mainframe, dan cloud
3. Terkumpul di lab, dikeluarin untuk dianalisis, dimasukin lagi untuk disimpan, dll
4. Kalau 1-3 di atas ga terpenuhi, bukti didismissed karena dianggap kurang oke Cloud Computing -> Model Computation yang memungkinkan akses ke sumber daya computer.
Sumber daya ini disediakan oleh penyedia layanan cloud dan dapat diakses secara fleksibel.
Evidence Marking 101 Modelnya ada 3:
1. “Link” Pertama -> org yang nemuin + collect bukti 1. IaaS (Infrastructure as a Service)
2. Buktinya bakal ditandai dengan Initial, tanggal, case number, location, collection by, desc -> Menyediakan layanan infrastruktur komputer dasar, seperti server virtual, storage virtual,
umumnya ditulis pake spidol permanen jaringan virtual dan virtual machine. Contoh paling simplenya VPS.
3. Orang yg nemuin + collect bakal ditanya utk identifikasi dari sisi bukti 2. PaaS (Platform as a Service)
Menyediakan platform yang difasilitasi dengan tools pengembangan yang mencakup alat
Contoh Faktor penambah Kompleksitas Digital Forensic: untuk melakukan build, test dan run software. Contohnya adalah Google Apps Engine &
- Penggunaan Wifi Publik Heroku.
- Penggunaan media komunikasi yang membuat komunikasi antar pesertanya sulit dilacak 3. SaaS (Software as a Service)
(contoh Telegram) Simplenya adalah menyediakan layanan yang sudah siap pakai alias sudah jadi dan user
- Penggunaan VPN (Virtual private Network) tinggal menggunakannya saja, contohnya ada Gmail & Microsoft 365.
5 6
7 8
- NTFS = Cluster ( seperti penyimpanan buku di perpustakaan lama) , defragment - Super Block, berisi essential information tentang file system nya.
menggeser tiap sektor agar menjadi rapat disusun rapih untuk mempercepat - Group Descriptors, berisi tentang informasi tambahan, seperti available free block,
pembacaan hardisk inodes.
- Block Bitmaps, track data block mana yang sedang digunakan dan yang mana yang
- 1 hardisk = bisa banyak cluster (tergantung size dr HDDnya)
free. Begitu juga allocating dan delocating data blocks.
- 1 cluster = 4 sector - Inodes Bitmaps, Hampir sama dengan block bitmaps, tapi penggunaannya untuk
- Sector -> buat naro data byte dri file (512 bytes) inodes
- Topology - Inodes:
- Inodes merupakan struktur data yang merepresentasikan file dan juga
directory.
- Setiap node memiliki metadata, isinya bisa jadi permission, timestamps, dll
- Dikumpulkan jadi inodes table.
● NBS = buat store info dari volume layout sama structure file systemnya - Data Blocks:
● MFT = essential infor buat retrieve file (ex: file attributes) - Available storage space dibagi ke data blocks ini
- Biasanya 1 block store 4kb data
● FSS = data yang ga masuk di MFT
- Yang handle storing data
● MFTC = copies dari recovery related key records (portion ini penting buat recovery)
2. Macintosh (MacOS)
- File System: Hierarchical File System (HFS+)
- Maximum Volume Size: 2TB
- Maximum supported file size: 2GB
3. Linux
- File system: Fourth Extended File System (EXT4)
- Maximum Volume Size: 1 EiB
- Maximum supported file size: 16 Tebibytes (TiB)
- Dia defragment sendiri tapi rada dellay stelah file deletion Topology Ext4
investigasi kasus kasus intrusi (illegal access) Local System S-1-5-18 Service account dari OS
13 14
Guest S-1-5-21domain-501 Orang yg ga punya individual acc - Windows cuma show 15 file terakhir yang diakses
- C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Recent
KRBTGT S-1-5-21domain-502 Service Account yg dipakai Key Distribution b. Dekstop Folder → user taruh aplikasi yang oenting dan sering dipakai
Center (KDC) service c. My Documents → files, music, pictures, user-created files
d. Temp Folder
Domain Admins S-1-5-21domain-512 Domain Admin itu member yang Admin
group dh join di domain Dia nyimpen file sementara buat :
- Program install
Domain Users S-1-5-21domain-513 User account dalam sebuah domain - File download
- Program access to file
Domain Guests S-1-5-21domain-514 Global group yang cmn punya 1 member
(domain’s built-in guest account) - C:\Documents and Settings\<username>\Local Settings\Temp
Hibernation File -> dipakai windows ketika lagi hibernate mode (Hiberfil.sys) MPEG 00 00 01 BA ␀␀␁³
OR
Pada file, tentunya kalian udah tahu belakangan .pdf .docx .php. Js .py, etc ini namanya file 00 00 01 B3
extensions, yang secara kita (manusia) lihat, tahu isinya kurang lebih apa, tapi ada lagi namanya exe, dll, mui, sys, scr, cpl, 4D 5A MZ
File Signatures ini adalah bagaimana komputer itu tahu file ini itu file apa sebenarnya, cara ocx, ax, iec, ime, rs, tsp, fon,
checknya cukup simple bisa dengan command “file name.png” misalkan. efi
Jadi, basic File Ofuscation technique itu seringnya renaming files + extensionnya. Tapi, hal ini bisa
dicek dengan file signature analysis, yg ngebandingin beberapa bytes pertama dari file dan file Metadata
signature ini harus matching dengan extension. -> data about data
-> Contains:
Magic Number (File Signature) a. Author
Pada file, jika kita lihat secara hexadecimal, di beberapa hex awal akan ada hex khusus yang b. Last saved by
mendefinisikan sebuah file, ini disebut magic number, dengan extension yang sama, jika hex c. Company
berubah maka komputer tetap akan membaca file sesuai dengan extensionnya dan signaturenya, d. Created time
nah disini nih bahayanya. e. Modified time, etc.
File Ext. Hex ASCII I. MsWord Metadata
II. PDF File Metadata
DOC, DOT, PPS, PPT, XLA, D0 CF 11 E0 A1 B1 1A E1 ÐÏ␑ࡱ␚á III. Picture Metadata
XLS, WIZ
-> Exif (Exchangeable Image File Format) : .jpg, .tif, .wav (audio)
DOC [512 byte offset] [512 byte offset] -> Data:
EC A5 C1 00 ì¥Á - make and model camera
- photo specifications
XLS [512 byte offset] [512 byte offset] - data and time
FD FF FF FF nn 00 ýÿÿÿ..
or or - geolocation (lang & lat)
[512 byte offset] [512 byte offset] - camera owner & number info, serial number
FD FF FF FF nn 02 ýÿÿÿ.. IV. GPS Data
or or -> East (+), West (-), North (+), South (-)
[512 byte offset] [512 byte offset] -> DMS (Degree, Minutes, Seconds)
17 18
21 22
XSS
● 10.25.114.27 - - [07/Dec/2003:00:06:13 -0500] "GET ●
/cgibin/webcgi/xfind.cgi?searchterm=%253Csc%2572%2569pt%253Ealert%2528%2527cars%252 ● 108.162.216.73 - - [22/Oct/2014:21:54:49 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
7%2529%253C%252Fscr%2569%2570t%253E&pass=&submit=Enter+Website HTTP/1.1" 200 108.162.216.73 - - [22/Oct/2014:21:54:49 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
455 "http://www.inttraage.com/trans_web/html" "Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-us) 103.22.200.207 - - [22/Oct/2014:21:54:49 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
AppleWebKit/124 (KHTML, like Gecko) Safari/125" {<script>alert(' cars')</script} 108.162.216.73 - - [22/Oct/2014:21:54:49 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
● "192.168.4.25 - - [22/Dec/2016:16:31:18 +0300] "GET 103.22.200.207 - - [22/Oct/2014:21:54:50 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
/index.php<img<!--%20-->%20src=x%20onerror=alert(9213);//><!--%20-->/component/search/ 108.162.216.73 - - [22/Oct/2014:21:54:50 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
HTTP/1.1” 404 586 "http://192.168.4.161/DVWA" "Mozilla/5.0 (Windows NT 6.1; WOW64) 103.22.200.207 - - [22/Oct/2014:21:54:50 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
AppleWebKit/537.21 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.21"" {<img<!-- --> src=x 108.162.216.73 - - [22/Oct/2014:21:54:50 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
onerror=alert(9213);//><!-- -->/component/search/ HTTP/1.1} 103.22.200.207 - - [22/Oct/2014:21:54:50 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
● "192.168.4.25 - - [22/Dec/2016:16:39:38 +0300] "GET 108.162.216.73 - - [22/Oct/2014:21:54:50 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
/index.php/component/search/?searchword=ul.menuu0022onmouseover=kzsy(9660)u0022&orde 108.162.216.73 - - [22/Oct/2014:21:54:51 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
ring=category&searchphrase=any&areas[0]=categories HTTP/1.1" 200 3278 103.22.200.207 - - [22/Oct/2014:21:54:51 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
"http://192.168.4.161/DVWA" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.21 108.162.216.73 - - [22/Oct/2014:21:54:51 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
(KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.21"" 108.162.216.73 - - [22/Oct/2014:21:54:51 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
● "192.168.4.25 - - [22/Dec/2016:16:36:08 +0300] "GET 103.22.200.207 - - [22/Oct/2014:21:54:51 -0400] "POST /wp-login.php HTTP/1.1" 200 3467 "-" "-"
/DVWA/vulnerabilities/fi?page='\"()%26%25<acx><ScRiPt%20>H5NJ(9347)</ScRiPt> HTTP/1.1"
301 736 "http://192.168.4.161/DVWA" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.21
(KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.21""{&%<acx><ScRiPt
>H5NJ(9347)</ScRiPt> }
● "192.168.4.25 - - [22/Dec/2016:16:19:08 +0300] "GET
/index.php/component/content/?format=feed'\"()%26%25<acx><ScRiPt%20>p3oZ(9994)</ScRiPt>
&type=rss&view=featured HTTP/1.1" 500 2089 "http://192.168.4.161/DVWA" "Mozilla/5.0 (Windows
NT 6.1; WOW64) AppleWebKit/537.21 (KHTML, like Gecko) Chrome/41.0.2228.0
Safari/537.21""{&%<acx><ScRiPt >p3oZ(9994)</ScRiPt>}
● "192.168.4.164 - - [22/Dec/2016:15:19:15 +0300] "GET /DVWA/
HTTP/1.1”'\"@--></style></scRipt><scRipt>netsparker(0x000008)</scRipt>" 200 1964
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/41.0.2272.16 Safari/537.36""
{@--></style></scRipt><scRipt>netsparker(0x000008)</scRipt>}
BruteForce!!!!!!!!!!!
23 24
INTRUSION PROCESS AND MALWARE
ANALYSIS
What is intrusion?
Akses yang tidak sah, atau akses ilegal ke sebuah sistem komputer.
25 26
Botnets - P2P
Lebih flexible untuk command dan kontrolnya, sehingga botnet master bisa dimana saja.
Robust and redundant infrastructur jadi susah untuk di takedown
Drive by Download
● Download of malicious software via web browsing without the user consent or knowledge
● Bisa lewat hidden JS, Redirects, Malicious iFrame, ActiveX
● Legitimate website yang di hack dan dropping malware ke visitor
27 28
9. Network Data Analysis Communication Protocols
-> mostly mengenai identifikasi serangan dari sisi jaringan ● TCP (Transmission Control Protocol)
Ex. Malware attack, ddos, arp spoofing, etc. - Connection oriented, kalau connection tidak ada, maka paket data tidak terkirim
- Error-checking untuk ensure data integrity
Seluruh data di jaringan itu merupakan transaksi data yang bisa dicapture dan dijadikan bukti, - Minusnya lebih lewat dari UDP
karena HTTP Request aja bisa menghasilkan entry data yang banyak (DNS server log, router, Ex. HTTP, HTTPS, FTP, SMTP, etc.
firewall, IDS, Web server log, etc), juga network attack mungkin generate log transaksi yang ● UDP
banyak di berbagai network devices, servers, dan juga software programs yang bakal - Connectionless
mengandung bukti bukti kasus - Gada error-checking atau verification delivery atau integrity dari si paket data
- Lebih cepat dari TCP
IP Addressing Ex. DNS, DHCP, TFTP, SNMP, VOIP
-> Set numerik dari angka” yang dipakai untuk identifikasi sebuah perangkat yang terkoneksi ke Ps. Paket data = Paket content + Paket Hidden (Flag + Sequence number)
jaringan (internet)
● IPv4 TCP Packet Flags
Ex. 72.51.39.55 ● SYN (Synthesize) -> initiates connection
2^32 available addresses = 4.294.967.296 ● ACK (Acknowledge) -> acknowledge data yang diterima
● IPv6 (Jaga jaga kalau ipv4 habis) ● FIN (Finish) -> close connection
Ex. 2001:0D8B:AC10:FE01 ● RST (Reset) -> abort connection sebagai response error
2^128 available addresses ● PSH (Push) -> transfer data
● URG (Urgent) -> set priority status
Beberapa IP itu ada yg untuk Private network, di mana mereka ga ngelead ke manapun di
internet. IP Private penting untuk dikenali ketika lagi bekerja dengan log data supaya tau lagi THREE-WAY HANDSHAKE
dealing dengan traffic internal atau external. Ada juga loopback IP Address yang bakal selalu point -> TCP Communication initiation. Kenapa? Untuk ensure kedua systems itu open and ready to
back kepada sistemnya sendiri si user (127.0.0.1 atau localhost) communicate
● X ngirim SYN ke Y utk ngecek Y nyala apa ga
● Y memgirim X ACK sebagai respon SYN dan mengirimkan SYN kepada X untuk ngecek X
apakah masih nyala
● X ngirim ACK kepada Y sebagai repspon
29 30
Ex. Supported
20 - FTP 68 - DHCP Client 3389 - RDP 407 - Proxy Auth Required 423 - Locked 506 - Variant Also Negotiates
21 - FTP Control 69 - TFTP 5800 - VNC HTTP
408 - Request Timeout 424 - Failed Depedency 507 - Insufficient Storage
22 - SSH 80 - HTTP 5900 - VNC
23 - Telnet 110 - POP3 6666 - IRC 409 - Conflict 425 - Too Early 508 - Loop Detected
25 - SMTP 443 - HTTPS 6667 - IRC
53 - DNS 2773 - SubSeven 31337 - BackOrifice 410 - Gone 426 - Upgrade Required 510 - Not Extended
67 - DHCP Server 3127 - MyDoom 411 - Length Required 428 - Precondition Required 511 - Network Auth Required
Possibile Malware Port: 2773, 3127, 31337
412 - Precondition Failed 429 - Too Many Requests
HTTP Protocol (Hypertext Transfer Protocol)
413 - Payload Too Large 431 - Req Header Fields Too
-> Biasanya digunakan webservers untuk komunikasi (daily internet surfing) Large
● GET - requests specified resources/ data
● HEAD - identical to GET, except server tidak harus respond dengan message body
Domain Name System (DNS)
● POST - submits data untuk diproses
-> Computer kan komunikasi via numeric IP Address, tpi bagi manusia, pasti sulit. Jadi DNS ini
● DELTE - requests server delete specified resources/ data
solved itu by replacing IP Addresses with alphabetic domains.
Ex. 8.8.8.8 - www.google.com
List of HTTP Status code
-> DNS Server itu bertanggung jawab untuk matching domains ke IP Addressesnya masing”. DNS
100 - Continue 204 - No Content 302 - Found Server bisa query server name untuk cari matching IP Addressnya atau DNS Server itu bisa
cache IP Addressnya domain di local system mereka.
101 - Switching Protocols 205 - Reset Content 303 - See other
102 - Processing 206 - Partial Content 304 - Not Modified DNS Cache Poisioning
-> kondisi dimana seorang hacker nyerang server DNS sehingga setiap request DNS diredirect ke
103 - Early Hints 207 - Multi Status 305 - Use Proxy
tempat lain (IP yang benar diganti menjadi malicious IP Address)
200 - OK 208 - Already Reported 306 - Unused
Network Sniffers
201 - Created 226 - IM Used 307 - Temporary Redirect -> software yang captures semua data yang ditransfer lewat jaringan, ada:
202 - Accepted 300 - Multiple Choices 308 - Permanent Redirect ● Time/ Date
● Source IP Address
203 - Non-Authoritative 301 - Moved Permanently ● Destination IP Address
Info ● Network Protocol
● Packet content (Username, Password, Files, html)
-> bisa memudahkan untuk solve network attack tapi perlu dinotes bahwa ini sangat besar
400 - Bad Request 414 - URI Too Long 451 - Unavai for Legal
Reasons Network Scanners
-> Dipakai oleh hackers + security professionals untuk identify vulnerabilities
401 - Unauthorized 415 - Unsupported Media 500 - Internal Server Error -> Ngirim packets ke ports berbeda dan coba untuk identifikasi ports yang terbuka
Type -> Kebanyakan bisa scan large blocks IP Address terus-menerus. Attacker bisa execute scanning
402 - Payment Required 416 - Range Not Satisfiable 501 - Not Implemented dan tunggu ada vulnerability apa yang teridentifikasi
Ex. Wireshark
403 - Forbidden 417 - Expectation Filed 502 - Bad Gateway
405 - Method not Allowed 421 - Misdirected Request 504 - Gateway Timeout
406 - Not Acceptable 422 - Unprocessable Content 505 - HTTP Ver Not
31 32
7 OSI Layer TCP/IP Model Wireshark Layer
7 - Application Layer 4 - Application Layer 5 - Application Layer
6 - Presentation Layer
5 - Session Layer
4 - Transport Layer 3 - Transport Layer 4 - Transport Layer
3 - Network Layer 2 - Internet Layer 3 - Network Layer
2 - DataLink Layer 1 - Network Access Layer 2 - DataLink Layer
1 - Physical Layer 1 - Physical Layer
33 34
Wireshark
● Physical = Transmit/ Receive raw binary bits dari physical medium (ex. Ethernet cable)
● DataLink = Transmit/ Receive data frame dari 2 connected nodes, ada 2 components (MAC
+ LLC)
● Network = Transmit/ Receive packet dari 1 network ke network lain (IP)
● Transport = Transmit/ Receive data dari 1 device ke yang lain pakai port number (TCP
UDP)
● Application = Layer yang dekat ke user (HTTP, FTP, SNMP, Telnet, DNS)
35 36
37 38
39 40
^Filter: icmp
41 42
OS INFORMATION
[V2] vol.py -f /path/to/file imageinfo
[V2] vol.py -f /path/to/file kdbgscan
[P3] vol.py -f /path/to/file windows.info
Kalo disini, V2 itu bisa kasih info yang lebih banyak terutama di kdbgscan kalo g ada profile yang
ditemuin, namun P3 bagusnya adalah dia lebih cepet sama bisa kasih minor/major OS Versions
dan 32/64 determination (bit)
Contoh ngab (imageinfo, yg vol3 mirip2)
PROCESS INFORMATION
[V2] vol.py -f /path/to/file --profile <profile> pslist [P3] vol.py -f /path/to/file windows.pslist
[V2] vol.py -f /path/to/file --profile <profile> psscan [P3] vol.py -f /path/to/file windows.psscan
[V2] vol.py -f /path/to/file --profile <profile> pstree [P3] vol.py -f /path/to/file windows.pstree
43 44
Psscan -> DISPLAY PROCESS YANG MUNGKIN SUDAH TERMINATE/INACTIVE, GUNA MEMDUMP
BANGET BUAT DISCOVER ROOTKIT MALWARE TYPE [V2] vol.py -f /path/to/file --profile <profile> memmap -p <PID> (STEP 1)
[V2] vol.py -f /path/to/file --profile <profile> memdump -p <PID> --dump-dir=”/path/to/dir” (STEP 2)
[P3] vol.py -f /path/to/file -o /path/to/dir windows.memmap –dump –pid <PID> (INSTAN)
Kalau di V2 alangkahbaiknya di liat dulu di PID itu ada memroy apa aja yg bisa diakses, baru di
dump, jadi butuh 2 step, kalo di P3 mah tabrak langsung kata gw, Contohnya ngab
Memmap
Psxview-> Ngelist semua process apakah ke detect atau ga, KALO PSLIST & PSSCANNYA
FALSE, BERARTI ITU HIDDEN PROCESS, ALIAS DIA BERUSAHA SEMBUNYI (90%
MALWER)
Memdump
45 46
[V2] vol.py -f /path/to/file --profile <profile> netstat [P3] vol.py -f /path/to/file windows.netstat
Khusus buat XP/2003 Spesific, di volatility 3 ga ada
[V2] vol.py -f /path/to/file --profile <profile> connscan
[V2] vol.py -f /path/to/file --profile <profile> connections
[V2] vol.py -f /path/to/file --profile <profile> sockscan
[V2] vol.py -f /path/to/file --profile <profile> sockets
DLLDUMP CONTOHNYA
[V2] vol.py -f /path/to/file --profile <profile> dlldump -D /path/to/dir Netscan-> BUAT SCANNING TCP ENDPOINT, LISTENER, UDP ENDPOINT DAN LISTENER,
SUDAH BISA BEDAIN IPv4 IPv6
CMDLINE Connections -> Buat list connection yang “aktif” saat memory di dump (tcp)
[V2] vol.py -f /path/to/file --profile <profile> cmdline
[V2] vol.py -f /path/to/file --profile <profile> cmdscan
[V2] vol.py -f /path/to/file --profile <profile> consoles
[P3] vol.py -f /path/to/file windows.cmdline
Bedanya kurleb kek gino:
V2 defaultnya kasih Process Name, PID, cmd
Cmdscan -> kasih aplikasi, flags, handler
Connscan-> Buat list connection dari connections yang sudah terminated & masih aktif
Consoles -> kasih C:\ listing, original tittle, screen position, command history
(kadang suka false-positive)
P3 defaultnya cuma kasih PID, Process name, argos
CONTOHNYA
Sockets-> Liat apakah ada sockets yang terbuka buat protokol apapun TCP,UDP,RAW,dll
47 48
Sockscan-> seperti connscan, dia bisa liat artifacts dari sockets yang sudah ada trus di MALFIND
terminate di dumpnya (ini less false-positive) [V2] vol.py -f /path/to/file --profile <profile> malfind
[P3] vol.py -f /path/to/file windows.malfind
Ini itu sebenernya guna buat nemuin injectable dll/code yang ada di user mode memory, biasanya
berdasarkan karakteristik contohnya VAD Tag dan page permissionnya
FILESCAN
[V2] vol.py -f /path/to/file --profile <profile> filescan
[P3] vol.py -f /path/to/file windows.filescan
Dengan option ini, kita memungkinkan untuk melihat file yang ada / aktif saat dump dibuat,
hebatnya lagi malwer ROOTKIT kalo nyembunyiin file, masih bisa di liat kalo kita pake option ini.
CONTOH
DLL Dynamic Link Library (DLL), adlaah sesuatu file non-executable yang
digunakan untuk menyimpan data-data yang diperlukan oleh apps
Spyware Malware yang suka ngestalk, didalem kategori ini ada rootkit, adware,
trojan, cookie traker
Worms Seperti namanya ulat, dia itu seringnya attack memory/hard drive, dan dia
nyebar via computer netwrok yang terkoneksi 1 dengan yang lain
49 50
● Volatility Commands:
Memory Forensic Command Function
● Brief History Memory Analysis
○ 1990an muncul ide capture memory, tapi cuman bisa string search dan susah di ngertiin. profile display profile (default: Windows XP), butuh specific flag klo
○ 2005 DFRWS bikin “Memory Analysis Challenge” bkn default
■ Memparser dibuat oleh Chris Betz
imageinfo display key properties dari memory imagenya
■ Tool pertama yang bisa identifikasi memory structure untuk analysis forensik
■ Process lists, DLLs, PIDs
imagecopy convert crashdump, hibernation file, or live firewire session to
○ 2007 Aaron Walters dan Nick Petroni release Volatility
a raw memory dump capable of analysis
■ Tool open source yang bisa analyze dan beri pengertian terhadap memory structure
Windows (XP). userassist lists contents of the NTUSER.DAT UserAssist registry key,
○ 2011 Volatility 2.0 di release showing programs executed by specific users
■ Lebih banyak capabilities, tambahan plugin dan bisa digunakan untuk platform
lainnya. hashdump Extract domain password hashes from SYSTEM and SAM
registry key
● Kenapa Memory Analysis Meledak?
○ 2003 - 2006 Rootkit lebih terkenal dan kuat connections prints list of open TCP connections
■Malware lebih kuat dan bagus karena codenya bisa ngumpet di Windows API dan
susah di trace kalau pakai forensic dead drive analysis connscan scans for TCP connection objects (previously closed)
■ Beberapa malware cuman ada di memory jadi kalo pc shutdown semua trace hilang.
dllllist prints list of loaded DLLs for each process; great for
○ Memory Analysis bantu forensic analysis karena bisa liat kernel level processes, jadi
malware udah gak bisa ngumpet identifying dll injection attacks
51 52
2008
Zeus: Identifying Processes
malfind finds hidden and injected code in user mode memory - Dengan command pslist, terlihat bahwa PID 856 itu punyanya “svchost.exe” dengan alamat
Notes: memory “0x80ff88d8”
-p buat specify process - Parent processnya itu “services.exe”, yang mungkin legitimate karena dia yg start semua windows
-D buat dump injected code to hard drive service yang lainnya
- Penggunaan printkey
- Winlogon key nunjukkin di userinit valuenya ada “sdra64.exe” (known as Zeus executable)
Cari orangnya pke tools kyk ZeusTracker, Network Whois, atau Maxmind Geolocation
53 54
● Yara Introduction
Zeus: Identifying Injected Code ○ Yara dipake buat identify dan classify malware families
- Penggunaan malfind buat cari hidden or injected code in user mode memory base ○ Yara signature (Text strings (ASCII & Unicode), Hex strings, Regex, Wildcards) identify
- Nah ketemu 2 injected code locations di svchost:
karakteristik base code buat cari unknown processes untuk mengetahui malicious
- Satunya ada MZ (executable) header - sangat suspicious
property
- -D extracts si injected executablenya ke hard drive buat di analisa
55 56
11. Malware Dynamic Analysis FLAG DECIMAL VALUE
Advantages Drawbacks
Reset (RST) 4 -> terminate connection TCP kalo
- Ga perlu programming expertise - Bbrp malware bisa ngedetect lu ada yg something wrong sm
- Lebih efektif buat analyzing malicious files ngejalaninnya di VM ato kg (VM aware) connectionnya ato
- Pas diexecute, analyst bisa monitor (butuh buat setup bare metal box) conversationnya ga sharusnya
malicious behaviornya in realtime - Malware bisa aware sm debugging ato ada ato servicenya ga acc
monitoring tools
requestnya
- Beberapa functionality kyk command
arguments tu juga bisa ada yg ke hide
Synchronization (SYN) 2 -> mau mulai membangun
- Mungkin tidak behave seperti yg diinginkan
connection
OSI layer
● physichal layer → lewat eth0 ato wifi brp
● data link → tentang packet headernya
● network → ip addressnua a[a
● transport → protocolnya apa
● application → pake app apa
Address Resolution Protocol ARP spoofing adalah serangan yang mengirimkan paket ARP palsu atau
paket ARP yang sudah di modifikasi untuk meracuni ARP cache table korban.
arp spoofing itu apa? buat ganti isi ip table dalam router buat nganter packet tanpa broadcast buat
switching ke hub agar packetnya jadi terbroadcast dari bisa masuk ke komputer hackernya tapi semisal
nyampe ke komputer hacker pun belum tentu bisa dibaca karena adanya HTTPS.
57 58
time points. Any time information indicating a date before this is falsified, either intentionally Or as a
12. Automating Analysis consequence of retaining original times during an archive extraction.
PyFlag
Inferred Times
Python-based forensic and log analysis GUI created by Michael Cohen and David Collett.
Advantages : In many investigations, absolutely granular time points for data of interest may not be available or
- Support unified examination of disparate data types often encountered may be incorrect or misleading. If this is the case, inferred time may be the most accurate time
- Simple karena dia web-based and database application available to you. Generally this will apply to deleted data. Data that have been deleted will either
have no directly associated metadata structure or have a metadata structure that is tied only
loosely to actual data content. Under these circumstances, it may still be able to infer additional
Automating Artifact Extraction temporal information.
One of the constant challenges of forensic analysis is the amount of setup required before true
analysis can be performed. If you are simply looking to identify and extract a specific file type, you
still need to identify the partitions on image, identify the file systems, access their contents, locate Embedded Times
files in question, and so on. The majority of this preliminary work is not interesting and not directly
relevant to the purpose of the exam. The goal of automating artifact extraction is to reduce the File content may contain another source of time information as well: embedded inferred time. As an
amount of setup required before real work can begin. example, many PDF files will contain the name and version of the software used to generate them.
The release date of this version of the software used to generate the document is the earliest date
that the file could have existed. When examining office documents that may be of questionable
Timelines veracity, the existence of printer make and model can be used to create a timeframe in which the
One of the constant challenges of forensic analysis is the amount of setup required before true document must have been printed.
analysis can be performed. If you are simply looking to identify and extract a specific file type, you
still need to identify the partitions on image, identify the file systems, access their contents, locate
files in question, and so on. The majority of this preliminary work is not interesting and not directly Periodicity
relevant to the purpose of the exam. The goal of automating artifact extraction is to reduce the
amount of setup required before real work can begin. Another concept useful in the analysis of temporal information is periodicity. Periodicity refers to the
rate at which a given event or activity recurs. This is sometimes referred to as “frequency” but
frequency can also refer to how often something occurs (“four times a day”) as opposed to
Relative Times periodicity, which refers explicitly to the time that passes between repeated events. Periodicity is a
We can extend our understanding of timelines by thinking about four different types of relative useful signal when analyzing time data related to backdoor traffic. Most backdoor programs have a
times. We use relative times to discuss the relationship of one event or time point to another event highly fixed period for beacon traffic back to their controllers. Unfortunately, many Benign
or time point. There are three relative times to consider: before, after, and during. Any given time auto-update programs also share this same characteristic. It should not be surprising then that
information can be referenced in relation to another using these time descriptions. periodicity can be used to classify automated traffic versus human traffic.
59 60
Digital Forensic with Autopsy
Although the Autopsy browser is based on The Sleuth Kit, features of Autopsy differ when using the
Windows version compared to the Linux version. Some of the official features offered by The Sleuth
Kit and Autopsy 2.4 in Kali Linux including : • Image analysis: Analyze directories and files
including sorting files, recovering deleted files, and previewing files.
• File activity timelines: Create timelines based on the timestamps of files, when they were
written, accessed, and created.
• Image integrity: Create MD5 hashes of the image file used, as well as individual files
• Hash databases: Match the digital hashes or fingerprints of unknown files (such as suspected
malicious .exe files) against those in the NIST National Software Reference Library (NSRL).
• Events sequencer: Display events sorted by date and time
• File analysis: Analyze the entire image file to display directory and file information and
contents.
• Keyword search: Allows searching using keywords and predefined expression lists.
• Metadata analysis: Allows the viewing of metadata details and structures of files that are
essential for data recovery.
• Parsing data and indexing: Places a virtual mask over the actual evidence. This allows views
for investigators to run queries without altering the "source data" or evidence.
• Report generating: Allows the compilation of findings into a user-friendly report.
61