PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Micro CMS


phenom
23.09.2012, 13:41
Habe da mal was Interessantes gefunden.

https://www.entwickler-konferenz.de/zonen/portale/psecom,id,250,security,30656,p,0.html

Ev. weis ja einer die Lösung.Auch wenn dort steht

Lösung:
Die SQL-Injection-Schwachstelle erlaubt u.a. das Umgehen der Authentifizierung.
Eine Lösung ist nicht verfügbar.

LG
phenom

ike
23.09.2012, 14:30
Das Ding ist schrott, da ist ja überhaupt nix abgesichert.

phenom
23.09.2012, 14:34
Das Ding ist schrott, da ist ja überhaupt nix abgesichert.

Ich weis zwar jetzt nich was Du meinst,aber was solls.

Wo ist was nicht abgesichert, und was ist Schrott?

Übrigens habe ich genau diese Meldung von einem Tracker erhalten.

ike
23.09.2012, 15:26
Ich weis zwar jetzt nich was Du meinst,aber was solls.

Nicht? Das ist traurig, solange wie du schon dabei bist sollte man meinen das du das selbst siehst. Es werden weder Ausgaben noch Eingaben gefiltert.

Wo ist was nicht abgesichert, und was ist Schrott?

Überall!

Auszug aus microcms-admin-login.php:
$sql = '
SELECT *
FROM microcms_administrators
WHERE administrators_username = "' . $_POST['administrators_username'] . '" and
administrators_pass = PASSWORD("' . $_POST['administrators_pass'] . '")';
$user_result = mysql_query($sql);Auszug aus microcms-admin-home.php:

if ($_GET['action'] == 'delete_blurb') {
$result = mysql_query('
SELECT *
FROM microcms_content_blurbs
WHERE content_blurbs_id = "' . $_GET['id'] . '"');
$row = mysql_fetch_array($result);

$delete = mysql_query('
DELETE FROM microcms_content_blurb_history
WHERE content_blurbs_variable = "' . $row['content_blurbs_variable'] . '"');

$delete = mysql_query('
DELETE FROM microcms_content_blurbs
WHERE content_blurbs_id = "' . $_GET['id'] . '"');
echo mysql_error();
$result_div .= getResultDiv('<strong>The blurb has been removed.</strong>','success');
}

/............../

$admin_block .= '
<tr>
<td class="' . $row_style . '">' . $row['administrators_id'] . '</td>
<td class="' . $row_style . '">' . $row['administrators_username'] . '</td>
<td class="' . $row_style . '">' . $level . '</td>
<td class="' . $row_style . '"><a href="mailto:' . $row['administrators_email'] . '">' . $row['administrators_email'] . '</a></td>
<td class="' . $row_style . '">
<a onClick="switchImage (\'micro_cms_files/images/plus.gif\',\'micro_cms_files/images/minus.gif\',\'admin_image_' . $row['administrators_id'] . '\')" href="javascript:toggleLayer(\'edit-' . $row['administrators_id'] . '\');"><img src="micro_cms_files/images/plus.gif" name="admin_image_' . $row['administrators_id'] . '" id="admin_image_' . $row['administrators_id'] . '" /></a>

<div class="hidden highlighted-border" id="edit-' . $row['administrators_id'] . '">

<form action="microcms-admin-home.php" method="post">
<input type="hidden" name="action" value="change_password" />
<input type="hidden" name="administrators_id" value="' . $row['administrators_id'] . '" />
New Pass: <input type="text" size="10" name="administrators_password" />
<input type="submit" value="Change Pass &gt;" />
</form>
</div>
</td>
<td class="' . $row_style . ' nowrap">
<form action="microcms-admin-home.php" method="post">
<input type="hidden" name="action" value="delete_admin" />
<input type="hidden" name="administrators_id" value="' . $row['administrators_id'] . '" />
<input type="submit" value="Delete" onclick="return confirm(\'Are you sure you want to delete the following administrator: ' . $row['administrators_username'] . '?\')" />
</form>
</td>
</tr>';
}

Übrigens habe ich genau diese Meldung von einem Tracker erhalten.

Mit recht, ist ja auch Schrott ;-)

Stifler
23.09.2012, 15:39
Steht sogar auf deren Website
We have taken down the IBD Micro-CMS demo for now, due to some security issues. As soon as we are able, we will be putting it back up.

phenom
23.09.2012, 17:51
Nicht? Das ist traurig, solange wie du schon dabei bist sollte man meinen das du das selbst siehst. Es werden weder Ausgaben noch Eingaben gefiltert.



Überall!

Auszug aus microcms-admin-login.php:
$sql = '
SELECT *
FROM microcms_administrators
WHERE administrators_username = "' . $_POST['administrators_username'] . '" and
administrators_pass = PASSWORD("' . $_POST['administrators_pass'] . '")';
$user_result = mysql_query($sql);Auszug aus microcms-admin-home.php:

if ($_GET['action'] == 'delete_blurb') {
$result = mysql_query('
SELECT *
FROM microcms_content_blurbs
WHERE content_blurbs_id = "' . $_GET['id'] . '"');
$row = mysql_fetch_array($result);

$delete = mysql_query('
DELETE FROM microcms_content_blurb_history
WHERE content_blurbs_variable = "' . $row['content_blurbs_variable'] . '"');

$delete = mysql_query('
DELETE FROM microcms_content_blurbs
WHERE content_blurbs_id = "' . $_GET['id'] . '"');
echo mysql_error();
$result_div .= getResultDiv('<strong>The blurb has been removed.</strong>','success');
}

/............../

$admin_block .= '
<tr>
<td class="' . $row_style . '">' . $row['administrators_id'] . '</td>
<td class="' . $row_style . '">' . $row['administrators_username'] . '</td>
<td class="' . $row_style . '">' . $level . '</td>
<td class="' . $row_style . '"><a href="mailto:' . $row['administrators_email'] . '">' . $row['administrators_email'] . '</a></td>
<td class="' . $row_style . '">
<a onClick="switchImage (\'micro_cms_files/images/plus.gif\',\'micro_cms_files/images/minus.gif\',\'admin_image_' . $row['administrators_id'] . '\')" href="javascript:toggleLayer(\'edit-' . $row['administrators_id'] . '\');"><img src="micro_cms_files/images/plus.gif" name="admin_image_' . $row['administrators_id'] . '" id="admin_image_' . $row['administrators_id'] . '" /></a>

<div class="hidden highlighted-border" id="edit-' . $row['administrators_id'] . '">

<form action="microcms-admin-home.php" method="post">
<input type="hidden" name="action" value="change_password" />
<input type="hidden" name="administrators_id" value="' . $row['administrators_id'] . '" />
New Pass: <input type="text" size="10" name="administrators_password" />
<input type="submit" value="Change Pass &gt;" />
</form>
</div>
</td>
<td class="' . $row_style . ' nowrap">
<form action="microcms-admin-home.php" method="post">
<input type="hidden" name="action" value="delete_admin" />
<input type="hidden" name="administrators_id" value="' . $row['administrators_id'] . '" />
<input type="submit" value="Delete" onclick="return confirm(\'Are you sure you want to delete the following administrator: ' . $row['administrators_username'] . '?\')" />
</form>
</td>
</tr>';
}

Mit recht, ist ja auch Schrott ;-)

hm.. ich weis ja nich wo du die php´s jetzt ausgeraben hast,kann sie auf der seite von oben nicht finden.aber das sollte auch nur ein hinweis sein,das es solch eine lücke gibt.nunja,lass ich es beim nächsten mal.

Thunder™
23.09.2012, 18:00
ist auf deutsch ne Einladung vorbei zu schauen..^^

ike
23.09.2012, 18:16
aber das sollte auch nur ein hinweis sein

FALSCH! Du hast gefragt ob jemand weiß wie die Lücke geschlossen wird.

das es solch eine lücke gibt.nunja,lass ich es beim nächsten mal.

Du fühlst dich jetzt ernsthaft ans Bein gepisst weil ich sage das das Teil schrott ist? Ist ja wohl ein Scherz!

Gib beim Admin-Login als Benutzername deinen Namen und bei Passwort {") OR 1=1 -- } ohne die {} ein, dann siehst du warum das Teil Schrott ist!


Ich befürchte aber langsam das du nichtmal weißt das die Meldung um dieses CMS geht: http://www.impliedbydesign.com/ibd-micro-cms-static-content-manager.html

phenom
23.09.2012, 18:55
FALSCH! Du hast gefragt ob jemand weiß wie die Lücke geschlossen wird.



Du fühlst dich jetzt ernsthaft ans Bein gepisst weil ich sage das das Teil schrott ist? Ist ja wohl ein Scherz!

Gib beim Admin-Login als Benutzername deinen Namen und bei Passwort {") OR 1=1 -- } ohne die {} ein, dann siehst du warum das Teil Schrott ist!


Ich befürchte aber langsam das du nichtmal weißt das die Meldung um dieses CMS geht: IBD Micro CMS 3.5: A Simple, SEO, AJAX-Based Content Management System | Implied By Design (http://www.impliedbydesign.com/ibd-micro-cms-static-content-manager.html)

Mag sein, ich wollte damit nur sagen,das die behaupten ,das es noch keine Lösung dafür gibt, und ev. einer hier schlauer ist.Scheint aber eher nich der Fall zu sein.Und falls Du es noch nicht bemerkt hast, die
Lücke soll extra zum Ausprobieren sein,oder meinst Du allen Ernstes, eine Seite wie https://www.entwickler-konferenz.de (https://www.entwickler-konferenz.de/zonen/portale/psecom,id,250,security,30656,p,0.html) lassen so eine Sicherheitslücke zu?Ich denke mal,das soll zur Anschaung dienen.

ike
23.09.2012, 19:04
Ach Kind, dass ist mir zu blöd. Seit 2008 hier angemeldet und fast 600 Beiträge aber nichtmal wissen wie man Eingaben filtert.

bl0bb
23.09.2012, 19:23
Warum wird hier so ein Wind gemacht? Die Meldung ist 3 Jahre alt, und das CMS schon lange tot.

phenom
23.09.2012, 19:29
Ach Kind, dass ist mir zu blöd. Seit 2008 hier angemeldet und fast 600 Beiträge aber nichtmal wissen wie man Eingaben filtert.

Ich schon,aber ev. einige andere nicht.Aber hier kann zugemacht werden,kommt eh nix vernünftiges bei rum.

Lex
23.09.2012, 21:42
Damit wäre hier dann wohl erstma dicht.


http://www.netvision-technik.de/forum/picture.php?albumid=44&pictureid=254


Lg Lex