I was playing with Metasploit Framework and I was using the msfvenom
payload. For that purpose I was using Kali Linux
as a Virtual Machine, mainly because all the tools are pre-installed there. Running a Virtual Machine is not as easy as running the tools in a host Operating System. The available RAM of course is much less than the actual host and some times configuring things can be complex.
Nmap (Free)
Nmap is the best port scanning tool you can use and also open source. Used widely, mainly because of the incredible power and flexibility it offers. On Mac OS Nmap comes with ZenMap
, in the installation pack. For those who don't like the terminal Zenmap is the perfect tool. I prefer using Nmap but in some cases, like for example when you have multiple hosts to scan, Zenmap makes reading them much easier.
Installation of Nmap is really simple and it does not require any typing at all. You can just download a .dmg
file from the official website and do a normal installation like in every other application.
OS X Tools: All you really need to know about GREP. 24449 p2 R+ 0:00.00 grep -i mozy. Now all you need to do is issue the following command: sudo kill 24293. This page replaces the old page entitled Unix grep for OS X and Nisus Writer Express, which is now obsolete. (2007-09-26) Version 0.7.2 (2007-09-26).
Links: Nmap – Github
Nikto (Free)
Nikto comes pre-installed on Kali Linux and some times it can help you find some hidden Gems on the web server you are testing. Nikto is a Web Server scanner that will inform you in case there is an outdated software version, if it finds some insecure or default files / directories and about some possible server misconfigurations.
In order to install Nikto you need to install Homebrew. To install Homebrew you need to type a single command on your terminal.
After installation if you didn't agree with the Terms of Service of X-Code you will probably need to follow the instuctions. The instructions are pretty clear and simple to follow. Next you have to install Nikto. Go back to your terminal and type the following.
After finishing the installation you will be able to scan every web server using the command nikto -h {URL}
.
Best Grep Tool For Os X Operating System
Links: Homebrew – Github – Nikto
Wireshark (Free)
The Wireshark is the most known Network Traffic Sniffer, that is open-source like all the tools so far. The Wireshark distribution also comes with TShark, which is aline-oriented sniffer (similar to Sun's snoop, or tcpdump) that uses thesame dissection, capture-file reading and writing, and packet filteringcode as Wireshark, and with editcap, which is a program to read capturefiles and write the packets from that capture file, possibly in adifferent capture file format, and with some packets possibly removed from the capture.
Installation is pretty simple, since it come as a .dmg
file and the installation is like on every other application on Mac OS. After installation a new icon will appear on the launchpad's application list. From there just by clicking it you can start sniffing the network traffic, after specifying the interface you would like to intercept.
Links: Wireshark – Github
Sqlmap (Free)
The Sqlmap is a powerful tool for finding SQL injections
. It is completely automated and just by specifying a parameter the tool will try to exploit the injectable parameter sometimes even without you having to specify the type of database. It supports multi databases including SQL and non-SQL databases. Installation is pretty simple by using brew
.
When the installation is complete you can just type sqlmap
on terminal to launch the tool.
Links: sqlmap – Github
Zed Attack Proxy (Free)
The OWASP
Zed Attack Proxy (ZAP) is one of the world's most popular free security tools and is actively maintained by hundreds of international volunteers*. It can help you automatically find security vulnerabilities in your web applications while you are developing and testing your applications. Its also a great tool for experienced pentesters to use for manual security testing.
The easiest way to install ZAP is by using brew. Start by installing caskroom
.
After the installation is complete the system is ready to install ZAP.
After the installation is complete a new ZAP icon will appear on the launchpad.
Links: OWASP ZAP – Github
Burp Suite (Free / Paid)
My personally favourite proxy tool is Burp Suite. It offers pretty much the same options as ZAP, with better and much easier to use design. This is only for the Community version. The paid version offers automated fuzzing, with good results, it offers Intruder, a function to repeat requests for fuzzing, with custom wordlist, support for regular expressions and much more. Intruder is also available for the Community version, but it has a throttling that can be a bit slow. Installing Burp is really easy, you just need to visit their website and they offer an option for Mac OS, and you just download an install the .dmg file.
Links: Burp Suite
Aircrack-ng
Best Grep Tool For Os X Os
Unluckily the tool for every Wi-Fi pentration testing is partially available on OS X. You can do a really simple installation of the Aircrack-ng with macports, but Airodump-ng
and Aireplay-ng
are linux only and will not work under OS X native, so for reinjecting and sniffing you will have to use other means.
After finishing the installation you can use it by typing aircrack-ng and the options you prefer.
Links: Aircrack-ng – Github
TestSSL (Free)
TestSSL is the best tool to test the SSL configuration of the server you are testing. What I like the most about TestSSL is the clean UI it offers and the simplicity in use. You get different results depending on the device you want to have as a reference and writes in really clean form the possible vulnerabilities of the current configuration.
To install TestSLL
you firstly have to download the git
repository from Github. Current stable version is 2.8.
Then go to the folder of TestSSL.
If you want to run TestSSL on a server you can just execute the .sh
file followed by the URL of the website.
Links: TestSSL – Github
Wappalyzer (Free)
This browser extension is available for both Firefox and Chrome, giving users the ability to really easily identify technologies used on a Web Application. This simple plugin displays versions of web server servers, libraries, programming languages and more. What makes this plugin so helpful is it's accuracy, how easy is it to use and of course it is open source. I find out about this plugin a few months back and I am using it extensively, so it is worth a shot.
Links: Firefox – Chrome – Github
Gobuster (Free)
Great tool for enumerating directories, files and DNS subdomains. What I like about Gobuster is the flexibility if offers with extensions, authentication and mainly support for multithreading. I was mainly using dirb for enumerating files and directories, but what was the biggest concern for me was the fact that dirb does not support multiple threads, and this makes the process really slower. Using brew is it easy to install Gobuster.
Links: Github
Hashcat (Free)
Great tool for password recovery. Supports almost every known hashing algorithm and masking for password guessing. It can fully utilize your Mac's performance while it offers great support for GPUs.
Links: Hashcat – Github
This section describes the setup needed by various operating systemsin order to run crosstool-NG, as well as some OS-specific caveats and limitations.The package lists given in the following subsections cover all the features testedby the sample configurations. You particular configuration may not need all thosepackages. For example, git
is needed if your configuration is for an uClinux-basedtarget which requires elf2flt
utilities (which does 'rolling releases' and mustbe checked out from a Git repository).
Linux
Sample configurations for supported Linux distributions are available as Dockerconfiguration files in the testing
directory. You can use the contents ofthese files as a list of the packages that need to be installed on a particulardistribution.
If on the other hand you encounter a dependency not listed there, please let usknow over the mailing list or via a pull request!
Windows: Cygwin
Originally contributed by: Ray Donnelly
Prerequisites and instructions for using crosstool-NG for building a crosstoolchain on Windows (Cygwin) as build and, optionally Windows (hereafter)MinGW-w64 as host.
Use Cygwin64 if you can. DLL base-address problems are lessened thatway and if you bought a 64-bit CPU, you may as well use it.
You must enable Case Sensitivity in the Windows Kernel (this is only reallynecessary for Linux targets, but at present, crosstool-ng refuses to operateon case insensitive filesystems). The registry key for this is:
HKLMSYSTEMCurrentControlSetControlSession Managerkernelobcaseinsensitive
Read more here.Since release 1.7, Cygwin no longer supports the ‘managed' mount option.You must use case sensitive FS.
- Using
setup.exe
orsetup-x86_64.exe
, install the default packages and alsothe following ones:- autoconf
- automake
- bison
- diffutils
- flex
- gawk
- gcc-g++
- git
- gperf
- help2man
- libncurses-devel
- make
- patch
- python-devel
- texinfo
- wget
- xz
Leave 'Select required packages (RECOMMENDED)' ticked.
Notes:
- The packages marked with * are only needed if your host is MinGW-w64.
Although nativestrict symlinks seem like the best idea, extracting glibc failswhen they are enabled, so just don't set anything here. If your host is MinGW-w64then these ‘Cygwin-special' symlinks won't work, but you can dereference them byusing tar options –dereference and –hard-dereference when making a final tarball.I plan to investigate and fix or at least work around the extraction problem.Read more here.
- If both BFD and GOLD linkers are enabled in binutils,
collect2.exe
will attemptto runld
which is a shell script so you need to make sure that a working shellis in your path. Eventually this will be replaced with a native program forMinGW-w64 host.
Notes
- Cygwin is slow. No, really, really slow. Expect about approximately 5x to 10x slowdowncompared to a Linux system.
FreeBSD (and other BSD)
FreeBSD support is currently experimental in crosstool-NG.
FreeBSD does not provide a gcc
command by default. Crosstool-NG and many of the packagesused expect this by default. A comprehensive fix for various ways of setting up the OSis planned after the 1.23 release. Until then, setting up the following packages isrecommended as a prerequisite for crosstool-NG:
archivers/zip
devel/automake
devel/bison
devel/gettext-tools
devel/git
devel/gmake
devel/gperf
devel/libatomic_ops
devel/libtool
devel/patch
lang/gcc6
lang/gawk
misc/help2man
print/texinfo
textproc/asciidoc
textproc/gsed
textproc/xmlto
Use any supported method of installation, e.g.:
Even with these packages installed, some of the samples are failing to build. YMMV.
Previous version of the installation guidelines
Contributed by: Titus von Boxberg
Prerequisites and instructions for using ct-ng for building a cross toolchain on FreeBSD as host.
Tested on FreeBSD 8.0
Install (at least) the following portsarchivers/lzmatextproc/gseddevel/gmakedevel/patchshells/bashdevel/bisonlang/gawkdevel/automake110ftp/wget
Of course, you should have /usr/local/bin in your PATH.
- run ct-ng's configure with the following tool configuration:
- proceed as described in general documentation but use gmake instead of make
macOS (a.k.a Mac OS X, OS X)
Note macOS is no longer officially supported by crosstool-NG. If the instructionsbelow work for you, congratulations. If they kill your cat, ye be warned.
Originally contributed by: Titus von Boxberg
Best Grep Tool For Os X Download
The instructions below have been verified on macOS Sierra (10.12). They have been previouslyreported to work with versions since Mac OS X Snow Leopard (10.6) with Developer Tools 3.2,and with Mac OS X Leopard (10.5) with Developer Tools + GCC 4.3 or newer installed via MacPorts.
You have to use a case sensitive file system for crosstool-NG's build and targetdirectories. Use a disk or disk image with a case sensitive FS that youmount somewhere.
Install required tools via HomeBrew. The following set is sufficient forHomeBrew:
autoconf binutils gawk gmp gnu-sed help2man mpfr openssl pcre readline wget xz
.Install them usingbrew install PACKAGE
command.Also, installing
homebrew/dupes/grep
is recommended. It has been noticed that GNU libcwas misconfigured due to a subtle difference between BSD grep (which is used by macOS) andGNU grep. This has since been fixed, but other scripts in various packages may still containGNUisms.If you prefer to use MacPorts, refer to the previous version of the instruction belowand let us know if it works with current crosstool-NG and macOS releases.
Mac OS X defaults to a fairly low limit on the number of the files that can be opened bya process (256) that is exceeded by the build framework of the GNU C library. Increase thislimit to 1024:
Notes:
When building on macOS, the following message may be displayed:
It is reported when the host version of
libiberty
(from GCC) is compiled by macOSdefault compiler,clang
. In absense of any reported multilib information,libiberty
is then configured with the default compilation flags. This does not seem to affectthe resulting toolchain.ct-ng menuconfig
will not work on Snow Leopard 10.6.3 since libncursesis broken with this release. MacOS <= 10.6.2 and >= 10.6.4 are ok.APFS filesystem is known to have some random issues with parallel build of GCC.See this bug report fordetails. Don't use APFS, or turn off the parallel build in crosstool-NG (settingthe number of parallel jobs to 1 in the confiuguration) as a workaround.
Previous version of the installation guidelines
Crosstool-NG has been reported to work with MacPorts as well, using the following setof ports: lzmautils libtool binutils gsed gawk
. On Mac OS X Leopard, it is also requiredto install gcc43
and gcc_select
.
On Leopard, make sure that the MacPort's gcc
is called with the default commands(gcc
, g++
,…), via MacPort's gcc_select
.
On OSX 10.7 Lion / when using Xcode >= 4 make sure that the default commandsgcc
, g++
, etc.) point to gcc-4.2
, NOT llvm-gcc-4.2
by using MacPort's gcc_select
feature. With MacPorts >= 1.9.2the command is: 'sudo port select –set gcc gcc42'
Best Grep Tool For Os X Catalina
This also requires (like written above) that macport's bin
directorycomes before the standard directories in your PATH
environment variablebecause the gcc
symlink is installed in /opt/local/bin
and the default /usr/bin/gcc
is not removed by the gcc_select
command!
Links: Wireshark – Github
Sqlmap (Free)
The Sqlmap is a powerful tool for finding SQL injections
. It is completely automated and just by specifying a parameter the tool will try to exploit the injectable parameter sometimes even without you having to specify the type of database. It supports multi databases including SQL and non-SQL databases. Installation is pretty simple by using brew
.
When the installation is complete you can just type sqlmap
on terminal to launch the tool.
Links: sqlmap – Github
Zed Attack Proxy (Free)
The OWASP
Zed Attack Proxy (ZAP) is one of the world's most popular free security tools and is actively maintained by hundreds of international volunteers*. It can help you automatically find security vulnerabilities in your web applications while you are developing and testing your applications. Its also a great tool for experienced pentesters to use for manual security testing.
The easiest way to install ZAP is by using brew. Start by installing caskroom
.
After the installation is complete the system is ready to install ZAP.
After the installation is complete a new ZAP icon will appear on the launchpad.
Links: OWASP ZAP – Github
Burp Suite (Free / Paid)
My personally favourite proxy tool is Burp Suite. It offers pretty much the same options as ZAP, with better and much easier to use design. This is only for the Community version. The paid version offers automated fuzzing, with good results, it offers Intruder, a function to repeat requests for fuzzing, with custom wordlist, support for regular expressions and much more. Intruder is also available for the Community version, but it has a throttling that can be a bit slow. Installing Burp is really easy, you just need to visit their website and they offer an option for Mac OS, and you just download an install the .dmg file.
Links: Burp Suite
Aircrack-ng
Best Grep Tool For Os X Os
Unluckily the tool for every Wi-Fi pentration testing is partially available on OS X. You can do a really simple installation of the Aircrack-ng with macports, but Airodump-ng
and Aireplay-ng
are linux only and will not work under OS X native, so for reinjecting and sniffing you will have to use other means.
After finishing the installation you can use it by typing aircrack-ng and the options you prefer.
Links: Aircrack-ng – Github
TestSSL (Free)
TestSSL is the best tool to test the SSL configuration of the server you are testing. What I like the most about TestSSL is the clean UI it offers and the simplicity in use. You get different results depending on the device you want to have as a reference and writes in really clean form the possible vulnerabilities of the current configuration.
To install TestSLL
you firstly have to download the git
repository from Github. Current stable version is 2.8.
Then go to the folder of TestSSL.
If you want to run TestSSL on a server you can just execute the .sh
file followed by the URL of the website.
Links: TestSSL – Github
Wappalyzer (Free)
This browser extension is available for both Firefox and Chrome, giving users the ability to really easily identify technologies used on a Web Application. This simple plugin displays versions of web server servers, libraries, programming languages and more. What makes this plugin so helpful is it's accuracy, how easy is it to use and of course it is open source. I find out about this plugin a few months back and I am using it extensively, so it is worth a shot.
Links: Firefox – Chrome – Github
Gobuster (Free)
Great tool for enumerating directories, files and DNS subdomains. What I like about Gobuster is the flexibility if offers with extensions, authentication and mainly support for multithreading. I was mainly using dirb for enumerating files and directories, but what was the biggest concern for me was the fact that dirb does not support multiple threads, and this makes the process really slower. Using brew is it easy to install Gobuster.
Links: Github
Hashcat (Free)
Great tool for password recovery. Supports almost every known hashing algorithm and masking for password guessing. It can fully utilize your Mac's performance while it offers great support for GPUs.
Links: Hashcat – Github
This section describes the setup needed by various operating systemsin order to run crosstool-NG, as well as some OS-specific caveats and limitations.The package lists given in the following subsections cover all the features testedby the sample configurations. You particular configuration may not need all thosepackages. For example, git
is needed if your configuration is for an uClinux-basedtarget which requires elf2flt
utilities (which does 'rolling releases' and mustbe checked out from a Git repository).
Linux
Sample configurations for supported Linux distributions are available as Dockerconfiguration files in the testing
directory. You can use the contents ofthese files as a list of the packages that need to be installed on a particulardistribution.
If on the other hand you encounter a dependency not listed there, please let usknow over the mailing list or via a pull request!
Windows: Cygwin
Originally contributed by: Ray Donnelly
Prerequisites and instructions for using crosstool-NG for building a crosstoolchain on Windows (Cygwin) as build and, optionally Windows (hereafter)MinGW-w64 as host.
Use Cygwin64 if you can. DLL base-address problems are lessened thatway and if you bought a 64-bit CPU, you may as well use it.
You must enable Case Sensitivity in the Windows Kernel (this is only reallynecessary for Linux targets, but at present, crosstool-ng refuses to operateon case insensitive filesystems). The registry key for this is:
HKLMSYSTEMCurrentControlSetControlSession Managerkernelobcaseinsensitive
Read more here.Since release 1.7, Cygwin no longer supports the ‘managed' mount option.You must use case sensitive FS.
- Using
setup.exe
orsetup-x86_64.exe
, install the default packages and alsothe following ones:- autoconf
- automake
- bison
- diffutils
- flex
- gawk
- gcc-g++
- git
- gperf
- help2man
- libncurses-devel
- make
- patch
- python-devel
- texinfo
- wget
- xz
Leave 'Select required packages (RECOMMENDED)' ticked.
Notes:
- The packages marked with * are only needed if your host is MinGW-w64.
Although nativestrict symlinks seem like the best idea, extracting glibc failswhen they are enabled, so just don't set anything here. If your host is MinGW-w64then these ‘Cygwin-special' symlinks won't work, but you can dereference them byusing tar options –dereference and –hard-dereference when making a final tarball.I plan to investigate and fix or at least work around the extraction problem.Read more here.
- If both BFD and GOLD linkers are enabled in binutils,
collect2.exe
will attemptto runld
which is a shell script so you need to make sure that a working shellis in your path. Eventually this will be replaced with a native program forMinGW-w64 host.
Notes
- Cygwin is slow. No, really, really slow. Expect about approximately 5x to 10x slowdowncompared to a Linux system.
FreeBSD (and other BSD)
FreeBSD support is currently experimental in crosstool-NG.
FreeBSD does not provide a gcc
command by default. Crosstool-NG and many of the packagesused expect this by default. A comprehensive fix for various ways of setting up the OSis planned after the 1.23 release. Until then, setting up the following packages isrecommended as a prerequisite for crosstool-NG:
archivers/zip
devel/automake
devel/bison
devel/gettext-tools
devel/git
devel/gmake
devel/gperf
devel/libatomic_ops
devel/libtool
devel/patch
lang/gcc6
lang/gawk
misc/help2man
print/texinfo
textproc/asciidoc
textproc/gsed
textproc/xmlto
Use any supported method of installation, e.g.:
Even with these packages installed, some of the samples are failing to build. YMMV.
Previous version of the installation guidelines
Contributed by: Titus von Boxberg
Prerequisites and instructions for using ct-ng for building a cross toolchain on FreeBSD as host.
Tested on FreeBSD 8.0
Install (at least) the following portsarchivers/lzmatextproc/gseddevel/gmakedevel/patchshells/bashdevel/bisonlang/gawkdevel/automake110ftp/wget
Of course, you should have /usr/local/bin in your PATH.
- run ct-ng's configure with the following tool configuration:
- proceed as described in general documentation but use gmake instead of make
macOS (a.k.a Mac OS X, OS X)
Note macOS is no longer officially supported by crosstool-NG. If the instructionsbelow work for you, congratulations. If they kill your cat, ye be warned.
Originally contributed by: Titus von Boxberg
Best Grep Tool For Os X Download
The instructions below have been verified on macOS Sierra (10.12). They have been previouslyreported to work with versions since Mac OS X Snow Leopard (10.6) with Developer Tools 3.2,and with Mac OS X Leopard (10.5) with Developer Tools + GCC 4.3 or newer installed via MacPorts.
You have to use a case sensitive file system for crosstool-NG's build and targetdirectories. Use a disk or disk image with a case sensitive FS that youmount somewhere.
Install required tools via HomeBrew. The following set is sufficient forHomeBrew:
autoconf binutils gawk gmp gnu-sed help2man mpfr openssl pcre readline wget xz
.Install them usingbrew install PACKAGE
command.Also, installing
homebrew/dupes/grep
is recommended. It has been noticed that GNU libcwas misconfigured due to a subtle difference between BSD grep (which is used by macOS) andGNU grep. This has since been fixed, but other scripts in various packages may still containGNUisms.If you prefer to use MacPorts, refer to the previous version of the instruction belowand let us know if it works with current crosstool-NG and macOS releases.
Mac OS X defaults to a fairly low limit on the number of the files that can be opened bya process (256) that is exceeded by the build framework of the GNU C library. Increase thislimit to 1024:
Notes:
When building on macOS, the following message may be displayed:
It is reported when the host version of
libiberty
(from GCC) is compiled by macOSdefault compiler,clang
. In absense of any reported multilib information,libiberty
is then configured with the default compilation flags. This does not seem to affectthe resulting toolchain.ct-ng menuconfig
will not work on Snow Leopard 10.6.3 since libncursesis broken with this release. MacOS <= 10.6.2 and >= 10.6.4 are ok.APFS filesystem is known to have some random issues with parallel build of GCC.See this bug report fordetails. Don't use APFS, or turn off the parallel build in crosstool-NG (settingthe number of parallel jobs to 1 in the confiuguration) as a workaround.
Previous version of the installation guidelines
Crosstool-NG has been reported to work with MacPorts as well, using the following setof ports: lzmautils libtool binutils gsed gawk
. On Mac OS X Leopard, it is also requiredto install gcc43
and gcc_select
.
On Leopard, make sure that the MacPort's gcc
is called with the default commands(gcc
, g++
,…), via MacPort's gcc_select
.
On OSX 10.7 Lion / when using Xcode >= 4 make sure that the default commandsgcc
, g++
, etc.) point to gcc-4.2
, NOT llvm-gcc-4.2
by using MacPort's gcc_select
feature. With MacPorts >= 1.9.2the command is: 'sudo port select –set gcc gcc42'
Best Grep Tool For Os X Catalina
This also requires (like written above) that macport's bin
directorycomes before the standard directories in your PATH
environment variablebecause the gcc
symlink is installed in /opt/local/bin
and the default /usr/bin/gcc
is not removed by the gcc_select
command!
Explanation: llvm-gcc-4.2
(with Xcode 4.1 it is on my machine'gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)')cannot boostrap gcc. See this bug
Apparently, GNU make's builtin variable .LIBPATTERNS
is misconfiguredunder MacOS: It does not include lib%.dylib
.This affects build of (at least) GDB 7.1Put lib%.a lib%.so lib%.dylib
as .LIBPATTERNS
into your environmentbefore executing ct-ng build
.See herefor details.
Note however, that GDB 7.1 (and anything earlier than 7.10) are knownto fail to build on macOS.