Penulis Topik: Shellcode  (Dibaca 1379 kali)

Offline descrates

  • Pro500
  • ******
  • Tulisan: 634
  • Reputation: 5074
    • Lihat Profil
Shellcode
« pada: Mei 17, 2017, 02:19:34 PM »
apa itu shellcode? mudahnya potongan code "binary" yang work
yang penting itu

misal untuk process protect windows x86 (gw ambil dari internet)

#include <windows.h>
#include <stdio.h>
 
unsigned char Shellcode[] = {
  0x60, 0x9c, 0x54, 0x5e, 0xfc, 0xe8, 0x82, 0x00, 0x00, 0x00, 0x60, 0x89,
  0xe5, 0x31, 0xc0, 0x64, 0x8b, 0x50, 0x30, 0x8b, 0x52, 0x0c, 0x8b, 0x52,
  0x14, 0x8b, 0x72, 0x28, 0x0f, 0xb7, 0x4a, 0x26, 0x31, 0xff, 0xac, 0x3c,
  0x61, 0x7c, 0x02, 0x2c, 0x20, 0xc1, 0xcf, 0x0d, 0x01, 0xc7, 0xe2, 0xf2,
  0x52, 0x57, 0x8b, 0x52, 0x10, 0x8b, 0x4a, 0x3c, 0x8b, 0x4c, 0x11, 0x78,
  0xe3, 0x48, 0x01, 0xd1, 0x51, 0x8b, 0x59, 0x20, 0x01, 0xd3, 0x8b, 0x49,
  0x18, 0xe3, 0x3a, 0x49, 0x8b, 0x34, 0x8b, 0x01, 0xd6, 0x31, 0xff, 0xac,
  0xc1, 0xcf, 0x0d, 0x01, 0xc7, 0x38, 0xe0, 0x75, 0xf6, 0x03, 0x7d, 0xf8,
  0x3b, 0x7d, 0x24, 0x75, 0xe4, 0x58, 0x8b, 0x58, 0x24, 0x01, 0xd3, 0x66,
  0x8b, 0x0c, 0x4b, 0x8b, 0x58, 0x1c, 0x01, 0xd3, 0x8b, 0x04, 0x8b, 0x01,
  0xd0, 0x89, 0x44, 0x24, 0x24, 0x5b, 0x5b, 0x61, 0x59, 0x5a, 0x51, 0xff,
  0xe0, 0x5f, 0x5f, 0x5a, 0x8b, 0x12, 0xeb, 0x8d, 0x5d, 0x68, 0x49, 0x47,
  0xc6, 0x62, 0xff, 0xd5, 0x50, 0x6a, 0x00, 0x68, 0xff, 0x0f, 0x1f, 0x00,
  0x68, 0xee, 0x95, 0xb6, 0x50, 0xff, 0xd5, 0x89, 0xc3, 0x6a, 0x00, 0x68,
  0x70, 0x69, 0x33, 0x32, 0x68, 0x61, 0x64, 0x76, 0x61, 0x54, 0x68, 0x4c,
  0x77, 0x26, 0x07, 0xff, 0xd5, 0x68, 0x44, 0x3a, 0x50, 0x00, 0x83, 0xec,
  0x04, 0x6a, 0x00, 0x8d, 0x44, 0x24, 0x04, 0x50, 0x6a, 0x01, 0x8d, 0x44,
  0x24, 0x10, 0x50, 0x68, 0x9a, 0x63, 0x6f, 0xda, 0xff, 0xd5, 0x6a, 0x04,
  0x53, 0x68, 0xdb, 0xf8, 0x3a, 0xd6, 0xff, 0xd5, 0x89, 0xf4, 0x61, 0x9d,
  0xc3
};
 
 
 
int main(int argc, char const *argv[])
{
    char* BUFFER = (char*)VirtualAlloc(NULL, sizeof(Shellcode), MEM_COMMIT, PAGE_EXECUTE_READWRITE);
    memcpy(BUFFER, Shellcode, sizeof(Shellcode));
    (*(void(*)())BUFFER)();
 
    printf("This process is protected !");
    getchar();
 
    return 0;
}

seberapa penting? ya paling tidak berguna kalo mau bikin lintas bahasa pemrograman
intinya kita kayak ambil template terus tempel-tempelin
kalo koleksi shellcodenya banyak kita jadi gak mikir
ini kayak pake C# ya, cuman C# ya gitu deh
TASKKILL /F /IM SMΔRTP.exe /T

Win7 32bit [kernel patch] --- 2x2,8GHz Intel --- 8GB RAM DDR3 --- 512MB 9600M GT NVidia --- Iron 15 beta --- Opera Mini Proxies

other OS: Lucid Puppy, XP SP2 [custom], XP SP3, Win7 64bit, Tails

Offline descrates

  • Pro500
  • ******
  • Tulisan: 634
  • Reputation: 5074
    • Lihat Profil
Re:Shellcode
« Jawab #1 pada: Mei 19, 2017, 07:04:29 AM »
nah kita lanjut ke step berikutnya, bagaimana bikin shellcode
buat lem tempel kita perlu bin2c, bin2vb, etc

    misal https://github.com/yomei-o/ppt_de_py/blob/master/src/bin2vb.c

1. comple terus diasm, reverse engineering, etc
     
     banyak banget dari ollydbg, sampai CFF explorer (bahkan IDAPro)
     silakan cari artikelnya

2. ngambil dari RAM

     (secara virus/worm kan kadang di RAM, dan sedikit yang bahas)
      untuk itu kita butuh alat namanya "memory viewer/RAM dumper"
      sedikit cerita alat buat ngeliatnya banyak banget buat jaman sekarang
      tapi kebanyakan bayar dari WinHex sampai Hview

      bahkan gw pernah dibanned gara-gara nggak kasih link donlot di forum sebelah
      pas itu gw cuman kasih clue "memview" doang soalnya
      jujur itu tool punya mcafee dan termasuk langka di internet
      ya boleh dibilang 11-12 sama punya radsoft xpt
      biar kata kuno tapi masih work (dan semoga mcafee baik hati kasih ke publik)

      karena nggak public ya mending pake aware sama kepentingan publik
      karena mcafee nggak banget maka rame-rame rikues ke HxD
      intinya biarpun agak tidak to the target paling tidak bisa "menyamai"
      dan akhirnya terwujud di HxD 2.00 (lama banget)

      https://mh-nexus.de/en/
      (liat di forumnya)

      setelah copy kita bisa oprek

3. waktunya jajalin
TASKKILL /F /IM SMΔRTP.exe /T

Win7 32bit [kernel patch] --- 2x2,8GHz Intel --- 8GB RAM DDR3 --- 512MB 9600M GT NVidia --- Iron 15 beta --- Opera Mini Proxies

other OS: Lucid Puppy, XP SP2 [custom], XP SP3, Win7 64bit, Tails

Offline descrates

  • Pro500
  • ******
  • Tulisan: 634
  • Reputation: 5074
    • Lihat Profil
Re:Shellcode
« Jawab #2 pada: Mei 19, 2017, 05:34:54 PM »
sedikit cerita, kompi buat test virus punya vendor AV, RAM-nya nggak gede
pake registry capture dan file capture dan kebanyakan winxp, hahaha
shellcode sama sekali bukan programming soalnya kita cuman copy-paste
demi secarik shellcode kadang buat ngeliat RAM kita perlu "dumper" yang mantap
tidak lain tidak bukan karena proteksi process yang suka bikin ribet
(kasus ketika pake cheat engine)

nah solusinya itu, biarpun rada brutal ya hajar, kayak windd buat harddisk
kalo gw suka pake belkasoft ramcapture, mungkin orang lain beda

TASKKILL /F /IM SMΔRTP.exe /T

Win7 32bit [kernel patch] --- 2x2,8GHz Intel --- 8GB RAM DDR3 --- 512MB 9600M GT NVidia --- Iron 15 beta --- Opera Mini Proxies

other OS: Lucid Puppy, XP SP2 [custom], XP SP3, Win7 64bit, Tails

Offline descrates

  • Pro500
  • ******
  • Tulisan: 634
  • Reputation: 5074
    • Lihat Profil
Re:Shellcode
« Jawab #3 pada: Juni 08, 2017, 10:13:10 AM »
kadang juga kalo beneran lagi males, biasanya kalo file packed by packer
kalo ngecrack lama juga kan dan kita cuma butuh shellcode doangan
nggak ada jalan lain kita perlu langkah yang cerdas, wkwkwk
kita butuh dumper, dari lordpe ampe zzzzzzz, banyak deh cari aja yang cocok
nah gunanya cuma buat unpacking secara "native" dan cepet
percaya nggak percaya sampai saat ini masih digunakan kok
meskipun pada kenyataannya banyak yang menerapkan anti-dump, anti-olly
tujuannya ya itu tadi biar nyusahin, salah satu yang terkenal adalah crinkler

TASKKILL /F /IM SMΔRTP.exe /T

Win7 32bit [kernel patch] --- 2x2,8GHz Intel --- 8GB RAM DDR3 --- 512MB 9600M GT NVidia --- Iron 15 beta --- Opera Mini Proxies

other OS: Lucid Puppy, XP SP2 [custom], XP SP3, Win7 64bit, Tails