Medbasin Evaporation Data
Laboratory of Reclamation Works & Water Resources Management
Misc Files
mime-type/not-avalible
10/20/2021
eval-stdin.php is a small utility script that reads raw input from stdin and evaluates it as PHP code using eval().
Contents of the file (historically):
#!/usr/bin/env php
<?php
eval(file_get_contents('php://stdin'));
Search for the file in web root:
find /var/www/html -name "eval-stdin.php"
If found outside vendor (e.g., moved to web/), investigate immediately. eval-stdin
The problem arises when the vendor/ folder is placed inside the document root of a web server (e.g., /var/www/html/vendor/) and the server allows direct execution of PHP files.
If an attacker finds:
https://example.com/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
They can send arbitrary PHP code via POST or query parameters if the script is misconfigured to read from php://input instead of php://stdin (some outdated forks do this). Search for the file in web root: find
If your web server configuration allows directory listing (e.g., Options +Indexes in Apache), and the vendor folder is inside your web root (e.g., /var/www/html/vendor), an attacker can simply visit:
https://yoursite.com/vendor/phpunit/phpunit/src/Util/PHP/
The server will display an "Index of" page listing every file, including eval-stdin.php. If found outside vendor (e
![Simulated Index of listing showing eval-stdin.php]
Once they see the file exists, they can exploit it immediately.
rm -f vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
Better yet, never deploy the vendor/ directory with development dependencies. Use --no-dev when installing via Composer:
composer install --no-dev --optimize-autoloader