buffer overflow.pdf

14
Buffer Overflow Written by r00tcreat0r Content: [email protected] Team: blinkhackergroup,MCA,op rohingya Thanks to: Drrat, n00b, adminkill3r, buglab, hardcore , gtone(hackerlammer) Fetalarray, scriptinjector Geetz: brb,nullbyte,bigboss(mmhu),Granze back,drdeath & all myanmar hackers

Upload: mg-aung-zin

Post on 27-Oct-2015

72 views

Category:

Documents


14 download

DESCRIPTION

About Buffer Overflow (myanmar)

TRANSCRIPT

Page 1: Buffer Overflow.pdf

Buffer Overflow

Written by r00tcreat0r

Content: [email protected]

Team: blinkhackergroup,MCA,op rohingya

Thanks to: Drrat, n00b, adminkill3r, buglab, hardcore , gtone(hackerlammer)

Fetalarray, scriptinjector

Geetz: brb,nullbyte,bigboss(mmhu),Granze back,drdeath & all myanmar hackers

Page 2: Buffer Overflow.pdf

FTP Server နဲ႔ Client

download ေတြ upload ေတြ လုပးေနၾကတယးဆုိတာ ေနစဥး ကြနးၿပဴတာသမာ့ေတြ လိုအပးခ္ကးပါ ..

ဒီအလုပးေတြကိ ုေဆာငးရြကးရနး FTP (file transfer protocol ) တစးခုမွာ server နဲ႔ client ဆုိၿပီ့ရွိမယး

Server က host ပဵုစ ဵdata ေတြကိ ုကိုငးထာ့တာ တပိုငး့ ေနာကးတစးခုက client က အဲံ data ေတြကိ ု

လွမး့ယူတာဆုိၿပီ ့server နဲ႔ client ဆုိၿပီ့ အပိုငး့နွစးပိုငး့ပါရွိမယး

FTP client တစးခ ုက server ကိုခ္ိတးဆကးလိုကးတဲ ံခါမွာ ပထမဆဵု့ လိုအပးခ္ကးက authenticate process

ကိ ုစတငးမွာပါ ..တခ္ိဳ႕ေသာ FTP server ေပၚမွာ set up လုပးထာ့ေပၚမူတညးၿပီ ့user / password

စတာေတြကိ ုေတာငး့ဆုိမွာၿဖစးပါတယး။

FTP client ဆုိတာ FTP server ကိ ုport 21 ကေနခ္ိတးဆကးၿပီ ့file ေတြ အတငး အခ္ ကိ ုလုပးတဲ ံ

Software ၿဖစးပါတယး.. GUI ရွိသလိ ုသူမွာ command line နဲ႔လညး့ရွိတယး

ftp GUI command လိုငး့နဲ႔ပဵုပါ

Page 3: Buffer Overflow.pdf

Buffer Overflow ဆိုတာ

Buffer Overflow ဆိုတာ ဟုိ့အရငးထညး့ကရွိခဲံတာ ခုထိ application , os နဲ႔ တၿခာ့ software

ေပါကးေနသညး ံvulnerability ကုိ exploit လုပးနုိငးတံဲနညး့ပါ ။

ခု FTP server ေပၚမွာ vulnerability ကုိ buffer overflow နဲ႔အေၿခခဵၿပီ့ရွငး့ၿပမွာၿဖစးပါတယး ။

Buffer Overflow ဆိုတံဲ Bof attacker ဟာ အၾကမ့း အာ့ၿဖငးံ user input ထညးံလုိ႔ရတံဲ remote

system ေတြကုိ တိုကးခိုကးတာကုိ ဆိုလုိပါတယး ။ Buffer ဆိုတာ buffer array ကေနလာတာၿဖစးၿပိ့

Buffer ဆိုတာက ရွငး့ဖို႔ stack ဆိုတာကစ ရွငး့ေၿပာရပါမယး ။ stack ဆိုတာ memory ထညး့က

ေနရာေလ့တစးခုၿဖစးတယး ။သူကုိၿမငးေအာငးၾကညးံမယးဆိုရငး

တဆငးံၿခငး့တတးသြာ့တယးလုိ႔လညး့ေၿပာလုိ႔ရနုိငးမယး last in first out ဆိုတံဲ LIFO

ပဵုစဵမ္ိဳ့နဲ႔သြာ့မယး

ခု ပဵုေလ့ကုိၾကညးံၾကညးပါ

Fig1. A က B ှငးလာတံဲ အခ္ိနးမွာ ဒုတိယေနရာေရာကးသြာ့ပါတယး B က လညး့ C ှငးလာတံဲခ္ိနးမွာ

ဒုတိယေနရာေရာကးသြာ့ပါတယး

Page 4: Buffer Overflow.pdf

Fig2. ဒါေပမယး ံstack ထညး့က data ၿပနးထုတးတံဲ အခါ C က အရငးဆုဵ့ထြကးသြာ့ရပါတယး ။

C ဆုိတံဲ array နဲ႔ B ဆိုတံဲ array ဆိုၿပီ့ရွိတယး

Page 5: Buffer Overflow.pdf

C မွာ C[3]={2,3,4}; ဆုိၿပီ့ data 2 3 4 ကုိ array ပဵုစဵနဲ႔သိမး့စဥး့ထာ့မယး

ဒါေပမယး ံdata 2 3 4 ထကးပိုၿပီ့ထညးံမိရငး array B ကုိ သြာ့ ထိခုိကးၿပီ့ data variable ေတြကုိ

ေနွာကးယွကး ဖ္ကးဆီ့မွူၿဖစးၿပီ့ program crash ၿဖစးနုိငးပါတယး ။ ဒါကုိ buffer overflow လုိ႔

ေခၚဆိုပါတယး ။

ဥပမာ ဆိုၾကပါဆို A ဆိုတံဲ array နဲ႔ B ဆိုတံဲ array မွာ B ရဲံ value က 1979

A ထညး့မွာ excessive အထညးံမွာ e ရဲံ ASII code က B ကုိသြာ့ေၿပာငး့တယး programmer

ေရ့သာ့ထာ့တံဲ 1979 ကေန 25556 သုိ႔ေၿပာငး့လဲသြာ့တယး ။

ဒီလုိ overflow ၿဖစးေစတံဲ variable ေတြက network တဆငးံ ဒါမွမဟုတး file ေတြကတဆငးံ

ဒါမွဟုတး command လုိငး့ေတြကေနလညး့ ၿဖစးတတးပါတယး ။ မေတားတဆ ၿဖစးတတးသလုိ

တမငးသကးသကး ဟကးကာေတြ ရဲ ံလုပးေဆာငးမွဴလညး့ၿဖစးနုိငးပါတယး ။

Page 6: Buffer Overflow.pdf

Buffer overflow နဲ႔ malicious shell code

Attacker တစးေယာကးက buffer overflow လုပးတဲ data ကုိ ထိနး့ခ္ဳပးနုိငးၿခငး့ၿဖငး ံprogram flow

တစးခုလုဵ့ကုိ ထိနး့ခ္ဳပးနုိငးတယး ။

သာမနး buffer overflow တစးခု ဟာ application တစးခု ကုိ crash ပ္ကးၿပာ့ ၿဖစးသြာ့ေစယုဵပါပဲ

ဒါေပမယး ံbuffer overfulow ကုိတဆငး ံခ ဵအသုဵ့ၿပဳၿပီ့ hacker တစးေယာကးအေနနဲ႔ေတာံ malicious

executed code ေတြကုိ system ထညး့ထညးံသြငး့သြာ့နုိငးတယး

သာမနးအာ့ၿဖငး ံhacker တစးေယာကးဟာ overflow ၿဖစးေနတံဲ buffer system တစးခုထည့း EIP

register (instruction pointer လုိေခၚၿပီ့ ေနာကး တစးခု ထပးလုပးမဲံ programming instruction

ကုိညြနးၿပေပ့တာကုိ ကုိငးထာ့တံဲေနရပါ) ေတြကုိ ခ္ိနး့သြာ့မွာပါ ။

Hacker ေတြ ဟာ application code ေတြေနရာမွာ သူတို႔ရဲ ံ shell code

ေတြကုိထညးံသြငး့ေရ့သာ့သြာ့မွာပါ။

EIP ေတြကုိ over right လုပးၿပီ့ သူတို႔ shell code ထာ့တံဲေနရာကုိညြနးၿပသြာ့မွာပါ ။။

ဒီေတာ ံapplication ကလညး့ ဟကးကာ ထညးံထာ့တံဲ EIP အရာံ malicious shell code ကုိ သြာ့ၿပီ့

အလုပးလုပးေစမယး ။ ေနာကးၿပီ့ shell code ကတဆငးံ system တစးခုလုဵ့ကုိ root access

ယူသြာ့နုိငးပါတယး ။

Page 7: Buffer Overflow.pdf

လကးေတြ႕ exploit ကုိစမး့သပးရမွာ က္ေနားတို႔ ဟာ backtrack နဲ႔ metasploit ဆိုတံဲ tool

ကုိသုဵ့သြာ့မွာၿဖစးပါတယး ။

Backtrack ကုိ vmware မွာအသုဵ့ၿပဳနုိငးၿပီ့ metasploit မွာ backtrack မွာ အသငးံအသုဵ့

ၿပဳနုိငးပါတယး ။

( လကးရွ ိtutorial မွာ အသုဵ့ၿပဳထာ့တာ backtrack 5 R3 ကုိအဓိကထာ့ၿပီ့

Vmware base အသုဵ့ၿပဳထာ့ၿခငးၿဖစးသညး။)

Metasploit ဆိုတာ penetration testing တြကးကုိ exploit development တြကးပါ သုဵ့လုိ႔ရပါတယး။

Python programming နဲ႔ေရ့ထာ့တာၿဖစးၿပီ့ Mac, linux , window စတာေတြ အတြကး ပါ run

လုပးလုိ႔ရတံဲ development မ္ိဳ့ပါ ။ ဒ ီtutorial မွာ metasploit ကုိ အေၿခခ ဵအသုဵ့ခ္ပဵုနဲ႔

vulnerability ၿဖစးေနတံဲ ftp server ကုိ exploit လုပးပဵုကုိရွငး့ၿပသြာ့မွာပါ ။ ေနာကးၿပီ့ target

system ကုိ window xp sp2 အေနနဲ႔အသုဵ့ၿပဳထာ့ပါတယး ။။

သငးခနး့ စာရဲံရညးရြယးခ္ကးက အရမး့အေၿခခဵက္တံဲ msf ရဲံအသုဵ့ၿပဳပဵုပါ ။

မညးသညး ံmalicious attempt မွမဟုတးသညးံအၿပငး private exploit အမ္ိဳ့အစာ့မဟုတးပဲ old

version ကုိသာ educational purpose အေနနဲ႔အသုဵ့ၿပဳထာ့သညး.. ဒါေပမယး.ံ. တခ္ိဳ႕ တခ္ိဳ႕ေသာ

malicious act ေတြတြကး… တာှနးမယူပါ..

Page 8: Buffer Overflow.pdf

Metasploit Metasploit မွာ cli and console, web interface , Gui စတံဲ interface မ္ာ့ၾကိ့ ရွိတံဲထညး့မွာ

console interface ကုိအဓိကေၿပာသြာ့မွာပါ ။

ေနာကးၿပိ့မိမိတုိ႔ တိုကးခဲံမယး target မွာ warftp 1.65 တငးထာ့တံဲ window xp

ကြနးၿပဴတာၿဖစးရပါမယး ။ ဒီေတာံ က္ေနား က္ေတာံ virtual lab ကုိယးတိုငး set up လုပးထာ့တာပါ

က္ေနား target ip ကေတာံ192.168.137.131 ပါ

Backtrack ရဲ ံterminal မွာ msfconsole လို႔ရိုကးလိုပါ

Page 9: Buffer Overflow.pdf

Exploit ေတြ ေပၚေအာငး show exploits လို႔ရိုကးပါ

Metasploit ထညး့မွာ exploit package ေတြကိုေတြ႕ရမွာပါ ။ မိမိတုိ႔ နဲ႔ သငးံေလွ္ားတဲ ံexploit package

ကိုအသဵု့ခ္၇မွာၿဖစးပါတယး

Windows/ftp/warftpd_165_user ကိုေတြ႕မွာ metasploit မွာအဓိက vulnerability ၿဖစးေနတဲ ံversion

မွနးဖို႔အေရ့ၾကီ့ပါတယး ။ ခ ုversion warftp 1.65 ကိ ုpenetrate လုပးမွာၿဖစးတယး ။

Page 10: Buffer Overflow.pdf

ေနာကးတဆငးံအေနနဲ႔ msf box ထညး့မွာပ ဲ

use windows/ftp/warftpd_165_user ဆိုတဲ ံcommand နဲ႔ exploit ကိုအသဵု့ၿပဳရနးေခၚရမွာပါ ။

show options မွာ လိုအပးတဲ ံsetting ေတြနဲ႔ require ေတြ ရွိပါတယး ။

RPOST ဆုိတာ remote post ပါ .. target ip ပါ

ဒီေတာ ံset RPOST ပါ target ip ကေတာ ံက္ေနား Local မွာ install လုပးထာ့တဲ ံmetasploit vulnerability

ရွီတဲ ံftp server ပါ ။

Page 11: Buffer Overflow.pdf

ေနာကးတစးခ ုထပးရိုကးရမွာ က show payloads ပါ

Payloads ဆုိတာ ေပါကးေနတဲ ံtarget system ကိ ုexecute လုပးမဲ ံ command ပဵုစဵပါပ ဲ

Shell,reverse shell , dl injection မ္ာ့ၾကီ့ပါ .. ဒ ီtutorial မွာက္ေနားတုိ႔ က meterpreter payload

ကိုအသဵု့ခ္မွာၿဖစးပါတယး

Page 12: Buffer Overflow.pdf

Meterperter ကိ ုအသဵု့ခ္ရနး set PAYLOAD windows/meterpreter/bind_tcp

Payload optons ပါ target ip နဲ႔ တြဲေပၚလာပါမယး

Page 13: Buffer Overflow.pdf

ေနာကးတဆငးံက exploit လုပးမဲံအဆငး ံၿဖစးပါတယး

ဒိီတြကး command က exploit ပၿဲဖစးပါတယး .. exploit လို႔ run လို႔ window xp sp2 ဘာညာနဲ႔ၾကလာရငး

bingo… . သငး ဟာ သ ူရဲ ံcmd ကိုထိနး့ခ္ဳပးနုိငးပါၿပ ိ

xD ေနာကးတဆငးံက ifconfig လို႔ window command ကိ ုbacktrack မ ွရိုကးၾကညးံပါ .. ip information

ေတြကိုေတြ႕ၿမငးရမွာပါ

Page 14: Buffer Overflow.pdf

ၿပီ့ရငး dir လို႔ရိကုးခ္ငး့ၿဖငး ံ

က ဲဒါဆုိရငး window command ကိ ုbacktrack နဲ႔ အသဵု့ၿပဳၿပီ့ ေနာကး ကြနးၿပဴတာတစးလဵု့ကိ ုလိုသလိ ုထိနး့

ခ္ဳပးနုိငးသြာ့ပါၿပီၿဖစးပါတယး…

Written by rootcreator (သစးရြကး)