Linux サーバー保護: ディレクトリ トラバーサル攻撃から Web インターフェイスを保護する
ディレクトリ トラバーサル攻撃は、攻撃者がシステム ファイル パスや機密情報にアクセスしようとする一般的なネットワーク セキュリティの脅威です。不正アクセスを取得するファイル。 Web アプリケーションでは、ディレクトリ トラバーサル攻撃は、URL パスを操作することによって実装されることが多く、攻撃者は特別なディレクトリ トラバーサル文字 (「../」など) を入力して、アプリケーション コンテキストの外側のディレクトリに移動します。
Web インターフェイスに対するディレクトリ トラバーサル攻撃を防ぐために、次の措置を講じてサーバーのセキュリティを保護できます。
function validateInput(input) { // 过滤掉特殊字符 const pattern = /../g; return !pattern.test(input); } // 例子 const userInput = "../../etc/passwd"; if (validateInput(userInput)) { // 处理用户输入 // ... } else { // 输入无效,可能存在目录遍历攻击 // ... }
import java.nio.file.Path; import java.nio.file.Paths; public class FileProcessor { public void processFile(String filename) { // 使用绝对路径 Path filePath = Paths.get("/var/www/html", filename); // ... } } // 例子 FileProcessor fileProcessor = new FileProcessor(); fileProcessor.processFile("index.html");
たとえば、Apache サーバーの場合、構成ファイル (「httpd.conf」など) で次の権限ルールを設定できます。
<Directory /var/www/html> Options None AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.1 </Directory>
上記の設定では、ローカル ループバック アドレス (127.0.0.1) を除く /var/www/html ディレクトリへのすべてのアクセスが無効になります。
def isFileAllowed(filePath): allowedFiles = ['/var/www/html/index.html', '/var/www/html/style.css'] return filePath in allowedFiles # 例子 userFilePath = "/var/www/html/../../../etc/passwd" if isFileAllowed(userFilePath): # 处理用户请求 # ... else: # 文件不在白名单中 # ...
上記は、Web インターフェイスをディレクトリ トラバーサル攻撃から保護するための基本的な対策です。ただし、サイバーセキュリティは継続的な取り組みであり、システムのセキュリティを確保するために、定期的にソフトウェアを更新し、脆弱性にパッチを当て、定期的なセキュリティ監査と侵入テストを実施する必要があることを忘れないでください。
以上がLinux Server Guard: Web インターフェイスをディレクトリ トラバーサル攻撃から保護します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。