Habe den Inhalt der PHP-Datei in Bash ausgeführt. Konnten einige Befehle ausgeführt werden?

Habe den Inhalt der PHP-Datei in Bash ausgeführt. Konnten einige Befehle ausgeführt werden?

Ich habe dies versehentlich als Superuser auf dem Produktionsserver in Bash eingefügt.

Jetzt esse ich Nägel.

Ich habe jede Zeile durchgesehen und die meisten davon erzeugen Syntaxfehler. Aber gibt es etwas Böses, das das Server-Betriebssystem beschädigen könnte? Oder Dateien? Oder irgendetwas?

Dies ist Ubuntu Server 14.04.

Wie kann ich diagnostizieren, welche Befehle ausgeführt wurden und was sie bewirkt haben?

Der Verlauf ist ein offensichtlicher Ort, aber er zeigt nicht, was ausgeführt wurde und von welchem ​​Programm. Gibt es eine Möglichkeit, diese Art von Dummheit zu diagnostizieren?

<?php
/**
 * The base configurations of the WordPress.
 *
 * This file has the following configurations: MySQL settings, Table Prefix,
 * Secret Keys, WordPress Language, and ABSPATH. You can find more information
 * by visiting {@link http://codex.wordpress.org/Editing_wp-config.php Editing
 * wp-config.php} Codex page. You can get the MySQL settings from your web host.
 *
 * This file is used by the wp-config.php creation script during the
 * installation. You don't have to use the web site, you can just copy this file
 * to "wp-config.php" and fill in the values.
 *
 * @package WordPress
 */

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', '');

/** MySQL database username */
define('DB_USER', '');

/** MySQL database password */
define('DB_PASSWORD', '');

/** MySQL hostname */
define('DB_HOST', 'localhost');

/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');

/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');

/**#@+
 * Authentication Unique Keys and Salts.
 *
 * Change these to different unique phrases!
 * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
 * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'N%___i}IF<(o&h<;|_/0g-OYxEeU)Pq_JM@x!`S^-*[*$$#`|Lp|4R|');
define('SECURE_AUTH_KEY',  '.JyD{}94,kBQB`>&>)sT@4bMl|}SxJQ~ 1NUw^RdQ;QrLVC#].#64k');
define('LOGGED_IN_KEY',    '2ClY{7eA4933w3qEQ(L>o<{`WD|t-b4B<KW;psm6qa_Mmk.f~N1$]8');
define('NONCE_KEY',        ' $QAiTez.wIq_},tNekyQYgU3:;>y-[LT-vR8X{r+kuG-t!C>');
define('AUTH_SALT',        '!#0MnA@UTy]~CN#[Akn-2M<fEuGjSH,*Bu7B[!@@.owHb:G-_PXvP_');
define('SECURE_AUTH_SALT', '%DXWY0|+SkU%!aC.aXG#T{ |YZE|X.VyfVx8QW:bX+2sZ(7cw98i');
define('LOGGED_IN_SALT',   '{d}Pn%i>?B &Q@#Dw+*Xal^eD`xK4wet8=k+F9Tr2}2H75.@+{g+)');
define('NONCE_SALT',       ']3gOf&v-43GEe`hOqnu_1TwZeqU!ZIm-8}Lm1&0;pW7d`,4[QTT');

/**#@-*/

/**
 * WordPress Database Table prefix.
 *
 * You can have multiple installations in one database if you give each a unique
 * prefix. Only numbers, letters, and underscores please!
 */
$table_prefix  = 'wp_';

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 */
define('WP_DEBUG', false);

/* That's all, stop editing! Happy blogging. */

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/');

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

Antwort1

Wenn dies in einem Verzeichnis mit (nicht versteckten) Dateien passiert, *wird jede Zeile, die mit beginnt, zu einer Liste der (nicht versteckten) Dateien im Verzeichnis erweitert und versucht, die erste als Befehl auszuführen 1 . Wenn Sie .in Ihrem haben PATH, wird versucht, auszuführendiese Datei; wenn es nicht ausführbar ist, erhalten Sie nur eine Fehlermeldung. Wenn Sie nicht .in Ihrem haben PATH, wird versucht, einen Befehl mit diesem Namen auszuführen. Zum Beispiel in dem unwahrscheinlichen Fall, dass Ihr aktuelles Verzeichnis die Dateien enthält

rm
romeo
sierra
tango

dann ist die

* The base configurations of the WordPress.

Befehl wird erweitert als

rm romeo sierra tango The base configurations of the WordPress.

Ich gehe davon aus, dass Sie es inzwischen bemerkt hätten, wenn das passiert wäre (aber ich rate Ihnen, nachzuschauen, echo *ob die erste Datei ein gültiger Befehl ist).

Es gibt ähnliche Bedenken für die Zeilen, die beginnen /**, aber dies wird sich wahrscheinlich zu etwas wie ausweiten /bin /dev /etc /home /lib …, was zu folgendem Ergebnis führen wird:

bash: /bin: is a directory

Im unwahrscheinlichen Fall, dass Sie eine Shell-Variable namens haben table_prefix, dann

$table_prefix  = 'wp_';

erweitert diese Variable und versucht, sie auszuführen. Wenn table_prefixnicht definiert ist, wird versucht, das Obige als Befehl auszuführen =(und es gibt meines Wissens keinen solchen Befehl auf Standard-Unix-Systemen).

Sonst fällt mir kein Problem auf.


1   Sofern nichts anderes in der Zeile steht, das einen Syntaxfehler darstellt, beispielsweise ein unausgeglichenes ).

verwandte Informationen