wordpress's soup http://wordpress.soup.io/ wordpress 2.6 [lapaille] 0day pour WordPress {"tags":[],"type":"regular","title":"0day pour WordPress","source":null,"body":"\u003Ch2\u003E0day pour WordPress\u003C/h2\u003E\n \n\t\t\t\u003Ch3\u003EPubli\u00e9 le \u003Ca href=\"http://www.zataz.com/contenus/20-07-2009/\" title=\"Toute l'actualit\u00e9 du 20-07-2009\"\u003E\n\t\t\t20-07-2009\u003C/a\u003E \n\t\t\tdans le th\u00e8me \u003Ca href=\"http://www.zataz.com/themes/15/reseau-securite/\" title=\"Th\u00e8me R\u00e9seau - S\u00e9curit\u00e9\"\u003E\n\t\t\tR\u00e9seau - S\u00e9curit\u00e9\u003C/a\u003E\u003C/h3\u003E\u003Cbr /\u003E\u003Cp\u003E\u003Cstrong\u003EExclusif\n: Une faille permet d\u00b4ex\u00e9cuter une connexion vers un site tiers de\nmani\u00e8re simple et rapide. Une porte ouverte aux abus et tentatives\nd\u00b4hame\u00e7onnages.\u003C/strong\u003E\u003C/p\u003E\u003Cp\u003ELemuria, lecteur de\nZATAZ.COM, nous a inform\u00e9 d'une faille dans le syst\u00e8me WordPress qui\npourrait permettre \u00e0 un pirate de rediriger les visiteurs vers des\nespaces pirates. Des pages pirates qui pourraient usurper le site ainsi\npi\u00e9g\u00e9 afin de diffuser, entre autres, codes malicieux ou fausse page\nd'identification. \u003C/p\u003E\u003Cp\u003EBref, un 0day parfait pour\nintercepter login et mot de passe. La vuln\u00e9rabilit\u00e9 est situ\u00e9e dans le\nfichier template.php. \"La variable $author_url n\u2019est pas bien\ns\u00e9curis\u00e9e, indique Lemuria, Il est possible d'injecter du code quant on\nlaisse un commentaire.\" Nous vous proposons \u003Cem\u003E\u003Ca href=\"http://www.stars-buzz.com/2009/07/19/images-inedites-de-michael-jackson/\"\u003Eune d\u00e9monstration\u003C/a\u003E\u003C/em\u003E,\nsans danger, via Stars-buzz.com. Il vous suffit de passer votre souris\nsur l'auteur du post d\u00e9di\u00e9 \u00e0 Michael Jackson : Test 0day ZATAZ. Vous\ncomprendrez alors l'int\u00e9r\u00eat de la correction de cette faille. \u003C/p\u003E\u003Cp\u003EAttention,\nsi les commentaires sont mod\u00e9r\u00e9s avant leur affichage dans le site,\nl'administrateur\u00a0 pourrait \u00eatre ainsi re-dirig\u00e9 ver une page de\nphishing. \u003C/p\u003E\u003Cp\u003EEn attendant le correctif officiel, nous pouvons vous conseiller de remplacer, dans le fichier template.php (wp-adminincludes) :\u003Cbr /\u003E\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u003Cbr /\u003Eecho \"\u0026lt;a title='$author_url' href='$author_url'\u0026gt;$author_url_display\u0026lt;/a\u0026gt;\u0026lt;br /\u0026gt;\"; \u003Cbr /\u003E\u00a0\u003Cbr /\u003Epar :\u003C/p\u003E\u003Cp\u003Eecho \"\u0026lt;a title=\"$author_url\" href=\"$author_url\"\u0026gt;$author_url_display\u0026lt;/a\u0026gt;\u0026lt;br /\u0026gt;\";\u003C/p\u003E\u003Cp\u003EPicocolo,\nautre lecteur, nous fait savoir tr\u00e8s justement que le correctif\u00a0ne\nfonctionnera pas sans caract\u00e8re d'\u00e9chappement devant les guillemets du\nlien.\u003C/p\u003E"} <h2>0day pour WordPress</h2> <h3>Publié le <a href="http://www.zataz.com/contenus/20-07-2009/" title="Toute l'actualité du 20-07-2009"> 20-07-2009</a> dans le thème <a href="http://www.zataz.com/themes/15/reseau-securite/" title="Thème Réseau - Sécurité"> Réseau - Sécurité</a></h3><br /><p><strong>Exclusif : Une faille permet d´exécuter une connexion vers un site tiers de manière simple et rapide. Une porte ouverte aux abus et tentatives d´hameçonnages.</strong></p><p>Lemuria, lecteur de ZATAZ.COM, nous a informé d'une faille dans le système WordPress qui pourrait permettre à un pirate de rediriger les visiteurs vers des espaces pirates. Des pages pirates qui pourraient usurper le site ainsi piégé afin de diffuser, entre autres, codes malicieux ou fausse page d'identification. </p><p>Bref, un 0day parfait pour intercepter login et mot de passe. La vulnérabilité est située dans le fichier template.php. "La variable $author_url n’est pas bien sécurisée, indique Lemuria, Il est possible d'injecter du code quant on laisse un commentaire." Nous vous proposons <em><a href="http://www.stars-buzz.com/2009/07/19/images-inedites-de-michael-jackson/">une démonstration</a></em>, sans danger, via Stars-buzz.com. Il vous suffit de passer votre souris sur l'auteur du post dédié à Michael Jackson : Test 0day ZATAZ. Vous comprendrez alors l'intérêt de la correction de cette faille. </p><p>Attention, si les commentaires sont modérés avant leur affichage dans le site, l'administrateur  pourrait être ainsi re-dirigé ver une page de phishing. </p><p>En attendant le correctif officiel, nous pouvons vous conseiller de remplacer, dans le fichier template.php (wp-adminincludes) :<br />        <br />echo "&lt;a title='$author_url' href='$author_url'&gt;$author_url_display&lt;/a&gt;&lt;br /&gt;"; <br /> <br />par :</p><p>echo "&lt;a title="$author_url" href="$author_url"&gt;$author_url_display&lt;/a&gt;&lt;br /&gt;";</p><p>Picocolo, autre lecteur, nous fait savoir très justement que le correctif ne fonctionnera pas sans caractère d'échappement devant les guillemets du lien.</p>Mon, 20 Jul 2009 23:15:06 GMThttp://wordpress.soup.io/post/23627350/0day-pour-WordPressurn:www-soup-io:1:23627350regular [lapaille] CORE-2009-01515 - WordPress Privileges Unchecked in admin.php and Multiple Information {"tags":[],"type":"regular","title":null,"source":null,"body":"\u003Cdiv class=\"head\"\u003E\n\u003Ch1\u003ECORE-2009-01515 - WordPress Privileges Unchecked in admin.php and Multiple Information\u003C/h1\u003E\n\u003C!-- received=\"Wed Jul 8 15:41:07 2009\" --\u003E\n\u003C!-- isoreceived=\"20090708224107\" --\u003E\n\u003C!-- sent=\"Wed, 08 Jul 2009 19:34:08 -0300\" --\u003E\n\u003C!-- isosent=\"20090708223408\" --\u003E\n\u003C!-- name=\"Core Security Technologies Advisories\" --\u003E\n\u003C!-- email=\"advisories_at_coresecurity.com\" --\u003E\n\u003C!-- subject=\"CORE-2009-01515 - WordPress Privileges Unchecked in admin.php and Multiple Information\" --\u003E\n\u003C!-- id=\"4A551EE0.3010303_at_coresecurity.com\" --\u003E\n\u003C!-- charset=\"ISO-8859-1\" --\u003E\n\u003C!-- expires=\"-1\" --\u003E\n\n\u003Cul class=\"links\"\u003E\u003Cli\u003E\n\u003Cdfn\u003EThis message\u003C/dfn\u003E:\n[ \u003Ca name=\"options1\" href=\"http://seclists.org/bugtraq/2009/Jul/0043.html#start\"\u003EMessage body\u003C/a\u003E ]\n [ \u003Ca href=\"http://seclists.org/bugtraq/2009/Jul/0043.html#options2\"\u003EMore options\u003C/a\u003E ]\n\u003C/li\u003E\u003Cli\u003E\n\u003Cdfn\u003ERelated messages\u003C/dfn\u003E:\n\u003C!-- unext=\"start\" --\u003E\n[ \u003Ca\u003EPrevious message\u003C/a\u003E ]\n\u003C!-- unextthread=\"start\" --\u003E\n\u003C!-- ureply=\"end\" --\u003E\n\u003C/li\u003E\u003C/ul\u003E\n\n\u003C/div\u003E\n\u003C!-- body=\"start\" --\u003E\n\n\u003Caddress class=\"headers\"\u003E\n\n\u003Cdfn\u003EFrom\u003C/dfn\u003E: Core Security Technologies Advisories \u0026lt;\u003Ca href=\"mailto:advisories_at_coresecurity.com?Subject=Re:%20CORE-2009-01515%20-%20WordPress%20Privileges%20Unchecked%20in%20admin.php%20and%20Multiple%20Information\"\u003Eadvisories_at_coresecurity.com\u003C/a\u003E\u0026gt;\n\u003Cbr /\u003E\n\u003Cdfn\u003EDate\u003C/dfn\u003E: Wed, 08 Jul 2009 19:34:08 -0300\u003Cbr /\u003E\n\u003C/address\u003E\n\u003Cp\u003E\n-----BEGIN PGP SIGNED MESSAGE-----\n\u003Cbr /\u003E\nHash: SHA1\n\u003C/p\u003E\u003Cp\u003E\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Core Security Technologies - CoreLabs Advisory\n\u003Cbr /\u003E\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u003Ca href=\"http://www.coresecurity.com/corelabs/\"\u003Ehttp://www.coresecurity.com/corelabs/\u003C/a\u003E\n\u003C/p\u003E\u003Cp\u003EWordPress Privileges Unchecked in admin.php and Multiple Information\n\u003Cbr /\u003E\nDisclosures\n\u003C/p\u003E\u003Cp\u003E1. *Advisory Information*\n\u003C/p\u003E\u003Cp\u003ETitle: WordPress Privileges Unchecked in admin.php and Multiple\n\u003Cbr /\u003E\nInformation Disclosures\n\u003Cbr /\u003E\nAdvisory ID: CORE-2009-0515\n\u003Cbr /\u003E\nAdvisory URL:\n\u003Cbr /\u003E\n\u003Ca href=\"http://corelabs.coresecurity.com/index.php?action=view\u0026amp;type=advisory\u0026amp;name=WordPress_Privileges_Unchecked\"\u003Ehttp://corelabs.coresecurity.com/index.php?action=view\u0026amp;type=advisory\u0026amp;name=WordPress_Privileges_Unchecked\u003C/a\u003E\n\u003Cbr /\u003E\nDate published: 2009-07-08\n\u003Cbr /\u003E\nDate of last update: 2009-07-08\n\u003Cbr /\u003E\nVendors contacted: WordPress\n\u003Cbr /\u003E\nRelease mode: Coordinated release\n\u003C/p\u003E\u003Cp\u003E2. *Vulnerability Information*\n\u003C/p\u003E\u003Cp\u003EClass: Local file include, Privileges unchecked, Cross site scripting\n\u003Cbr /\u003E\n(XSS), Information disclosure\n\u003Cbr /\u003E\nRemotely Exploitable: Yes\n\u003Cbr /\u003E\nLocally Exploitable: No\n\u003Cbr /\u003E\nBugtraq ID: 35581, 35584\n\u003Cbr /\u003E\nCVE Name: CVE-2009-2334, CVE-2009-2335, CVE-2009-2336\n\u003C/p\u003E\u003Cp\u003E3. *Vulnerability Description*\n\u003C/p\u003E\u003Cp\u003EWordPress is a web application written in PHP that allows the easy\n\u003Cbr /\u003E\ninstallation of a flexible weblog on any computer connected to the\n\u003Cbr /\u003E\nInternet. WordPress 2.7 reached more than 6 million downloads during\n\u003Cbr /\u003E\nJune 2009 [9].\n\u003C/p\u003E\u003Cp\u003EA vulnerability was found in the way that WordPress handles some URL\n\u003Cbr /\u003E\nrequests. This results in unprivileged users viewing the content of\n\u003Cbr /\u003E\nplugins configuration pages, and also in some plugins modifying plugin\n\u003Cbr /\u003E\noptions and injecting JavaScript code. Arbitrary native code may be run\n\u003Cbr /\u003E\nby a malicious attacker if the blog administrator runs injected\n\u003Cbr /\u003E\nJavasScript code that edits blog PHP code. Many WordPress-powered blogs,\n\u003Cbr /\u003E\nhosted outside 'wordpress.com', allow any person to create unprivileged\n\u003Cbr /\u003E\nusers called subscribers. Other sensitive username information\n\u003Cbr /\u003E\ndisclosures were found in WordPress.\n\u003C/p\u003E\u003Cp\u003E4. *Vulnerable packages*\n\u003C/p\u003E\u003Cp\u003E\u00a0\u00a0\u00a0. WordPress 2.8 and previous\n\u003Cbr /\u003E\n\u00a0\u00a0\u00a0. WordPress MU 2.7.1 and previous, used in WordPress.com\n\u003C/p\u003E\u003Cp\u003E5. *Non-vulnerable packages*\n\u003C/p\u003E\u003Cp\u003E\u00a0\u00a0\u00a0. WordPress 2.8.1\n\u003Cbr /\u003E\n\u00a0\u00a0\u00a0. WordPress MU 2.8.1, used in WordPress.com\n\u003C/p\u003E\u003Cp\u003E6. *Vendor Information, Solutions and Workarounds*\n\u003C/p\u003E\u003Cp\u003EMitigation for the Privileges Unchecked vulnerability (suggested by Core\n\u003Cbr /\u003E\nSecurity): this vulnerability may be mitigated by controlling access to\n\u003Cbr /\u003E\nfiles inside the 'wp-admin' folder. Access can be prohibited by using\n\u003Cbr /\u003E\nApache access control mechanism ('.htaccess' file), see guideline for\n\u003Cbr /\u003E\nmore information [11].\n\u003C/p\u003E\u003Cp\u003E7. *Credits*\n\u003C/p\u003E\u003Cp\u003EThese vulnerabilities were discovered and researched by Fernando\n\u003Cbr /\u003E\nArnaboldi and Jos\ufffd Orlicki from Core Security Technologies. Further\n\u003Cbr /\u003E\nresearch was made by Jose Orlicki from Core Security Technologies.\n\u003C/p\u003E\u003Cp\u003E8. *Technical Description / Proof of Concept Code*\n\u003C/p\u003E\u003Cp\u003E8.1. *Introduction*\n\u003C/p\u003E\u003Cp\u003EIn the last few years several security bugs were found in WordPress\n\u003Cbr /\u003E\n[1][2]. During 2008, the big amount of bugs reported by researchers lead\n\u003Cbr /\u003E\nto exploitation by blog spammers [3]. During 2009, a new round of\n\u003Cbr /\u003E\nattacks has appeared and security researchers are reporting new bugs or\n\u003Cbr /\u003E\nwrongly fixed previously-reported bugs [4][5]. A path traversal in local\n\u003Cbr /\u003E\nfiles included by 'admin.php' has been fixed [6][7] but, in our case, we\n\u003Cbr /\u003E\nreport that administrative privileges are still unchecked when accessing\n\u003Cbr /\u003E\nany PHP file inside a plugin folder.\n\u003C/p\u003E\u003Cp\u003E8.2. *Access Control Roles*\n\u003C/p\u003E\u003Cp\u003EWordPress has a privilege model where any user has an assigned role [8].\n\u003Cbr /\u003E\nRegarding plugins only users characterized by the role Administrator can\n\u003Cbr /\u003E\nactivate plugins. Notice that only the blog hosting owner can add new\n\u003Cbr /\u003E\nplugins because these must by copied inside the host filesystem. The\n\u003Cbr /\u003E\nroles Editor, Author or Subscriber (the latter has the least privileges)\n\u003Cbr /\u003E\ncannot activate plugins, edit plugins, update plugins nor delete plugins\n\u003Cbr /\u003E\ninstalled by an Administrator. Besides that, the configuration of\n\u003Cbr /\u003E\nspecific plugins is a grey area because there is no distinguished\n\u003Cbr /\u003E\ncapability assigned [8].\n\u003C/p\u003E\u003Cp\u003EAlso due to cross-site scripting vulnerabilities inside plugins options\n\u003Cbr /\u003E\n(something very common), non-administrative users reconfiguring plugins\n\u003Cbr /\u003E\nmay inject persistent JavaScript code. Possibly arbitrary native code\n\u003Cbr /\u003E\ncan be executed by the attacker if the blog administrator runs injected\n\u003Cbr /\u003E\nJavasScript code that injects PHP code. It is important to observe that\n\u003Cbr /\u003E\nmany WordPress-powered blogs are configured to allow any blog visitor to\n\u003Cbr /\u003E\ncreate a Subscriber user without confirmation from the Administrator\n\u003Cbr /\u003E\nrole inside the following URL, although by default the Administrator\n\u003Cbr /\u003E\nrole must create these new users.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-login.php?action=register\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0This can be modified by the administrator in 'Membership/Anyone can\n\u003Cbr /\u003E\nregister'.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-admin/options-general.php\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E8.3. *Privileges Unchecked in admin.php?page= Plugin Local File Includes\n\u003Cbr /\u003E\n(CVE-2009-2334, BID 35581)*\n\u003C/p\u003E\u003Cp\u003ENo privileges are checked on WordPress plugins configuration PHP modules\n\u003Cbr /\u003E\nusing parameter 'page' when we replace 'options-general.php' with\n\u003Cbr /\u003E\n'admin.php'. The same thing happens when replacing other modules such as\n\u003Cbr /\u003E\n'plugins.php' with 'admin.php'. Basic information disclosure is done\n\u003Cbr /\u003E\nthis way. For example, with the following URL a user with no privileges\n\u003Cbr /\u003E\ncan see the configuration of plugin Collapsing Archives, if installed.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-admin/admin.php?page=/collapsing-archives/options.txt\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0Instead of the following allowed URL.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-admin/options-general.php?page=collapsing-archives/options.txt\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0Another example of this information disclosure is shown on Akismet, a\n\u003Cbr /\u003E\nplugin shipped by default with WordPress.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-admin/admin.php?page=akismet/readme.txt\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0All plugins we have tested are vulnerable to this kind of information\n\u003Cbr /\u003E\ndisclosure, but in many of them the PHP files accessed just crashed. On\n\u003Cbr /\u003E\nthe other hand, for example, with capability 'import', privileges are\n\u003Cbr /\u003E\nchecked inside 'admin.php':\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Eif ( ! current_user_can('import') )\n\u003Cbr /\u003E\n\u00a0\u00a0\u00a0\u00a0wp_die(__('You are not allowed to import.'));\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0More dangerous scenarios exist, all of them can be exploited by users\n\u003Cbr /\u003E\nwith the Subscriber role, the least privileged.\n\u003C/p\u003E\u003Cp\u003E8.4. *Abuse example: XSS in plugin configuration module*\n\u003C/p\u003E\u003Cp\u003EIf installed, *Related Ways To Take Action* is an example of a WordPress\n\u003Cbr /\u003E\nplugin that is affected by many cross-site scripting vulnerabilities\n\u003Cbr /\u003E\n(XSS) that can be leveraged by an attacker using the unchecked\n\u003Cbr /\u003E\nprivileges described in this advisory to inject persistent JavaScript\n\u003Cbr /\u003E\ncode. Possibly, arbitrary native code can be executed by the attacker if\n\u003Cbr /\u003E\nthe blog administrator, when he/she logs in, runs injected JavasScript\n\u003Cbr /\u003E\ncode that edits blog PHP code. The original URL for reconfiguring the\n\u003Cbr /\u003E\nplugin can be accessed only by the Administrator role.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wordpress/wp-admin/options-general.php?page=related-ways-to-take-action/options.php\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0But replacing the PHP file with the generic 'admin.php' any blog user\n\u003Cbr /\u003E\ncan modify this configuration.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-admin/admin.php?page=related-ways-to-take-action/options.php\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0The following JavaScript injection can be entered within field *Exclude\n\u003Cbr /\u003E\nactions by term* to exemplify this kind of abuse. When the administrator\n\u003Cbr /\u003E\nenters the same page the injected browser code will be executed and\n\u003Cbr /\u003E\npossibly blog PHP can be modified to run arbitrary native code.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003E\\\"/\u0026gt;\u0026lt;script\u0026gt;alert(String.fromCharCode(88)+String.fromCharCode(83)+String.fromCharCode(83))\u0026lt;/script\u0026gt;\u0026lt;ahref=\"\n\u003C/p\u003E\u003Cp\u003E- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0This is the worst scenario that we found for the vulnerability.\n\u003C/p\u003E\u003Cp\u003E8.5. *Abuse example: viewing WP Security Scanner Plugin Dashboard*\n\u003C/p\u003E\u003Cp\u003EIf installed, the WordPress Security Scanner Plugin dashboard can be\n\u003Cbr /\u003E\nviewed similarly by any user besides the administrator using the plugin\n\u003Cbr /\u003E\nconfiguration page URL without modification. This dashboard includes\n\u003Cbr /\u003E\ncommon default blog configuration settings that are insecure and should\n\u003Cbr /\u003E\nbe modified by the blog administrator or hosting.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-admin/admin.php?page=wp-security-scan/securityscan.php\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E8.6. *Abuse example: reconfiguring WP-IDS, a WordPress Hardening Project*\n\u003C/p\u003E\u003Cp\u003EIf installed, the *Intrusion Detection System Plugin (WPIDS)*[10] can be\n\u003Cbr /\u003E\nreconfigured accessed with the same vulnerability.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-admin/index.php?page=wp-ids/ids-admin.php\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E\u00a0This gives an attacker the possibility to disable many features of the\n\u003Cbr /\u003E\nplugin, for example reactivate the forgotten password feature and\n\u003Cbr /\u003E\nreactivate the XML-RPC blog interface. Also you can deny the weblog\n\u003Cbr /\u003E\nservice by configuring this plugin to be overly sensitive, blocking any\n\u003Cbr /\u003E\nrequest. However the plugin cannot be totally disabled because the\n\u003Cbr /\u003E\nessential IDS parameters 'Maximum impact to ignore bad requests' and\n\u003Cbr /\u003E\n'Minimum impact to sanitize bad requests' are verified on the server\n\u003Cbr /\u003E\nside of the blog and cannot be distorted to deactivate the sanitizing or\n\u003Cbr /\u003E\nblocking features of the web IDS plugin.\n\u003C/p\u003E\u003Cp\u003E8.7. *Other Information Disclosures (CVE-2009-2335, CVE-2009-2336, BID\n\u003Cbr /\u003E\n35584)*\n\u003C/p\u003E\u003Cp\u003EWordPress discriminates bad password from bad user logins, this reduces\n\u003Cbr /\u003E\nthe complexity of a brute force attack on WordPress blogs login\n\u003Cbr /\u003E\n(CVE-2009-2335, BID 35584). The same user information disclosure happens\n\u003Cbr /\u003E\nwhen users use the forgotten mail interface to request a new password\n\u003Cbr /\u003E\n(CVE-2009-2336, same BID 35584). These information disclosures seem to\n\u003Cbr /\u003E\nbe previously reported [6] but the WordPress team is refusing to modify\n\u003Cbr /\u003E\nthem alleging *user convenience*.\n\u003C/p\u003E\u003Cp\u003EDefault installation of WordPress 2.7.1 leaks the name of the user\n\u003Cbr /\u003E\nposting entries inside the HTML of the blog.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003E\u00a0\u00a0\u0026lt;small\u0026gt;June 3rd, 2009 \u0026lt;!-- by leakedusername --\u0026gt;\u0026lt;/small\u0026gt;\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003EAlso several administrative modules give to anyone the complete path\n\u003Cbr /\u003E\nwhere the web application is hosted inside the server. This may simplify\n\u003Cbr /\u003E\nor enable other malicious attacks. An example follows.\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003Ehttp://[some_wordpress_blog]/wp-settings.php\n\u003Cbr /\u003E\n- -----------/\n\u003C/p\u003E\u003Cp\u003E/-----------\n\u003C/p\u003E\u003Cp\u003ENotice: Use of undefined constant ABSPATH - assumed 'ABSPATH' in\n\u003Cbr /\u003E\n[WP_LEAKED_PATH]\\wp-settings.php on line 110\n\u003Cbr /\u003E\nNotice: Use of undefined constant ABSPATH - assumed 'ABSPATH' in\n\u003Cbr /\u003E\n[WP_LEAKED_PATH]\\wp-settings.php on line 112\n\u003Cbr /\u003E\nWarning: require(ABSPATHwp-includes/compat.php) [function.require]:\n\u003Cbr /\u003E\nfailed to open stream:\n\u003Cbr /\u003E\nNo such file or directory in [WP_LEAKED_PATH]\\wp-settings.php on line 246\n\u003Cbr /\u003E\nFatal error: require() [function.require]: Failed opening required\n\u003Cbr /\u003E\n'ABSPATHwp-includes/compat.php'\n\u003Cbr /\u003E\n(include_path='.;[PHP_LEAKED_PATH]\\php5\\pear') in\n\u003Cbr /\u003E\n[WP_LEAKED_PATH]\\wp-settings.php on line 246\n\u003C/p\u003E\u003Cp\u003E- -----------/\n\u003C/p\u003E\u003Cp\u003E9. *Report Timeline*\n\u003C/p\u003E\u003Cp\u003E. 2009-06-04:\n\u003Cbr /\u003E\nCore Security Technologies notifies the WordPress team of the\n\u003Cbr /\u003E\nvulnerabilities (security_at_wordpress.\u003C!--nospam--\u003Eorg) and offers a technical\n\u003Cbr /\u003E\ndescription encrypted or in plain-text. Advisory is planned for\n\u003Cbr /\u003E\npublication on June 22th.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-08:\n\u003Cbr /\u003E\nCore notifies again the WordPress team of the vulnerability.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-10:\n\u003Cbr /\u003E\nThe WordPress team asks Core for a technical description of the\n\u003Cbr /\u003E\nvulnerability in plain-text.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-11:\n\u003Cbr /\u003E\nTechnical details sent to WordPress team by Core.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-11:\n\u003Cbr /\u003E\nWordPress team notifies Core that a fix was produced and is available to\n\u003Cbr /\u003E\nCore for testing. WordPress team asserts that password and username\n\u003Cbr /\u003E\ndiscrimination as well as username leakage are known and will not be\n\u003Cbr /\u003E\nfixed because they are convenient for the users.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-12:\n\u003Cbr /\u003E\nCore tells the WordPress team that the patch will be tested by Core as a\n\u003Cbr /\u003E\ncourtesy as soon as possible. It also requests confirmation that\n\u003Cbr /\u003E\nWordPress versions 2.8 and earlier, and WordPress.com, are vulnerable to\n\u003Cbr /\u003E\nthe flaws included in the advisory draft CORE-2009-0515.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-12:\n\u003Cbr /\u003E\nWordPress team confirms that WordPress 2.8 and earlier plus\n\u003Cbr /\u003E\nWordPress.com are vulnerable to the flaws included in the advisory draft.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-17:\n\u003Cbr /\u003E\nCore informs the WordPress team that the patch is only fixing one of the\n\u003Cbr /\u003E\nfour proof of concept abuses included in the advisory draft. Core\n\u003Cbr /\u003E\nreminds the WordPress team that the advisory is scheduled to be\n\u003Cbr /\u003E\npublished on June 22th but a new schedule can be discussed.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-19:\n\u003Cbr /\u003E\nCore asks for a new patched version of WordPress, if available, and\n\u003Cbr /\u003E\nnotifies the WordPress team that the publication of the advisory was\n\u003Cbr /\u003E\nre-scheduled to June 30th.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-19:\n\u003Cbr /\u003E\nWordPress team confirms they have a new patch that has the potential to\n\u003Cbr /\u003E\nbreak a lot of plugins.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-29:\n\u003Cbr /\u003E\nWordPress team asks for a delayance on advisory CORE-2009-0515\n\u003Cbr /\u003E\npublication until July 6th, when WordPress MU version will be patched.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-29:\n\u003Cbr /\u003E\nCore agrees to delay publication of advisory CORE-2009-0515 until July 6th.\n\u003C/p\u003E\u003Cp\u003E. 2009-06-29:\n\u003Cbr /\u003E\nCore tells the WordPress team that other administrative PHP modules can\n\u003Cbr /\u003E\nalso be rendered by non-administrative users, such as module\n\u003Cbr /\u003E\n'admin-post.php' and 'link-parse-opml.php'.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-02:\n\u003Cbr /\u003E\nWordPress team comments that 'admin.php' and 'admin-post.php' are\n\u003Cbr /\u003E\nintentionally open and plugins can choose to hook either privileged or\n\u003Cbr /\u003E\nunprivileged actions. They also comment that unprivileged access to\n\u003Cbr /\u003E\n'link-parse-opml.php' is benign but having this file open is bad form.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-02:\n\u003Cbr /\u003E\nCore sends the WordPress team a new draft of the advisory and comments\n\u003Cbr /\u003E\nthat there is no capability specified in Worpress documentation for\n\u003Cbr /\u003E\nconfiguring plugins. Also control of actions registered by plugins is\n\u003Cbr /\u003E\nnot enforced. Core also notices that the privileges unchecked bug in\n\u003Cbr /\u003E\n'admin.php?page=' is fixed on WordPress 2.8.1-beta2 latest development\n\u003Cbr /\u003E\nrelease.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-06:\n\u003Cbr /\u003E\nCore requests WordPress confirmation of the release date of WordPress\n\u003Cbr /\u003E\n2.8.1 and WordPress MU 2.8.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-07:\n\u003Cbr /\u003E\nWordPress team confirms that a release candidate of WordPress 2.8.1 is\n\u003Cbr /\u003E\nmade available to users and that the advisory may be published.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-06:\n\u003Cbr /\u003E\nCore requests WordPress confirmation of the release date of WordPress MU\n\u003Cbr /\u003E\nand WordPress MU new version numbers.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-07:\n\u003Cbr /\u003E\nWordPress team release WordPress 2.8.1 RC1 to its users.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-08:\n\u003Cbr /\u003E\nWordPress team confirms that WordPress MU 2.8.1 will be made available\n\u003Cbr /\u003E\nas soon WordPress 2.8.1 is officially released. Probably July 8th or 9th.\n\u003C/p\u003E\u003Cp\u003E. 2009-07-08:\n\u003Cbr /\u003E\nThe advisory CORE-2009-0515 is published.\n\u003C/p\u003E\u003Cp\u003E10. *References*\n\u003C/p\u003E[1] WordPress vulnerabilities in CVE database\n\u003Cbr /\u003E\n\u003Ca href=\"http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wordpress\"\u003Ehttp://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wordpress\u003C/a\u003E\n\u003Cbr /\u003E\n[2] SecuriTeam List of WordPress Vulnerabilities\n\u003Cbr /\u003E\n\u003Ca href=\"http://www.securiteam.com/products/W/Wordpress.html\"\u003Ehttp://www.securiteam.com/products/W/Wordpress.html\u003C/a\u003E\n\u003Cbr /\u003E\n[3] WordPress Vulnerability - YBO Interactive Blog\n\u003Cbr /\u003E\n\u003Ca href=\"http://www.ybo-interactive.com/blog/2008/03/30/wordpress-vulnerability/\"\u003Ehttp://www.ybo-interactive.com/blog/2008/03/30/wordpress-vulnerability/\u003C/a\u003E\n\u003Cbr /\u003E\n[4] bablooO/blyat attacks on WP 2.7.0 and 2.7.1\n\u003Cbr /\u003E\n\u003Ca href=\"http://wordpress.org/support/topic/280748\"\u003Ehttp://wordpress.org/support/topic/280748\u003C/a\u003E\n\u003Cbr /\u003E\n[5] Security breach - xkcd blog\n\u003Cbr /\u003E\n\u003Ca href=\"http://blag.xkcd.com/2009/06/18/security-breach/\"\u003Ehttp://blag.xkcd.com/2009/06/18/security-breach/\u003C/a\u003E\n\u003Cbr /\u003E\n[6] securityvulns.com WordPress vulnerabilities digest in English\n\u003Cbr /\u003E\n\u003Ca href=\"http://www.securityfocus.com/archive/1/archive/1/485786/100/0/threaded\"\u003Ehttp://www.securityfocus.com/archive/1/archive/1/485786/100/0/threaded\u003C/a\u003E\n\u003Cbr /\u003E\n[7] CVE-2008-0196\n\u003Cbr /\u003E\n\u003Ca href=\"http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0196\"\u003Ehttp://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0196\u003C/a\u003E\n\u003Cbr /\u003E\n[8] WordPress Roles and Capabilities\n\u003Cbr /\u003E\n\u003Ca href=\"http://codex.wordpress.org/Roles_and_Capabilities\"\u003Ehttp://codex.wordpress.org/Roles_and_Capabilities\u003C/a\u003E\n\u003Cbr /\u003E\n[9] WordPress Download Counter\n\u003Cbr /\u003E\n\u003Ca href=\"http://wordpress.org/download/counter/\"\u003Ehttp://wordpress.org/download/counter/\u003C/a\u003E\n\u003Cbr /\u003E\n[10] WordPress Intrusion Detection System Plugin\n\u003Cbr /\u003E\n\u003Ca href=\"http://php-ids.org/2008/02/21/wpids-version-012-released/\"\u003Ehttp://php-ids.org/2008/02/21/wpids-version-012-released/\u003C/a\u003E\n\u003Cbr /\u003E\n[11] Hardening WordPress with htaccess\n\u003Cbr /\u003E\n\u003Ca href=\"http://blogsecurity.net/wordpress/article-210607\"\u003Ehttp://blogsecurity.net/wordpress/article-210607\u003C/a\u003E"} <div class="head"> <h1>CORE-2009-01515 - WordPress Privileges Unchecked in admin.php and Multiple Information</h1> &lt;!-- received="Wed Jul 8 15:41:07 2009" --> &lt;!-- isoreceived="20090708224107" --> &lt;!-- sent="Wed, 08 Jul 2009 19:34:08 -0300" --> &lt;!-- isosent="20090708223408" --> &lt;!-- name="Core Security Technologies Advisories" --> &lt;!-- email="advisories_at_coresecurity.com" --> &lt;!-- subject="CORE-2009-01515 - WordPress Privileges Unchecked in admin.php and Multiple Information" --> &lt;!-- id="4A551EE0.3010303_at_coresecurity.com" --> &lt;!-- charset="ISO-8859-1" --> &lt;!-- expires="-1" --> <ul class="links"><li> <dfn>This message</dfn>: [ <a href="http://seclists.org/bugtraq/2009/Jul/0043.html#start" name="options1">Message body</a> ] [ <a href="http://seclists.org/bugtraq/2009/Jul/0043.html#options2">More options</a> ] </li><li> <dfn>Related messages</dfn>: &lt;!-- unext="start" --> [ <a>Previous message</a> ] &lt;!-- unextthread="start" --> &lt;!-- ureply="end" --> </li></ul> </div> &lt;!-- body="start" --> <address class="headers"> <dfn>From</dfn>: Core Security Technologies Advisories &lt;<a href="mailto:advisories_at_coresecurity.com?Subject=Re:%20CORE-2009-01515%20-%20WordPress%20Privileges%20Unchecked%20in%20admin.php%20and%20Multiple%20Information">advisories_at_coresecurity.com</a>&gt; <br /> <dfn>Date</dfn>: Wed, 08 Jul 2009 19:34:08 -0300<br /> </address> <p> -----BEGIN PGP SIGNED MESSAGE----- <br /> Hash: SHA1 </p><p>      Core Security Technologies - CoreLabs Advisory <br />            <a href="http://www.coresecurity.com/corelabs/">http://www.coresecurity.com/corelabs/</a> </p><p>WordPress Privileges Unchecked in admin.php and Multiple Information <br /> Disclosures </p><p>1. *Advisory Information* </p><p>Title: WordPress Privileges Unchecked in admin.php and Multiple <br /> Information Disclosures <br /> Advisory ID: CORE-2009-0515 <br /> Advisory URL: <br /> <a href="http://corelabs.coresecurity.com/index.php?action=view&amp;type=advisory&amp;name=WordPress_Privileges_Unchecked">http://corelabs.coresecurity.com/index.php?action=view&amp;type=advisory&amp;name=WordPress_Privileges_Unchecked</a> <br /> Date published: 2009-07-08 <br /> Date of last update: 2009-07-08 <br /> Vendors contacted: WordPress <br /> Release mode: Coordinated release </p><p>2. *Vulnerability Information* </p><p>Class: Local file include, Privileges unchecked, Cross site scripting <br /> (XSS), Information disclosure <br /> Remotely Exploitable: Yes <br /> Locally Exploitable: No <br /> Bugtraq ID: 35581, 35584 <br /> CVE Name: CVE-2009-2334, CVE-2009-2335, CVE-2009-2336 </p><p>3. *Vulnerability Description* </p><p>WordPress is a web application written in PHP that allows the easy <br /> installation of a flexible weblog on any computer connected to the <br /> Internet. WordPress 2.7 reached more than 6 million downloads during <br /> June 2009 [9]. </p><p>A vulnerability was found in the way that WordPress handles some URL <br /> requests. This results in unprivileged users viewing the content of <br /> plugins configuration pages, and also in some plugins modifying plugin <br /> options and injecting JavaScript code. Arbitrary native code may be run <br /> by a malicious attacker if the blog administrator runs injected <br /> JavasScript code that edits blog PHP code. Many WordPress-powered blogs, <br /> hosted outside 'wordpress.com', allow any person to create unprivileged <br /> users called subscribers. Other sensitive username information <br /> disclosures were found in WordPress. </p><p>4. *Vulnerable packages* </p><p>   . WordPress 2.8 and previous <br />    . WordPress MU 2.7.1 and previous, used in WordPress.com </p><p>5. *Non-vulnerable packages* </p><p>   . WordPress 2.8.1 <br />    . WordPress MU 2.8.1, used in WordPress.com </p><p>6. *Vendor Information, Solutions and Workarounds* </p><p>Mitigation for the Privileges Unchecked vulnerability (suggested by Core <br /> Security): this vulnerability may be mitigated by controlling access to <br /> files inside the 'wp-admin' folder. Access can be prohibited by using <br /> Apache access control mechanism ('.htaccess' file), see guideline for <br /> more information [11]. </p><p>7. *Credits* </p><p>These vulnerabilities were discovered and researched by Fernando <br /> Arnaboldi and Jos� Orlicki from Core Security Technologies. Further <br /> research was made by Jose Orlicki from Core Security Technologies. </p><p>8. *Technical Description / Proof of Concept Code* </p><p>8.1. *Introduction* </p><p>In the last few years several security bugs were found in WordPress <br /> [1][2]. During 2008, the big amount of bugs reported by researchers lead <br /> to exploitation by blog spammers [3]. During 2009, a new round of <br /> attacks has appeared and security researchers are reporting new bugs or <br /> wrongly fixed previously-reported bugs [4][5]. A path traversal in local <br /> files included by 'admin.php' has been fixed [6][7] but, in our case, we <br /> report that administrative privileges are still unchecked when accessing <br /> any PHP file inside a plugin folder. </p><p>8.2. *Access Control Roles* </p><p>WordPress has a privilege model where any user has an assigned role [8]. <br /> Regarding plugins only users characterized by the role Administrator can <br /> activate plugins. Notice that only the blog hosting owner can add new <br /> plugins because these must by copied inside the host filesystem. The <br /> roles Editor, Author or Subscriber (the latter has the least privileges) <br /> cannot activate plugins, edit plugins, update plugins nor delete plugins <br /> installed by an Administrator. Besides that, the configuration of <br /> specific plugins is a grey area because there is no distinguished <br /> capability assigned [8]. </p><p>Also due to cross-site scripting vulnerabilities inside plugins options <br /> (something very common), non-administrative users reconfiguring plugins <br /> may inject persistent JavaScript code. Possibly arbitrary native code <br /> can be executed by the attacker if the blog administrator runs injected <br /> JavasScript code that injects PHP code. It is important to observe that <br /> many WordPress-powered blogs are configured to allow any blog visitor to <br /> create a Subscriber user without confirmation from the Administrator <br /> role inside the following URL, although by default the Administrator <br /> role must create these new users. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-login.php?action=register <br /> - -----------/ </p><p> This can be modified by the administrator in 'Membership/Anyone can <br /> register'. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-admin/options-general.php <br /> - -----------/ </p><p>8.3. *Privileges Unchecked in admin.php?page= Plugin Local File Includes <br /> (CVE-2009-2334, BID 35581)* </p><p>No privileges are checked on WordPress plugins configuration PHP modules <br /> using parameter 'page' when we replace 'options-general.php' with <br /> 'admin.php'. The same thing happens when replacing other modules such as <br /> 'plugins.php' with 'admin.php'. Basic information disclosure is done <br /> this way. For example, with the following URL a user with no privileges <br /> can see the configuration of plugin Collapsing Archives, if installed. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-admin/admin.php?page=/collapsing-archives/options.txt <br /> - -----------/ </p><p> Instead of the following allowed URL. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-admin/options-general.php?page=collapsing-archives/options.txt <br /> - -----------/ </p><p> Another example of this information disclosure is shown on Akismet, a <br /> plugin shipped by default with WordPress. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-admin/admin.php?page=akismet/readme.txt <br /> - -----------/ </p><p> All plugins we have tested are vulnerable to this kind of information <br /> disclosure, but in many of them the PHP files accessed just crashed. On <br /> the other hand, for example, with capability 'import', privileges are <br /> checked inside 'admin.php': </p><p>/----------- </p><p>if ( ! current_user_can('import') ) <br />     wp_die(__('You are not allowed to import.')); <br /> - -----------/ </p><p> More dangerous scenarios exist, all of them can be exploited by users <br /> with the Subscriber role, the least privileged. </p><p>8.4. *Abuse example: XSS in plugin configuration module* </p><p>If installed, *Related Ways To Take Action* is an example of a WordPress <br /> plugin that is affected by many cross-site scripting vulnerabilities <br /> (XSS) that can be leveraged by an attacker using the unchecked <br /> privileges described in this advisory to inject persistent JavaScript <br /> code. Possibly, arbitrary native code can be executed by the attacker if <br /> the blog administrator, when he/she logs in, runs injected JavasScript <br /> code that edits blog PHP code. The original URL for reconfiguring the <br /> plugin can be accessed only by the Administrator role. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wordpress/wp-admin/options-general.php?page=related-ways-to-take-action/options.php <br /> - -----------/ </p><p> But replacing the PHP file with the generic 'admin.php' any blog user <br /> can modify this configuration. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-admin/admin.php?page=related-ways-to-take-action/options.php <br /> - -----------/ </p><p> The following JavaScript injection can be entered within field *Exclude <br /> actions by term* to exemplify this kind of abuse. When the administrator <br /> enters the same page the injected browser code will be executed and <br /> possibly blog PHP can be modified to run arbitrary native code. </p><p>/----------- </p><p>\"/&gt;&lt;script&gt;alert(String.fromCharCode(88)+String.fromCharCode(83)+String.fromCharCode(83))&lt;/script&gt;&lt;ahref=" </p><p>- -----------/ </p><p> This is the worst scenario that we found for the vulnerability. </p><p>8.5. *Abuse example: viewing WP Security Scanner Plugin Dashboard* </p><p>If installed, the WordPress Security Scanner Plugin dashboard can be <br /> viewed similarly by any user besides the administrator using the plugin <br /> configuration page URL without modification. This dashboard includes <br /> common default blog configuration settings that are insecure and should <br /> be modified by the blog administrator or hosting. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-admin/admin.php?page=wp-security-scan/securityscan.php <br /> - -----------/ </p><p>8.6. *Abuse example: reconfiguring WP-IDS, a WordPress Hardening Project* </p><p>If installed, the *Intrusion Detection System Plugin (WPIDS)*[10] can be <br /> reconfigured accessed with the same vulnerability. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-admin/index.php?page=wp-ids/ids-admin.php <br /> - -----------/ </p><p> This gives an attacker the possibility to disable many features of the <br /> plugin, for example reactivate the forgotten password feature and <br /> reactivate the XML-RPC blog interface. Also you can deny the weblog <br /> service by configuring this plugin to be overly sensitive, blocking any <br /> request. However the plugin cannot be totally disabled because the <br /> essential IDS parameters 'Maximum impact to ignore bad requests' and <br /> 'Minimum impact to sanitize bad requests' are verified on the server <br /> side of the blog and cannot be distorted to deactivate the sanitizing or <br /> blocking features of the web IDS plugin. </p><p>8.7. *Other Information Disclosures (CVE-2009-2335, CVE-2009-2336, BID <br /> 35584)* </p><p>WordPress discriminates bad password from bad user logins, this reduces <br /> the complexity of a brute force attack on WordPress blogs login <br /> (CVE-2009-2335, BID 35584). The same user information disclosure happens <br /> when users use the forgotten mail interface to request a new password <br /> (CVE-2009-2336, same BID 35584). These information disclosures seem to <br /> be previously reported [6] but the WordPress team is refusing to modify <br /> them alleging *user convenience*. </p><p>Default installation of WordPress 2.7.1 leaks the name of the user <br /> posting entries inside the HTML of the blog. </p><p>/----------- </p><p>  &lt;small&gt;June 3rd, 2009 &lt;!-- by leakedusername --&gt;&lt;/small&gt; <br /> - -----------/ </p><p>Also several administrative modules give to anyone the complete path <br /> where the web application is hosted inside the server. This may simplify <br /> or enable other malicious attacks. An example follows. </p><p>/----------- </p><p>http://[some_wordpress_blog]/wp-settings.php <br /> - -----------/ </p><p>/----------- </p><p>Notice: Use of undefined constant ABSPATH - assumed 'ABSPATH' in <br /> [WP_LEAKED_PATH]\wp-settings.php on line 110 <br /> Notice: Use of undefined constant ABSPATH - assumed 'ABSPATH' in <br /> [WP_LEAKED_PATH]\wp-settings.php on line 112 <br /> Warning: require(ABSPATHwp-includes/compat.php) [function.require]: <br /> failed to open stream: <br /> No such file or directory in [WP_LEAKED_PATH]\wp-settings.php on line 246 <br /> Fatal error: require() [function.require]: Failed opening required <br /> 'ABSPATHwp-includes/compat.php' <br /> (include_path='.;[PHP_LEAKED_PATH]\php5\pear') in <br /> [WP_LEAKED_PATH]\wp-settings.php on line 246 </p><p>- -----------/ </p><p>9. *Report Timeline* </p><p>. 2009-06-04: <br /> Core Security Technologies notifies the WordPress team of the <br /> vulnerabilities (security_at_wordpress.&lt;!--nospam-->org) and offers a technical <br /> description encrypted or in plain-text. Advisory is planned for <br /> publication on June 22th. </p><p>. 2009-06-08: <br /> Core notifies again the WordPress team of the vulnerability. </p><p>. 2009-06-10: <br /> The WordPress team asks Core for a technical description of the <br /> vulnerability in plain-text. </p><p>. 2009-06-11: <br /> Technical details sent to WordPress team by Core. </p><p>. 2009-06-11: <br /> WordPress team notifies Core that a fix was produced and is available to <br /> Core for testing. WordPress team asserts that password and username <br /> discrimination as well as username leakage are known and will not be <br /> fixed because they are convenient for the users. </p><p>. 2009-06-12: <br /> Core tells the WordPress team that the patch will be tested by Core as a <br /> courtesy as soon as possible. It also requests confirmation that <br /> WordPress versions 2.8 and earlier, and WordPress.com, are vulnerable to <br /> the flaws included in the advisory draft CORE-2009-0515. </p><p>. 2009-06-12: <br /> WordPress team confirms that WordPress 2.8 and earlier plus <br /> WordPress.com are vulnerable to the flaws included in the advisory draft. </p><p>. 2009-06-17: <br /> Core informs the WordPress team that the patch is only fixing one of the <br /> four proof of concept abuses included in the advisory draft. Core <br /> reminds the WordPress team that the advisory is scheduled to be <br /> published on June 22th but a new schedule can be discussed. </p><p>. 2009-06-19: <br /> Core asks for a new patched version of WordPress, if available, and <br /> notifies the WordPress team that the publication of the advisory was <br /> re-scheduled to June 30th. </p><p>. 2009-06-19: <br /> WordPress team confirms they have a new patch that has the potential to <br /> break a lot of plugins. </p><p>. 2009-06-29: <br /> WordPress team asks for a delayance on advisory CORE-2009-0515 <br /> publication until July 6th, when WordPress MU version will be patched. </p><p>. 2009-06-29: <br /> Core agrees to delay publication of advisory CORE-2009-0515 until July 6th. </p><p>. 2009-06-29: <br /> Core tells the WordPress team that other administrative PHP modules can <br /> also be rendered by non-administrative users, such as module <br /> 'admin-post.php' and 'link-parse-opml.php'. </p><p>. 2009-07-02: <br /> WordPress team comments that 'admin.php' and 'admin-post.php' are <br /> intentionally open and plugins can choose to hook either privileged or <br /> unprivileged actions. They also comment that unprivileged access to <br /> 'link-parse-opml.php' is benign but having this file open is bad form. </p><p>. 2009-07-02: <br /> Core sends the WordPress team a new draft of the advisory and comments <br /> that there is no capability specified in Worpress documentation for <br /> configuring plugins. Also control of actions registered by plugins is <br /> not enforced. Core also notices that the privileges unchecked bug in <br /> 'admin.php?page=' is fixed on WordPress 2.8.1-beta2 latest development <br /> release. </p><p>. 2009-07-06: <br /> Core requests WordPress confirmation of the release date of WordPress <br /> 2.8.1 and WordPress MU 2.8. </p><p>. 2009-07-07: <br /> WordPress team confirms that a release candidate of WordPress 2.8.1 is <br /> made available to users and that the advisory may be published. </p><p>. 2009-07-06: <br /> Core requests WordPress confirmation of the release date of WordPress MU <br /> and WordPress MU new version numbers. </p><p>. 2009-07-07: <br /> WordPress team release WordPress 2.8.1 RC1 to its users. </p><p>. 2009-07-08: <br /> WordPress team confirms that WordPress MU 2.8.1 will be made available <br /> as soon WordPress 2.8.1 is officially released. Probably July 8th or 9th. </p><p>. 2009-07-08: <br /> The advisory CORE-2009-0515 is published. </p><p>10. *References* </p>[1] WordPress vulnerabilities in CVE database <br /> <a href="http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wordpress">http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wordpress</a> <br /> [2] SecuriTeam List of WordPress Vulnerabilities <br /> <a href="http://www.securiteam.com/products/W/Wordpress.html">http://www.securiteam.com/products/W/Wordpress.html</a> <br /> [3] WordPress Vulnerability - YBO Interactive Blog <br /> <a href="http://www.ybo-interactive.com/blog/2008/03/30/wordpress-vulnerability/">http://www.ybo-interactive.com/blog/2008/03/30/wordpress-vulnerability/</a> <br /> [4] bablooO/blyat attacks on WP 2.7.0 and 2.7.1 <br /> <a href="http://wordpress.org/support/topic/280748">http://wordpress.org/support/topic/280748</a> <br /> [5] Security breach - xkcd blog <br /> <a href="http://blag.xkcd.com/2009/06/18/security-breach/">http://blag.xkcd.com/2009/06/18/security-breach/</a> <br /> [6] securityvulns.com WordPress vulnerabilities digest in English <br /> <a href="http://www.securityfocus.com/archive/1/archive/1/485786/100/0/threaded">http://www.securityfocus.com/archive/1/archive/1/485786/100/0/threaded</a> <br /> [7] CVE-2008-0196 <br /> <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0196">http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0196</a> <br /> [8] WordPress Roles and Capabilities <br /> <a href="http://codex.wordpress.org/Roles_and_Capabilities">http://codex.wordpress.org/Roles_and_Capabilities</a> <br /> [9] WordPress Download Counter <br /> <a href="http://wordpress.org/download/counter/">http://wordpress.org/download/counter/</a> <br /> [10] WordPress Intrusion Detection System Plugin <br /> <a href="http://php-ids.org/2008/02/21/wpids-version-012-released/">http://php-ids.org/2008/02/21/wpids-version-012-released/</a> <br /> [11] Hardening WordPress with htaccess <br /> <a href="http://blogsecurity.net/wordpress/article-210607">http://blogsecurity.net/wordpress/article-210607</a><p>[Reposted from <span class="user_container user156520" ><a class="" href="http://lapaille.soup.io/post/22904030/CORE-2009-01515-WordPress-Privileges-Unchecked-in"><span class="name">lapaille</span></a></span>]</p>Thu, 09 Jul 2009 18:51:20 GMThttp://wordpress.soup.io/post/22904047/CORE-2009-01515-WordPress-Privileges-Unchecked-inurn:www-soup-io:1:22904047regular [lapaille] wordpress urgent update {"tags":[],"type":"regular","title":"wordpress urgent update","source":null,"body":"http://www.securitytracker.com/alerts/2009/Jul/1022528.html"} <a href="http://www.securitytracker.com/alerts/2009/Jul/1022528.html">http://www.securitytracker.com/alerts/2009/Jul/1022528.html</a>Thu, 09 Jul 2009 18:43:47 GMThttp://wordpress.soup.io/post/22903634/wordpress-urgent-updateurn:www-soup-io:1:22903634regular [rsturk] A Flash page that loads in content from wordpress. {"tags":[],"type":"link","title":"A Flash page that loads in content from wordpress.","source":"http://tvwonline.net/flash/#/page_id=47/","body":null} <p><a href="http://tvwonline.net/flash/#/page_id=47/">http://tvwonline.net/flash/#/page_id=47/</a></p>Sat, 03 Jan 2009 23:11:03 GMThttp://wordpress.soup.io/post/10544787/A-Flash-page-that-loads-in-contenturn:www-soup-io:1:10544787link