Complete Beginner Certificate - tconklin-champlain/Tech-Journal GitHub Wiki

Complete Beginner Intro

Types of Careers

  • Offensive Security
  • Defensive Security

Vulnerability Scanning Websites

💡 "If you're inclined towards the CLI on Linux, Kali comes pre-installed with a tool called "searchsploit" which allows you to search ExploitDB from your own machine. This is offline, and works using a downloaded version of the database, meaning that you already have all of the exploits already on your Kali Linux!"

Format: CVE-YEAR-NUMBER

❗Note: CVEs numbers are assigned when the vulnerability are discovered, not when they are publicised. Bear in mind that if a vulnerability is discovered at the end of a year, or if the process of confirming and rectifying the vulnerability takes a long time, then the release date might be the year after the year in the CVE date... bear this in mind when answering the following questions.

Manual Pages

Command: man

💡Consider using grep to find what you are looking for.

Extra Content: Google Dorking

What are Crawlers and how do They Work?

  • Crawlers attempt to traverse, termed as crawling, every URL and file that they can find. crawler

Search Engine Optimization

At an abstract view, search engines will “prioritize” those domains that are easier to index. There are many factors in how “optimal” a domain is - resulting in something similar to a point-scoring system.

  • How responsive your website is to the different browser types I.e. Google Chrome, Firefox and Internet Explorer - this includes Mobile phones!

  • How easy it is to crawl your website (or if crawling is even allowed ...but we'll come to this later) through the use of "Sitemaps"

  • What kind of keywords your website has (i.e. In our examples if the user was to search for a query like “Colours” no domain will be returned - as the search engine has not (yet) crawled a domain that has any keywords to do with “Colours”

Robots.txt

Keyword Function
User-agent Specify the type of "Crawler" that can index your site (the asterisk being a wildcard, allowing all "User-agents"
Allow Specify the directories or file(s) that the "Crawler" can index
Disallow Specify the directories or file(s) that the "Crawler" cannot index
Sitemap Provide a reference to where the sitemap is located (improves SEO as previously discussed, we'll come to sitemaps in the next task)

Sitemaps

A websites map in xml format. sitemap sitemap_real

What is Google Dorking?

Common Terms

Term Action
filetype: Search for a file by its extension (e.g. PDF)
cache: View Google's Cached version of a specified URL
intitle: The specified phrase MUST appear in the title of the page

Linux Fundamentals

💡 List of Common Commands

Command Description
echo Output any text that we provide
whoami Find out what user we're currently logged in as!
ls listing
cd change directory
cat concatenate
pwd print working directory
find search for files in a directory hierarchy
grep search for patterns in a file
touch Create file
mkdir Create a folder
cp Copy a file or folder
mv Move a file or folder
rm Remove a file or folder
file Determine the type of a file
su Switch user
wget Used to download files from the web via HTTP
scp Secure copy a file from host to remote or vice versa
ps Provide list of current running process'
kill Kill a process
systemctl Systemd Control and Service Manager

💡 List of Common Operators

Symbol / Operator Description
& This operator allows you to run commands in the background of your terminal.
&& This operator allows you to combine multiple commands together in one line of your terminal.
> This operator is a redirector - meaning that we can take the output from a command (such as using cat to output a file) and direct it elsewhere.
>> This operator does the same function of the > operator but appends the output rather than replacing (meaning nothing is overwritten).

💡 Common Directories

Directory Description
/etc The etc folder (short for etcetera) is a commonplace location to store system files that are used by your operating system.
/var The "/var" directory, with "var" being short for variable data, is one of the main root folders found on a Linux install. This folder stores data that is frequently accessed or written by services or applications running on the system.
/root The /root folder is actually the home for the "root" system user. There isn't anything more to this folder other than just understanding that this is the home directory for the "root" user.
/tmp This is a unique root directory found on a Linux install. Short for "temporary", the /tmp directory is volatile and is used to store data that is only needed to be accessed once or twice. Similar to the memory on your computer, once the computer is restarted, the contents of this folder are cleared out.

Terminal Text Editors


Maintaining Your System

Automation

Value Description
MIN What minute to execute at
HOUR What hour to execute at
DOM What day of the month to execute at
MON What month of the year to execute at
DOW What day of the week to execute at
CMD The actual command that will be executed.

Package Management

Normally we use the apt command to install software onto our Ubuntu system. The apt command is a part of the package management software also named apt. Apt contains a whole suite of tools that allows us to manage the packages and sources of our software, and to install or remove software at the same time.

One method of adding repositories is to use the add-apt-repository command we illustrated above, but we're going to walk through adding and removing a repository manually. Whilst you can install software through the use of package installers such as dpkg, the benefits of apt means that whenever we update our system -- the repository that contains the pieces of software that we add also gets checked for updates.