Attachments Sicherheit
Moderator: Thorsten
Re: Attachments Sicherheit
Guten Morgen
Vielen Dank, habe es gerade getestet.
Nun können auch uneingeloggte User Dateien herunterladen - das funktioniert.
Wenn sie aber den Link kennen, dann können unregistrierte User auch Dateien herunterladen, die sie nicht dürften. Ebenfalls können registrierte User aus einer Gruppe Dateien herunterladen, wozu sie nicht berechtig sind.
Gruss
thomas
Vielen Dank, habe es gerade getestet.
Nun können auch uneingeloggte User Dateien herunterladen - das funktioniert.
Wenn sie aber den Link kennen, dann können unregistrierte User auch Dateien herunterladen, die sie nicht dürften. Ebenfalls können registrierte User aus einer Gruppe Dateien herunterladen, wozu sie nicht berechtig sind.
Gruss
thomas
Re: Attachments Sicherheit
Hi,
das Szenario hatte ich vergessen, sorry, ich gucks mir an.
bye
Thorsten
das Szenario hatte ich vergessen, sorry, ich gucks mir an.
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist
Re: Attachments Sicherheit
Hi,
der Check auf die Rechte des Users wurde nicht ausgewertet... doofer Fehler!
Hier der Fix: https://github.com/thorsten/phpMyFAQ/co ... d6966dd840
bye
Thorsten
der Check auf die Rechte des Users wurde nicht ausgewertet... doofer Fehler!
Hier der Fix: https://github.com/thorsten/phpMyFAQ/co ... d6966dd840
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist
Re: Attachments Sicherheit
Hallo
Vielen Dank für die schnelle Bearbeitung.
Leider ist es nun aber so, dass der Download überhaupt nicht mehr funktioniert.
Dies ist meine attachment.php Datei:
Gruss
thomas
Vielen Dank für die schnelle Bearbeitung.
Leider ist es nun aber so, dass der Download überhaupt nicht mehr funktioniert.
Dies ist meine attachment.php Datei:
Gruss
thomas
Code: Select all
<?php
/**
* Handle attachment downloads
*
* PHP Version 5.2
*
* The contents of this file are subject to the Mozilla Public License
* Version 1.1 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS"
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
* License for the specific language governing rights and limitations
* under the License.
*
* @category phpMyFAQ
* @package Frontend
* @author Anatoliy Belsky <ab@php.net>
* @copyright 2009-2012 phpMyFAQ Team
* @license http://www.mozilla.org/MPL/MPL-1.1.html Mozilla Public License Version 1.1
* @link http://www.phpmyfaq.de
* @since 2009-06-23
*/
if (!defined('IS_VALID_PHPMYFAQ')) {
header('Location: http://' . $_SERVER['HTTP_HOST'].dirname($_SERVER['SCRIPT_NAME']));
exit();
}
set_time_limit(0);
if (headers_sent()) {
die();
}
$attachmentErrors = array();
$permission = false;
// authenticate with session information
$user = PMF_User_CurrentUser::getFromSession($faqconfig->get('security.ipCheck'));
if (!$user instanceof PMF_User_CurrentUser) {
$user = new PMF_User_CurrentUser(); // user not logged in -> empty user object
}
$id = PMF_Filter::filterInput(INPUT_GET, 'id', FILTER_VALIDATE_INT);
$attachment = PMF_Attachment_Factory::create($id);
$userPermission = $faq->getPermission('user', $attachment->getRecordId());
$groupPermission = $faq->getPermission('group', $attachment->getRecordId());
if (count($groupPermission) && in_array($groupPermission[0], $user->perm->getUserGroups($user->getUserId()))) {
$permission = true;
}
if (in_array(-1, $userPermission) || in_array($user->getUserId(), $userPermission)) {
$permission = true;
} else {
$permission = false;
}
if ($attachment && $permission) {
try {
$att->rawOut();
exit(0);
} catch (Exception $e) {
$attachmentErrors[] = $PMF_LANG['msgAttachmentInvalid'];
}
} else {
$attachmentErrors[] = $PMF_LANG['ad_att_none'];
}
// If we're here, there was an error with file download
$tpl->processBlock('writeContent', 'attachmentErrors', array('item' => implode('<br/>', $attachmentErrors)));
$tpl->processTemplate('writeContent', array());
$tpl->includeTemplate('writeContent', 'index');Re: Attachments Sicherheit
Hi,
ich brauch mehr Kaffee... hier der Fix: https://github.com/thorsten/phpMyFAQ/co ... 2d30e08049
Viele Grüße
Thorsten
ich brauch mehr Kaffee... hier der Fix: https://github.com/thorsten/phpMyFAQ/co ... 2d30e08049
Viele Grüße
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist
Re: Attachments Sicherheit
Hallo
Vielen Dank - der Download funktioniert wieder.
Das sicherheitstechnische Problem bleibt aber weiterhin bestehen.
Als nicht registrierter User kann ich mit dem Direktlink z.B. index.php?action=attachment&id=113 auf die Datei zugreifen, die eigentlich nur registrierten Nutzern vorbehalten ist. Ebenfalls können registrierte Nutzer Dateien herunterladen, die sie eigentlich nicht dürfen könnten...
Gruss
thomas
Vielen Dank - der Download funktioniert wieder.
Das sicherheitstechnische Problem bleibt aber weiterhin bestehen.
Als nicht registrierter User kann ich mit dem Direktlink z.B. index.php?action=attachment&id=113 auf die Datei zugreifen, die eigentlich nur registrierten Nutzern vorbehalten ist. Ebenfalls können registrierte Nutzer Dateien herunterladen, die sie eigentlich nicht dürfen könnten...
Gruss
thomas
Re: Attachments Sicherheit
Hi,
bei mir kommt ein nicht angemeldeter User einen Fehlerhinweis, wenn er ein Attachment eines Artikles auswählen will, welcher nur einem User oder einer Gruppe zugewiesen ist.
Wie sehen die Rechte für den betreffenden Artikel aus?
bye
Thorsten
bei mir kommt ein nicht angemeldeter User einen Fehlerhinweis, wenn er ein Attachment eines Artikles auswählen will, welcher nur einem User oder einer Gruppe zugewiesen ist.
Wie sehen die Rechte für den betreffenden Artikel aus?
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist
Re: Attachments Sicherheit
Hallo
In dieser FAQ gibt es drei verschiedene Zugrifflevels.
Öffentlich ohne Login
Dann habe ich zwei Gruppen und zwei User erstellt. Ein User ist Mitglied beider Gruppen und der andere User Mitglied einer Gruppe.
Bei Gruppenrechte steht also z.B. : Eingeschränkter Zugriff für "Gruppe 1"
Und bei Benutzerrechte: Zugriff für alle Benutzer. (bei allen Artikeln steht das so - ich nutze ausschliesslich die Gruppenrechte)
Gruss
thomas
In dieser FAQ gibt es drei verschiedene Zugrifflevels.
Öffentlich ohne Login
Dann habe ich zwei Gruppen und zwei User erstellt. Ein User ist Mitglied beider Gruppen und der andere User Mitglied einer Gruppe.
Bei Gruppenrechte steht also z.B. : Eingeschränkter Zugriff für "Gruppe 1"
Und bei Benutzerrechte: Zugriff für alle Benutzer. (bei allen Artikeln steht das so - ich nutze ausschliesslich die Gruppenrechte)
Gruss
thomas
Re: Attachments Sicherheit
Hi,
okay... und für welchen User mit welcher Berechtigung klappt es nicht?
Dann kann ich das mal nachspielen...
bye
Thorsten
okay... und für welchen User mit welcher Berechtigung klappt es nicht?
Dann kann ich das mal nachspielen...
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist
Re: Attachments Sicherheit
Hallo
Der Download funktioniert überall - allein die Berechtigungen stimmen nicht.
Es gibt diesen Downloadlink: index.php?action=attachment&id=113
Dieser Link sollte eigentlich nur bei dem User funktionieren, der Mitglied von beiden Gruppen ist.
Dieser Link funktioniert aber auch beim User, der nur bei einer Gruppe Mitglied ist und der Link funktioniert sogar bei nicht registrierten Usern, die den Link kennen.
Gruss
thomas
Der Download funktioniert überall - allein die Berechtigungen stimmen nicht.
Es gibt diesen Downloadlink: index.php?action=attachment&id=113
Dieser Link sollte eigentlich nur bei dem User funktionieren, der Mitglied von beiden Gruppen ist.
Dieser Link funktioniert aber auch beim User, der nur bei einer Gruppe Mitglied ist und der Link funktioniert sogar bei nicht registrierten Usern, die den Link kennen.
Gruss
thomas
Re: Attachments Sicherheit
Hi,
dann bitte nochmal das hier testen: https://github.com/thorsten/phpMyFAQ/co ... 4036250bff
Danke für deine Hilfe!
bye
Thorsten
dann bitte nochmal das hier testen: https://github.com/thorsten/phpMyFAQ/co ... 4036250bff
Danke für deine Hilfe!
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist
Re: Attachments Sicherheit
Hallo
Vielen Dank für deinen Support!
Nun ist es so:
Im öffentlichen Bereich (ohne Anmeldung) kann ich alle Anhänge - auch diejenigen, von denen ich keine Berechtigung habe - herunterladen.
Sobald ich eingeloggt bin - egal als welcher User - kommt beim Herunterladen diese Meldung:
"Keine Anhänge vorhanden"
Gruss
thomas
Vielen Dank für deinen Support!
Nun ist es so:
Im öffentlichen Bereich (ohne Anmeldung) kann ich alle Anhänge - auch diejenigen, von denen ich keine Berechtigung habe - herunterladen.
Sobald ich eingeloggt bin - egal als welcher User - kommt beim Herunterladen diese Meldung:
"Keine Anhänge vorhanden"
Gruss
thomas
Re: Attachments Sicherheit
Hi,
das kann nicht sein, ich hab den Code nun mehrfach schon gecheckt... kann ich mir deine FAQ mal ansehen oder einen Abzug der DB bekommen?
bye
Thorsten
das kann nicht sein, ich hab den Code nun mehrfach schon gecheckt... kann ich mir deine FAQ mal ansehen oder einen Abzug der DB bekommen?
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist
Re: Attachments Sicherheit
Hallo
Aber klar doch. Sage mir einfach, was für dich am einfachsten ist und ich gebe dir die entsprechenden Daten oder Logins
Gruss
thomas
Aber klar doch. Sage mir einfach, was für dich am einfachsten ist und ich gebe dir die entsprechenden Daten oder Logins
Gruss
thomas
Re: Attachments Sicherheit
Hi,
schreib mir einfach ne Mail an thorsten AT phpmyfaq DOT de
Danke!
bye
Thorsten
schreib mir einfach ne Mail an thorsten AT phpmyfaq DOT de
Danke!
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
amazon.de Wishlist