Super Final Os Assignment
Super Final Os Assignment
Introduction
Software that manages the hardware of a computer is an operating system. It is also
used for applications and intermediaries between the computer user and the computer
hardware. Operating systems are everywhere from vehicles,home appliances, smart
phones, private computers, computers of companies, cloud computing systems, and
devices including "The Internet of Things". An operating system is that only program
that runs and operate all the functions inside the computer, generally called the kernel.
Two kinds of programs exist along with the kernel, one is systems program that is
related to operating system but not necessarily a kernel and another one is application
program that include all the programs but not related to the system operation. [
Silberschatz, A., Galvin, P. and Gagne, G. (n.d.). Operating system concepts. ]
It is categories into different category according to their features, numbers of users and
user interface. On the basis of user interface operating system are divided into two main
category. One is CUI and another one is GUI, which represents Command User
Interface and Graphical User Interface respectively. Most common operating system
existing now a days in world are Windows, Linux and Mac Os. Both Windows and Mac
OS are based on GUI whereas Linux is CUI based. Now a days there are so many Linux
distribution available on the web having both CUI and GUI interfaces. Linux is a family
of operating systems based on the Linux kernel which is free and open source.
According to the statics of statista.com global market share held by operating systems
for desktop PCs, from January 2013 to January 2019, less than two percentage of
desktop and PCs user have used Linux as their primary operating system. Though it’s
quite popular for the cloud computing, super computer, Network administration, Cyber
security etc. Ubuntu, Kali Linux, Arch, Parrot, Magento are some of the popular Linux
distributions available now a days having different purposes. The major functions of
operating system are record, deadlock, priority, storage, security, compatibility, and
garbage etc.
Given link shows the user of different operating system users from January 2013 to
January 2019.
[https://www.statista.com/statistics/218089/global-market-share-of-windows-7]
Kali Linux
Kali Linux is a Debian-derived Linux distribution especially designed for digital
forensics and penetration testing. It is maintained and funded by Offensive Security
Ltd. It was developed by Mati Aharoni and Devon Kearns of Offensive Security. Before
Kali Linux it was BackTrack, their previous information security testing Linux
distribution based on Knoppix. The another valued core developer is Raphael Hetzo.
Kali Linux is based on the Debian Testing branch. Whose packages are imported from
the Debian repositories.
Kali Linux is a Linux distribution derived from Debian Linux distribution especially
designed for the purpose of digital forensics and penetration testing. It has maintained
and founded by Offensive Security Ltd. A company which provides professional
penetration testing services. It has been created by Mati Aharoni and Devon Kearns.
Before it was Kali Linux It was BackTrack, Linux distribution based on Knoppix.
Raphael Hetzo is another well-known developer of this project. The packages this OS
are imported from Debian repositories.
This project has initially started in 2012, when Offensive Security decided to replace a
manually maintained BackTrack Linux project with something that might become a
true Debian derivative with all the necessary infrastructure and enhanced packaging
methods. It was decided that Kali should be built on top of the Debian distribution
because its quality, stability and large number of availability of software.
Initially it is released on the 13th of March 2013. Later on it has improved and added
new programs to make it more powerful, secure and user friendly operating system. It
has over six hundred preinstalled penetration-testing programs. Fern Wifi Cracker
which is a graphical wifi cracking tools. Nmap is port scanner and Armitage is a
graphical cyber-attack management tool, Wireshark is an analyser, John the Ripper is
popular for password cracking, Burp suite and OWASP ZAP web application security
and vulnerability scanner, Nmap is a port scanner for penetration testing. This operating
system is either operate natively on the hard disk of a computer or boot from a Live CD
or live USB or operate on a virtual machine. The Metasploit Project's Metasploit
Framework is a supported platform to develop and execute security exploits.
Programming language used to build this OS is C++. Which is a general purposes,
object-oriented high level programming language. It has generic programming
functions, as well as low level memory manipulation.
User Interface
Set of menus or options through which users communicate with the computer is known
as user interface. Kali Linux has simple and clean user interface. Few screen-shots are
explained below.
Fig. Applications
This is the view of an applications in an icon mode. There is another way of viewing it.
Fig. Application
This is also the application view in icon mode. The third page of an application where
all the applications can be viewed in frequent or all mode. Frequent mode specifies the
apps that are frequently used and all mode shows all the applications installed in the
machine.
Fig. Terminal
Main wepan of every Linux Os is the terminal. Where we can install, uninstall, update,
upgrade, transfer and all most everything can be done with the help of terminal. Above
figure shows the terminal of Kali Linux.
Fig. Files
Above figure demonstrate how files are shown in Kali Linux. All the downloaded files
are shown in the figure.
Fig. Setting
Given figure shows the setting sections of the Kali OS. Where it shows lock, power,
volume, brightness and other options.
Fig. Application in another view
It’s the different view of an application. It shows all the applications in text view at first
and after clicking or hovering on it shows the icons of an application. There are more
than six hundreds preinstalled programs for penetration testing in Kali Linux.
A Live System
The main ISO image we download is not just to installing the operating system, but it
can be used as a bootable live system. Which means we don’t need to install into the
main drive. We can install, run and work on it by just using USB sticks having Kali
Linux ISO image. The live system contains the tools most commonly used by cyber
security, penetration testers and hackers.
Forensics Mode
In general, when doing forensic activities on a system, we obviously needs to avoid any
activity that would affect the data on the analyzed system. Unfortunately, some
desktop environments will interfere with this objective if any disks they detect are
automatically mounted.
To avoid this problems, Kali Linux has a features called forensics mode. That can be
enabled from the boot menu, which disable all such features. The live system is mainly
useful in this purposes, because we can reboot any computer into a Kali Linux system
without modifying or accessing its main hard disk.
A Custom Linux Kernel
Kali Linux always provides a customized updated Linux kernel, which is based on the
Debian Unstable version. This specifies core hardware support, especially when it
comes to the wireless devices.
So many hardware devices require regular up to date firmware files normally found in
/lib/firmware/ directory. Where Kali OS installs all them by default. Which also
includes the firmware available in Debian’s non-free section. Those are not installed by
default in Debian, because they are closed-source and thus not part of Debian proper.
Completely Customizable
Kali Linux is built by penetration testers mainly for the penetration testing purposes.
But the thing is everyone may not want to use as penetration testing. For those users it
has fully customized and can use as a regular desktop operating system. With this
features we ensure that Kali Linux is easy to customize based on our own needs and
preferences.
In every operating system security comes as a major issue. User of this OS want to
know it can be trusted or not. For this reason Kali Linux ensures that it is developed by
a expert developers working day and night transparently and following the best security
practices possible. They upload signed source packages. Which are then built on
dedicated build daemons. After that all the packages are then check summed and
distributed as part of a signed repository.
The work done on the packages can be fully reviewed through the packaging Git
repositories which is containing signed tags that is responsible to build the Kali Linux
source packages. And each package can also be followed through the Kali package
tracker.
Kali OS has accessibility features for visually impaired users. Kali is one of the very
few Linux distributions which have a working accessibility system for blind or visually
impaired users through both voice feedback and braille hardware support.
For visually impaired or blind users, Kali Linux has amazing accessibility features. Kali
one of very few Linux distributions which have a working accessibility features. Which
uses braille and speech feedback assistance to operate access all the features.
Automating Kali Linux Deployment
Automating Kali Linux deployment via Unattended PXE installations – You can
automate and customize your Kali Linux installations over the network. You are one
PXE boot away from a fresh, custom Kali installation, or 10,000 of them.
Kali Linux on a Raspberry Pi and Other ARM Devices
Now a days Kali Linux can be used on android phone. Nexus or some of the OnePlus
models are having Kali Linux as their base operating system.
File System
The Filesystem Hierarchy Standard
As with other Linux distributions, Kali Linux is organized to be consistent with the
Filesystem Hierarchy Standard (FHS), allowing users of other Linux distributions to
easily find their way around Kali. The FHS defines the purpose of each directory. The
top-level directories are described as follows.
Like other Linux distributions, Kali Linux is organized consistent to the Filesystem
Hierarchy Standard (FHS), which makes it easy for users of different Linux
distributions to get ease with Kali environment. Each folder is defined by the FHS.
Some of the directories at the top level are defined below.
While Kali’s main focus is on the penetration testing and security auditing, there are so
many different tasks and activities involved behind it. It is built as a framework, because
it includes many tools covering various different use cases.
Kali Linux can be used on various types of computers, namely on the laptops for general
user. But also on servers of system administrators who wish to monitor their network,
on the workstations of forensic analysts, and many more. Unexpectedly, on stealthy
embedded devices, those who possess with ARM CPUs. Many ARM devices are
perfect attack machines because of their low power consumption capabilities and are
smaller in size. It also deployed in the cloud to quickly build a farm of password-
cracking machines and on different hand held computing devices like mobile phones,
tablets to allow for dedicated portable penetration testing.
Security and Protection
Kali Linux is dedicated to meet the requirements of professional penetration testers and
security auditing experts. To achieve this, several core updated have been implemented
in Kali Linux to protect and secure the system.
Due to the nature of security audits, it is designed to be used in a single, root , user
environment. While working in penetration testing it require high amount of privileges,
and while it’s normally sound policy to only enable root privileges when necessary. In
this case that Kali Linux is aimed at.
Kali OS contains of system hooks that disable network services by default. These hooks
allow to install various features and services on Kali. It ensuring that us owned
distribution is secure by default, no matter what packages are installed. Another
awesome security feature is, aadditional services such as Bluetooth is blacklisted by
default.
The main objective of Kali Linux, maintaining the integrity of the system as a whole is
absolutely key. With that goal set in mind, the set of upstream programs sources which
Kali uses is kept to an absolute minimum.
Who is this for ?
According to the the distribution’s developer. They may expect to use Kali Linux for
their normal daily uses. But the matter of fact is, however, that Kali is a Linux
distribution specifically designed for professional penetration testers and security
specialists, and given its unique nature. It is NOT a recommended distribution if anyone
those who are unfamiliar with Linux or are looking for a general-purpose Linux desktop
distribution for development, gaming, networking etc. They have also suggested that
“Even for experienced Linux users, Kali can raise some challenges, Although Kali is
an open source project and it’s not a wide-open source project like other Linux
distribution for reasons of security. The development team is small, experienced and
trusted, packages in the repositories are signed both by the individual and committer
and the team. And most importantly the set of upstream repositories from which updates
and new packages are drawn is very small.
Individuals Components
Programmers
Information Gathering
In security auditing it is quite essential to gather all the relevant formation of certain
topic. Some of the tools that are used gather essential information like email, web
address, DNS, host id, port no are described below.
Ghost Phisher
Ghost Phisher is mainly used for Wireless and Ethernet security auditing. The
application is written written using the Python Programming Language and the Python
Qt GUI library. The program is responsible to emulate access points and deploy. Now
it supports HTTP Server, Inbuild RFC 1035 DNS Server, WIFI Access point Emulator
and Penetration using Metasploit Bindings. Example of ghost-phisher is : root@kali:
~# ghost-phisher.
Nmap
Nmap as known as Network Mapper is a free and open source tools for network
discovery and security auditing. Many systems and network administrators use it as a
useful tools such as network inventory, schedules of service upgrade and monitoring
host or service uptime. It is flexible, easy, well documented and supported program
used by many professionals and security experts.
Nping - Network packet generation tool is an example of Nmap.
Wireshark
It has various rich features including deep inspection of hundreds of protocols, live
capture and offline analysis, It supports multi-platform including Linux, OS X,
Windows and many more. It also has the rich VoIP analysis features.
Vulnerability Analysis
Tools that help us exploit devices or applications in order to gain access falls into this
category. Here some popular inbuilt Kali tools used for vulnerability analysis are
described below.
jSQL Injection
Oscanner
Burp Suite
Burp Suite is designed to performrm security testing of web applications. It has various
tools support the entire testing process, from initial mapping of web application to
analysis of it’s attack surfacee. It’s also used for ffinding and exploiting security
vulnerabilities of web applications. It gives full control to combine advanced manual
techniques with state-of-the-art automation, to execution faster, more effective, and
ease.
Skipfish
Skipfish is an awesome web application security analyzer tool that does preliminary
survey to get information from website. It creates an interactive layout for the targeted
site by carrying out a recursive crawl and dictionary-based attack. The resulting sitemap
is then collaborated with the output from a number of active security checks. The final
report generated by this tool is then ready to serve as a foundation for professional web
application security key tools.
Wireless Attack
Kali Linux and tools provided by it is really popular for wireless attack and wireless
vulnerability checking. It can crack Wi-Fi password and gain access using various tools
like Aircrack-ng and Airmon-ng which are described below.
Aircrack-ng
Aircrack-ng is an 802.11 WEP and WPA-PSK keys cracking tools. It is also used to
recover keys once enough data packets have been captured. It implies the standard FMS
(Fluhrer, Mantin and Shamir) attack along with some of the optimizations like
KoreK attacks. As well as the all new PTW (Pyshkin, Tews, Weinmann) attacks. Thus,
attack is faster with the comparison to other WEP cracking tools.
Airmon-ng
Airmon-ng is another most loved tools included in the aircrack-ng package. It is used
to enable and disable monitor mode on wireless interfaces. Where it can be used to go
back from monitor mode to managed mode. Example is given below.
root@kali:~# airmon-ng
PHY Interface Driver Chipset
phy0 wlan0 ath9k_htc Atheros Communications, Inc. AR9271 802.11n
Programming Language
Programming language are the vocabulary and set of rules for instructing computing
devices to perform specific task. Generally programming language refers to the high-
level language such as C, C++, Java, FORTRAN, Pascal, Python, JavaScript etc. Some
of them are defined below.
C
C is one of the popular programming language designed and written by Dennis Ritchie
at AT & T’s Bell Laboratories of USA in 1972. In the late seventies C began to replace
most popular programming language of that time like ALGOL, PL etc. C was not made
the official Bell Lab’s language. C programming language is still so popular among
developers because of its reliability, performance and simplicity. Moreover, in an
industry where newer languages emerge day in and out, a language that has survived
for more than three decades is a good impact. The interesting things is C has taken as a
mother programming language of other popular programming language like Java, C++,
C# etc. C is used in making operating system, games etc. Some of the major features of
C are as follows:
Fast and Efficient
Portable
Variety of datatype
Powerful Operators
Easy to extend
Modularity
Function rich libraries
#include <stdio.h>
int main()
{
printf("This is Lal Budha");
return 0;
}
C++
C++ is known as C extension. It was developed by Bjarne Stroustrup at bell labs. C++
is an intermediate level language, which comprise the features of both low level and
high-level languages. C++ is a statically typed, multiparadigm, compiled general-
purpose language. It is an object-oriented high-level programming language but not
purely Object Oriented.
Kali Linux is written on C++. Operating System, Games, Utilities tools are created by
C++. Some of the major feature of C++ are as follow.
Simple
Syntax Based
Uses of Pointer
Huge Function Library
Compiler Based
Modularity
Fast and Efficient
Powerful
Object Oriented
int main()
{
std::cout << "Programming is Fun!";
return 0;
}
Java
Java is one of the world's most widely used computer languages. As of 2015, Java is
one of the most popular programming languages in use. It is highly popular client-
server web applications. The record which that more than 9 million developers are using
and working on it. Java was developed by James Ghosling, Patrick Naughton, Mike
Sheridan at Sun Microsystems Inc. in 1991. The initial name of Java was Oak but it
was renamed to Java in 1995 as OAK was a registered trademark of another Tech
company. There are so many areas where Java is used. Most importantly Android Apps,
Server Apps at financial services industry, Software tools, Embedded space are the
Java’s real-world applications. Java is guaranteed to be Write Once, Run Anywhere.
Some of the major feature of Java are as follow.
Object Oriented
Platform Independent
Simple
Portable
Robust
Multithreaded
Interpreted
Dynamic
Python