Contribuez à SecuObs en envoyant des bitcoins ou des dogecoins.
Nouveaux articles (fr): 1pwnthhW21zdnQ5WucjmnF3pk9puT5fDF
Amélioration du site: 1hckU85orcGCm8A9hk67391LCy4ECGJca

Contribute to SecuObs by sending bitcoins or dogecoins.

Chercher :
Newsletter :  


Revues :
- Presse
- Presse FR
- Vidéos
- Twitter
- Secuobs





Sommaires :
- Tendances
- Failles
- Virus
- Concours
- Reportages
- Acteurs
- Outils
- Breves
- Infrastructures
- Livres
- Tutoriels
- Interviews
- Podcasts
- Communiques
- USBsploit
- Commentaires


Revue Presse:
- Tous
- Francophone
- Par mot clé
- Par site
- Le tagwall


Top bi-hebdo:
- Ensemble
- Articles
- Revue
- Videos
- Twitter
- Auteurs


Articles :
- Par mot clé
- Par auteur
- Par organisme
- Le tagwall


Videos :
- Toutes
- Par mot clé
- Par site
- Le tagwall


Twitter :
- Tous
- Par mot clé
- Par compte
- Le tagwall


Commentaires :
- Breves
- Virus
- Failles
- Outils
- Tutoriels
- Tendances
- Acteurs
- Reportages
- Infrastructures
- Interviews
- Concours
- Livres
- Communiques


RSS/XML :
- Articles
- Commentaires
- Revue
- Revue FR
- Videos
- Twitter


RSS SecuObs :
- sécurité
- exploit
- windows
- attaque
- outil
- microsoft


RSS Revue :
- security
- microsoft
- windows
- hacker
- attack
- network


RSS Videos :
- curit
- security
- biomet
- metasploit
- biometric
- cking


RSS Twitter :
- security
- linux
- botnet
- attack
- metasploit
- cisco


RSS Comments :
- Breves
- Virus
- Failles
- Outils
- Tutoriels
- Tendances
- Acteurs
- Reportages
- Infrastructures
- Interviews
- Concours
- Livres
- Communiques


RSS OPML :
- Français
- International











Revue de presse francophone :
- Appaloosa AppDome nouent un partenariat pour accompagner les entreprises dans le déploiement et la protection des applications mobiles
- D-Link offre une avec un routeur VPN sans fil AC
- 19 mai Paris Petit-Déjeuner Coreye Développer son business à l'abri des cyberattaques
- POYNTING PRESENTE LA NOUVELLE ANTENNE OMNI-291, SPECIALE MILIEU MARITIME, CÔTIER ET MILIEU HUMIDE
- Flexera Software Les utilisateurs français de PC progressent dans l'application de correctifs logiciels, mais des défis de tailles subsistent
- Riverbed lance SD-WAN basé sur le cloud
- Fujitsu multi-récompensé VMware lui décerne plusieurs Partner Innovation Awards à l'occasion du Partner Leadership Summit
- Zscaler Private Access sécuriser l'accès à distance en supprimant les risques inhérents aux réseaux privés virtuels
- QNAP annonce la sortie de QTS 4.2.1
- Une enquête réalisée par la société de cyber sécurité F-Secure a décelé des milliers de vulnérabilités graves, potentiellement utilisables par des cyber criminels pour infiltrer l'infrastru
- Trouver le juste équilibre entre une infrastructure dédiée et cloud le dilemme de la distribution numérique
- 3 juin - Fleurance - Cybersécurité Territoires
- Cyber-assurances Seules 40 pourcents des entreprises françaises sont couvertes contre les violations de sécurité et les pertes de données
- Des étudiants de l'ESIEA inventent CheckMyHTTPS un logiciel qui vérifie que vos connexions WEB sécurisées ne sont pas interceptées
- Les produits OmniSwitch d'Alcatel-Lucent Enterprise ALE gagnent en sécurité pour lutter contre les cyber-attaques modernes

Dernier articles de SecuObs :
- DIP, solution de partage d'informations automatisée
- Sqreen, protection applicative intelligente de nouvelle génération
- Renaud Bidou (Deny All): "L'innovation dans le domaine des WAFs s'oriente vers plus de bon sens et d'intelligence, plus de flexibilité et plus d'ergonomie"
- Mises à jour en perspective pour le système Vigik
- Les russes ont-ils pwn le système AEGIS ?
- Le ministère de l'intérieur censure une conférence au Canada
- Saut d'air gap, audit de firmware et (in)sécurité mobile au programme de Cansecwest 2014
- GCHQ: Le JTRIG torpille Anonymous qui torpille le JTRIG (ou pas)
- #FIC2014: Entrée en territoire inconnu
- Le Sénat investit dans les monnaies virtuelles

Revue de presse internationale :
- VEHICLE CYBERSECURITY DOT and Industry Have Efforts Under Way, but DOT Needs to Define Its Role in Responding to a Real-world Attack
- Demand letter served on poll body over disastrous Comeleak breach
- The Minimin Aims To Be The Simplest Theremin
- Hacking group PLATINUM used Windows own patching system against it
- Hacker With Victims in 100 Nations Gets 7 Years in Prison
- HPR2018 How to make Komboucha Tea
- Circuit Bender Artist bends Fresnel Lens for Art
- FBI Director Suggests iPhone Hacking Method May Remain Secret
- 2016 Hack Miami Conference May 13-15, 2016
- 8-bit Video Wall Made From 160 Gaming Keyboards
- In An Era Of Decline, News Sites Can t Afford Poor Web Performance
- BeautifulPeople.com experiences data breach 1m affected
- Swedish Air Space Infringed, Aircraft Not Required
- Why cybercriminals attack healthcare more than any other industry
- Setting the Benchmark in the Network Security Forensics Industry

Annuaire des videos
- FUZZING ON LINE PART THREE
- Official Maltego tutorial 5 Writing your own transforms
- Official Maltego tutorial 6 Integrating with SQL DBs
- Official Maltego tutorial 3 Importing CSVs spreadsheets
- install zeus botnet
- Eloy Magalhaes
- Official Maltego tutorial 1 Google s websites
- Official Maltego tutorial 4 Social Networks
- Blind String SQL Injection
- backdoor linux root from r57 php shell VPS khg crew redc00de
- How To Attaque Pc With Back Track 5 In Arabique
- RSA Todd Schomburg talks about Roundup Ready lines available in 2013
- Nessus Diagnostics Troubleshooting
- Panda Security Vidcast Panda GateDefender Performa Parte 2 de 2
- MultiPyInjector Shellcode Injection

Revue Twitter
- RT @fpalumbo: Cisco consistently leading the way ? buys vCider to boost its distributed cloud vision #CiscoONE
- @mckeay Looks odd... not much to go on (prob some slideshow/vid app under Linux)
- [SuggestedReading] Using the HTML5 Fullscreen API for Phishing Attacks
- RT @BrianHonan: Our problems are not technical but cultural. OWASP top 10 has not changed over the years @joshcorman #RSAC
- RT @mikko: Wow. Apple kernels actually have a function called PE_i_can_has_debugger:
- [Blog Spam] Metasploit and PowerShell payloads
- PinkiePie Strikes Again, Compromises Google Chrome in Pwnium Contest at Hack in the Box: For the second time thi...
- @mikko @fslabs y'all wldn't happen to have lat/long data sets for other botnets, wld you? Doing some research (free/open info rls when done)
- RT @nickhacks: Want to crash a remote host running Snow Leopard? Just use: nmap -P0 -6 --script=targets-ipv6-multicast-mld #wishiwaskidding
- An inexpensive proxy service called is actually a front for #malware distribution -

Mini-Tagwall
Revue de presse : security, microsoft, windows, hacker, attack, network, vulnerability, google, exploit, malware, internet, remote, iphone

+ de mots clés pour la revue de presse

Annuaires des videos : curit, security, biomet, metasploit, biometric, cking, password, windows, botnet, defcon, tutorial, crypt, xploit

+ de mots clés pour les videos

Revue Twitter : security, linux, botnet, attack, metasploit, cisco, defcon, phish, exploit, google, inject, server, firewall

+ de mots clés pour la revue Twitter

Top bi-hebdo des articles de SecuObs
- [Ettercap – Partie 2] Ettercap par l'exemple - Man In the Middle et SSL sniffing
- [Infratech - release] version 0.6 de Bluetooth Stack Smasher
- [IDS Snort Windows – Partie 2] Installation et configuration
- [Infratech - vulnérabilité] Nouvelle version 0.8 de Bluetooth Stack Smasher
- Mises à jour en perspective pour le système Vigik
- USBDumper 2 nouvelle version nouvelles fonctions !
- EFIPW récupère automatiquement le mot de passe BIOS EFI des Macbook Pro avec processeurs Intel
- La sécurité des clés USB mise à mal par USBDUMPER
- Une faille critique de Firefox expose les utilisateurs de Tor Browser Bundle
- Installation sécurisée d'Apache Openssl, Php4, Mysql, Mod_ssl, Mod_rewrite, Mod_perl , Mod_security

Top bi-hebdo de la revue de presse
- StackScrambler and the Tale of a Packet Parsing Bug

Top bi-hebdo de l'annuaire des videos
- DC++ Botnet. How To DDos A Hub With Fake IPs.
- Comment creer un server botnet!!!!(Réseau de pc zombies)
- Defcon 14 Hard Drive Recovery Part 3

Top bi-hebdo de la revue Twitter
- RT @secureideas: I believe that all the XSS flaws announced are fixed in CVS. Will test again tomorrow if so, release 1.4.3. #BASESnort
- Currently, we do not support 100% of the advanced PDF features found in Adobe Reader... At least that's a good idea.
- VPN (google): German Foreign Office Selects Orange Business for Terrestrial Wide: Full
- @DisK0nn3cT Not really, mostly permission issues/info leak...they've had a couple of XSS vulns but nothing direct.
- Swatting phreaker swatted and heading to jail: A 19-year-old American has been sentenced to eleven years in pris..
- RT @fjserna You are not a true hacker if the calc.exe payload is not the scientific one... infosuck.org/0x0035.png

Top des articles les plus commentés
- [Metasploit 2.x – Partie 1] Introduction et présentation
- Microsoft !Exploitable un nouvel outil gratuit pour aider les développeurs à évaluer automatiquement les risques
- Webshag, un outil d'audit de serveur web
- Les navigateurs internet, des mini-systèmes d’exploitation hors de contrôle ?
- Yellowsn0w un utilitaire de déblocage SIM pour le firmware 2.2 des Iphone 3G
- CAINE un Live[CD|USB] pour faciliter la recherche légale de preuves numériques de compromission
- Nessus 4.0 placé sous le signe de la performance, de l'unification et de la personnalisation
- [Renforcement des fonctions de sécurité du noyau Linux – Partie 1] Présentation
- [IDS Snort Windows – Partie 1] Introduction aux IDS et à SNORT
- Origami pour forger, analyser et manipuler des fichiers PDF malicieux

Exploiting 64-bit Linux like a boss

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]

S'abonner au fil RSS global de la revue de presse



Exploiting 64-bit Linux like a boss

Par Security
Le [2013-02-04] à 00:30:02



Présentation : Back in November 2012, a Chrome Releases blog post mysteriously stated Congratulations to Pinkie Pie for completing challenge 64-bit exploit . Chrome patches and autoupdates bugs pretty fast but this is a WebKit bug and not every consumer of WebKit patches bugs particularly quickly. So I've waited a few months to release a full breakdown of the exploit. The exploit is notable because it is against 64-bit Linux. 64-bit exploits are generally harder than 32-bit exploits for various reasons, including the fact that some types of heap sprays are off the table. On top of that, Linux ASLR is generally better than Windows ASLR although not perfect . For example, Pinkie Pie's Pwnium 2 exploit defeated Win 7 ASLR by relying on a statically-addressed system object That sort of nonsense is generally absent from Linux ASLR. Without any further ado, I'll paste my raw notes from the exploit deconstruction below. The number of different techniques used and steps involved is quite impressive. The bug A single WebKit use-after-free bug was used to gain code execution. The logic flaw in WebKit was reasonably simple when a WebCore HTMLVideoElement is garbage collected, the base class member WebCore HTMLMediaElement m_player -- a WebCore MediaPlayer -- is freed. A different object, a WebCore MediaSource, holds a stale pointer to the freed WebCore MediaPlayer. The stale pointer can be prodded indirectly via Javascript methods on either the JS MediaSource object, or JS SourceBuffer objects owned by the JS MediaSource. The exploit The exploit is moderately complicated, with multiple steps and techniques used. Pinkie Pie states that the complexity is warranted and generally caused by limited lack of control, and therefore limited options for making progress at each stage. The exploit steps are as follows 1. Allocate a large number of RTCIceCandidate objects 100000 and then unreference a small subset of them. tempia new Uint32Array 176 4 rtcs rtcstring 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' rtcdesc 'candidate' rtcstring, 'sdpMid' rtcstring for var i 0 i WebCore MediaSource - WebCore MediaPlayer - virtual WebKit WebMediaPlayerClientImpl. You ll notice that the call chain bounces through the WebCore MediaPlayer, which is freed. However, the only access is to the WebCore MediaPlayer m_private member at offset 72. delete ing the object only interferes with the first 16 bytes on account of tcmalloc writing two freelist pointers and the WebCore MediaPlayer m_mediaPlayerClient member. The WebCore MediaPlayer free slot isn t otherwise meaningfully re-used by this point. What happens next is fascinating. WebCore MediaPlayer sourceSetTimestampOffset dissassembles to 0x00007f61a0ced4c0 mov rdi,QWORD PTR rdi 0x48 0x00007f61a0ced4c4 mov rax,QWORD PTR rdi 0x00007f61a0ced4c7 mov rax,QWORD PTR rax 0x208 0x00007f61a0ced4ce jmp rax This loads the vtable for the WebCore MediaPlayer m_private member and calls the vtable function at 0x208. WebCore MediaPlayer m_private is supposed to be a WebKit WebMediaPlayerClientImpl object but a WebCore SourceBufferList was overlayed there. WebCore SourceBufferList objects have a vtable, but a much smaller one Offset 0x208 in this vtable hits a vtable function in a totally different vtable, specifically WebCore RefCountedSupplement RefCountedSupplement, which disassembles to 0x00007ffd9ec51e00 lea rax, rip 0x3276969 0x00007ffd9ec51e07 mov QWORD PTR rdi ,rax 0x00007ffd9ec51e0a jmp 0x7ffd9e5b2c80 As these opcodes execute, rdi is a this pointer for a WebCore SourceBufferList object which the calling code believed was a this pointer to a WebKit WebMediaPlayerClientImpl object . As you can see, the side effects of these opcodes are - Trash the vtable pointer of the WebCore SourceBufferList object. - Do a free this , i.e free the WebCore SourceBufferList object. - Return cleanly to the caller. 4. Use HTML5 WebDatabase functionality to allocate a SQLStatement as a side effect. transaction.executeSql 'derp', , function , function slength sbl.length A WebCore SQLStatement object is 176 bytes in size. So it is allocated into the slot just vacated by free ing the WebCore SourceBufferList object in step 3 above. This is the same slot that we free d the WebKit WebMediaPlayerClientImpl from. There are now two Javascript objects pointing to freed objects a direct handle to a freed WebCore SourceBufferList sbl and an indirect handle to a freed WebKit WebMediaPlayerClientImpl buffer . At this time, a call is made in Javascript to sbl.length. It is not required for the exploit and nothing is done with the integer result, but looking at this call under the covers is instructive. To return the length, a 64-bit size_t is read from offset 136 into the WebCore SourceBufferList object. Since a WebCore SQLStatement was put on top of the freed WebCore SourceBufferList, the actual value read is a WebCore SQLStatement m_statementErrorCallbackWrapper m_callback member pointer. Leaking this value to Javascript might be useful as it is a heap address. However, Javascript lengths are 32-bit so only the lower 32-bits of the address are leaked. The entropy that s important for ASLR on 64-bit Linux is largely in the next 8 bits above the bottom 32 bits, so the heap address cannot be usefully leaked Exploitation of similar overlap situations would not be a problem on systems with 32-bit pointers. 5. Abuse overlapping fields in SourceBufferList vs. SQLStatement. sb sbl 0xa8 8 Next, the Javascript array index operator is used. At this time, the Javascript handle to the WebCore SourceBufferList is actually backed by a WebCore SQLStatement object at the C level. The WebCore SourceBufferList m_list member is a WTF Vector and that starts with two important 64-bit fields a length and a pointer to the underlying buffer. As covered above, the length now maps to a pointer value. A pointer value, when treated as an integer, will be very large, effectively sizing the vector massively. And the vector s underlying buffer pointer now maps to the member SQLStatement m_statementErrorCallbackWrapper m_scriptExecutionContext. Therefore, the Javascript array operator on JS SourceBufferList will return a JS SourceBuffer object which is backed in C by a pointer pulled from somewhere in a C WebCore ScriptExecutionContent object, depending on the array index. The exploit uses array index 21, which corresponds to offset 168, or WebCore ScriptExecutionContext m_pendingExceptions. This is a pointer to a WTF Vector. So, there is now a Javascript handle to a JS SourceBuffer object which is really backed by a WTF Vector. 6. Read vtable value as a Javascript number. converterF64 0 sb.timestampOffset In C , the timestampOffset property is read from a 64-bit double at offset 32 of the WebCore SourceBuffer object. The WebCore SourceBuffer object is currently backed by a WTF Vector object, which is 24 bytes in size and lives in a 32 byte tcmalloc slot. Therefore, a read at offset 32 will in fact read from the beginning of the next tcmalloc slot. Looking back to step 1, it was arranged to be likely that the adjacent 32 byte slot will contain a WebCore WebCoreStringResource object. Therefore, the WebCore WebCoreStringResource vtable is read and returned to Javascript as a number. Javascript numbers are 64-bit doubles so there are no truncation issues like those discussed with reading an integer length above in step 4. That s a lot of effort, but finally the exploit has leaked a vtable value to Javascript. For a given build of Chrome, it is now easy to calculate the exact address of all opcodes, functions, etc. in the binary. 7. Re-trigger use-after-free and back freed object with array buffer. buffer2 ms3.addSourceBuffer 'video webm codecs vorbis,vp8 ' vid2.parentNode.removeChild vid2 vid2 null gc var ia new Uint32Array 168 4 rtc2 new webkitRTCPeerConnection 'iceServers' This time, the freed WebKit WebMediaPlayerClientImpl is replaced with a 168 raw byte buffer that can be read and written through Javascript. This is now a useful primitive because ASLR was defeated and a useful vtable pointer value can be put in the first 8 bytes of the raw byte buffer. A WebCore RTCPeerConnection is also allocated 264 bytes to occupy the slot for the freed WebCore MediaPlayer. This protects the freed WebCore MediaPlayer from corruption. Significantly, it makes sure nothing overwrites the WebCore MediaPlayer m_private pointer. This pointer is needed intact. It is at offset 72 and WebCore RTCPeerConnection does not overwrite that field during construction. 8. Leak address of a heap buffer under Javascript control. add64 converterI32, 0, converterI32, 0, -prepdata 'found_vt' add64 ia, 0, converterI32, 0, prepdata 'mov_rdx_112_rdi_pp' add64 ia, 0, ia, 0, -0x1e8 var ib8 new Uint8Array 0x10000 var ib new Uint32Array ib8.buffer buffer2.append ib8 var ibAddr ia 112 4 , ia 112 4 1 Using knowledge of the binary layout, a vtable value is chosen that will result in the WebCore MediaPlayer sourceAppend vtable call site calling the function v8 internal HStoreNamedField SetSideEffectDominator. An appropriate function name. It disassembles to 0x00007f153efd7340 mov QWORD PTR rdi 0x70 ,rdx 0x00007f153efd7344 ret As can be seen, the value of rdx the 2nd non-this function parameter is written to offset 112 of this. this is backed by a raw buffer pointer for the ia Javascript Uint32Array and rdx in the context of WebCore MediaPlayer sourceAppend is a raw buffer pointer for the ib Javscript Uint32Array. Therefore, the address of a heap buffer under the control of Javascript has been leaked to Javascript. 9. Proceed as normal. The exploit now has control over a vtable pointer. It can point the vtable pointer at a heap buffer where the contents can be controlled arbitrarily. The exploit is free to start ROP chains etc. As it happens, the exploit payload is expressed in terms of valid full function calls. This is achieved by bouncing into a useful sequence of opcodes in a template base internal Invoker 0x00007f153fc71d40 mov rax,rdi 0x00007f153fc71d43 lea rcx, rdi 0x30 0x00007f153fc71d47 mov rsi,QWORD PTR rdi 0x20 0x00007f153fc71d4b mov rdx,QWORD PTR rdi 0x28 0x00007f153fc71d4f mov rax,QWORD PTR rax 0x10 0x00007f153fc71d53 mov rdi,QWORD PTR rdi 0x18 0x00007f153fc71d57 jmp raxAs can be seen, these opcodes pull a jump target, a new this pointer and two function arguments from the current this pointer. A very useful construct.

Les mots clés de la revue de presse pour cet article : linux
Les videos sur SecuObs pour les mots clés : linux
Les mots clés pour les articles publiés sur SecuObs : linux
Les éléments de la revue Twitter pour les mots clé : linux



AddThis Social Bookmark Widget



Les derniers articles du site "Security" :

- Using ASAN as a protection
- Execute without read
- Together, we can make a difference
- Internet Bug Bounty issues its first 10,000 reward
- vtable protections fast and thorough
- Exploiting 64-bit Linux like a boss
- Exile for the BBC Micro some elegant solutions
- Using ASAN as a protection
- Execute without read
- Together, we can make a difference
- Internet Bug Bounty issues its first 10,000 reward
- vtable protections fast and thorough
- Exploiting 64-bit Linux like a boss




S'abonner au fil RSS global de la revue de presse

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.190.17.190 --dport 80 -j DROP"
- avec ipfw et wipfw "ipfw add deny from 88.190.17.190 to any 80"
- Nous contacter par mail




SecuToolBox :

Mini-Tagwall des articles publiés sur SecuObs :

Mini-Tagwall de l'annuaire video :

Mini-Tagwall des articles de la revue de presse :

Mini-Tagwall des Tweets de la revue Twitter :