[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/devploit/php2shell/main/tools/php2shell_paths.py [Back]  [Original]

#!/usr/bin/env python3
"""Shared path resolution for the upstream PHP2Shell checkout."""

from __future__ import annotations

import contextlib
import os
from pathlib import Path

ROOT = Path(__file__).resolve().parent.parent
VENDOR = ROOT / "vendor" / "php2shell-upstream"
FALLBACK = Path("/tmp/php2shell-rce")


def prepare_lab_out(path: str | Path) -> str:
    """Create a lab output directory the container user can write to."""
    target = Path(path)
    target.mkdir(parents=True, exist_ok=True)
    with contextlib.suppress(OSError):
        target.chmod(0o777)
    return str(target)


def default_repo_dir() -> str:
    """Prefer the bootstrapped checkout, then the historical /tmp clone."""
    env = os.environ.get("P2S_REPO_DIR")
    if env:
        return env
    if (VENDOR / "exploit.py").is_file():
        return str(VENDOR)
    return str(FALLBACK)

Web Proxy Viewer  |  New URL  |  Original Page