Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.
Quelldateien prüfen
Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Ein direkter Befehl überspringt den Prüf-Prompt. Prüfen Sie die Quelle, bevor Sie ihn ausführen.
Test File Extensions Handling for Sensitive Information
High-Level Description
This test examines how the web server handles different file extensions. Misconfigured servers may expose source code, include files, backup files, or other sensitive content when requested with specific extensions. Attackers exploit these misconfigurations to access database credentials, API keys, and other sensitive information stored in files that should never be served directly.
# Extensions that should never be served
dangerous_exts=(".inc"".config"".conf"".cfg"".ini"".sql"".db"".sqlite"".mdb"".log"".bak"".backup"".old"".asa"".asax"".ascx"".ashx"".asmx"".yml"".yaml"".json"".xml"".env"".htaccess"".htpasswd")
for ext in"${dangerous_exts[@]}"; do# Test common filenames with this extensionfor name in config database connection settings credentials secrets; do
test_file="${name}${ext}"
status=$(curl -s -o /dev/null -w "%{http_code}""https://target.com/$test_file")
if [ "$status" == "200" ]; thenecho"FOUND: $test_file"fidonedone
Step 4: Include File Discovery
# Common include file patterns
includes=("connection.inc""config.inc""database.inc""db.inc""conn.inc""settings.inc""common.inc""global.inc""init.inc""functions.inc""class.inc")
for file in"${includes[@]}"; do
status=$(curl -s -o /dev/null -w "%{http_code}""https://target.com/$file")
if [ "$status" == "200" ]; thenecho"INCLUDE FILE FOUND: $file"# Check content for sensitive data
curl -s "https://target.com/$file" | head -50
fidone
# Test case variations (especially on Windows/IIS)
original="config.php"
variations=("Config.php""CONFIG.PHP""config.PHP""CONFIG.php""config.Php""cOnFiG.pHp")
for var in"${variations[@]}"; do
status=$(curl -s -o /dev/null -w "%{http_code}""https://target.com/$var")
echo"$var: $status"done
Step 7: Double Extension Testing
# Double extension bypass attemptsfor ext in .php .asp .aspx .jsp; do
test_files=(
"file${ext}.txt""file${ext}.jpg""file.txt${ext}""file${ext}.""file${ext}::DATA"# NTFS alternate data stream
)
for file in"${test_files[@]}"; do
status=$(curl -s -o /dev/null -w "%{http_code}""https://target.com/$file")
echo"$file: $status"donedone
Step 8: Windows 8.3 Filename Testing
# Windows short filename exploitation# If file exists as "configuration.php", test:
short_names=("CONFIG~1.PHP""CONFIG~1.PHT""SHELL~1.PHP")
for name in"${short_names[@]}"; do
status=$(curl -s -o /dev/null -w "%{http_code}""https://target.com/$name")
echo"$name: $status"done
# Block specific extensions
<FilesMatch "\.(inc|config|sql|bak|backup|old|log|env)$">
Require all denied
</FilesMatch>
# Block backup patterns
<FilesMatch "(\.(bak|backup|old|save|swp|tmp)|~)$">
Require all denied
</FilesMatch>
# Block version control
<DirectoryMatch "^\.|\/\.">
Require all denied
</DirectoryMatch>
# Keep sensitive files outside web root
/var/www/html/ <- Web root (public)
/var/www/includes/ <- Include files (outside web root)
/var/www/config/ <- Configuration (outside web root)
# PHP include path
include('/var/www/includes/database.php');