Quantcast
Channel: KitPloit - PenTest Tools!
Viewing all 5816 articles
Browse latest View live

A2SV - Auto Scanning to SSL Vulnerability

$
0
0
█████╗ ██████╗ ███████╗██╗   ██╗
██╔══██╗╚════██╗██╔════╝██║ ██║
███████║ █████╔╝███████╗██║ ██║
.o oOOOOOOOo ██╔══██║██╔═══╝ ╚════██║╚██╗ ██╔╝ OOOo
Ob.OOOOOOOo O ██║ ██║███████╗███████║ ╚████╔╝ .adOOOOOOO
OboO'''''''''' ╚═╝ ╚═╝╚══════╝╚══════╝ ╚═══╝ ''''''''''OO
OOP.oOOOOOOOOOOO 'POOOOOOOOOOOo. `'OOOOOOOOOP,OOOOOOOOOOOB'
`O'OOOO' `OOOOo'OOOOOOOOOOO` .adOOOOOOOOO'oOOO' `OOOOo
.OOOO' `OOOOOOOOOOOOOOOOOOOOOOOOOO' `OO
OOOOO ''OOOOOOOOOOOOOOOO'` oOO
oOOOOOba. .adOOOOOOOOOOba .adOOOOo.
oOOOOOOOOOOOOOba. .adOOOOOOOOOO@^OOOOOOOba. .adOOOOOOOOOOOO
OOOOOOOOOOOOOOOOO.OOOOOOOOOOOOOO'` ''OOOOOOOOOOOOO.OOOOOOOOOOOOOO
'OOOO' 'YOoOOOOMOIONODOO'` . ''OOROAOPOEOOOoOY' 'OOO'
Y 'OOOOOOOOOOOOOO: .oOOo. :OOOOOOOOOOO?' :`
: .oO%OOOOOOOOOOo.OOOOOO.oOOOOOOOOOOOO? .
. oOOP'%OOOOOOOOoOOOOOOO?oOOOOO?OOOO'OOo
'%o OOOO'%OOOO%'%OOOOO'OOOOOO'OOO':
`$' `OOOO' `O'Y ' `OOOO' o .
. . OP' : o .
:
[Auto Scanning to SSL Vulnerability]
[By Hahwul / www.hahwul.com]

1. A2SV?
Auto Scanning to SSL Vulnerability.
HeartBleed, CCS Injection, SSLv3 POODLE, FREAK... etc

A. Support Vulnerability

[CVE-2014-0160] CCS Injection
[CVE-2014-0224] HeartBleed
[CVE-2014-3566] SSLv3 POODLE
[CVE-2015-0204] FREAK Attack
[CVE-2015-4000] LOGJAM Attack
B. Dev Plan

[DEV] DROWN Attack
[PLAN] SSL ACCF

2. How to Install?
A. Download(clone) & Unpack A2SV
git clone https://github.com/hahwul/a2sv.git
cd a2sv
B. Install Python Package / OpenSSL

pip install argparse
pip install netaddr

apt-get install openssl
C. Run A2SV

python a2sv.py -h

3. How to Use?
usage: a2sv.py [-h] [-t TARGET] [-p PORT] [-m MODULE] [-v]
optional arguments:
-h, --help show this help message and exit
-t TARGET, --target TARGET
Target URL/IP Address
-p PORT, --port PORT Custom Port / Default: 443
-m MODULE, --module MODULE
Check SSL Vuln with one module
[h]: HeartBleed
[c]: CCS Injection
[p]: SSLv3 POODLE
[f]: OpenSSL FREAK
[l]: OpenSSL LOGJAM
-u, --update Update A2SV (GIT)
-v, --version Show Version
[Scan SSL Vulnerability]

python a2sv.py -t 127.0.0.1
python a2sv.py -t 127.0.0.1 -m heartbleed
python a2sv.py -t 127.0.0.1 -p 8111
[Update A2SV]

python a2sv.py -u
python a2sv.py --update

4. Support
Contact hahwul@gmail.com


5. Screenshot



6. Code Reference Site
poodle : https://github.com/supersam654/Poodle-Checker
heartbleed : https://github.com/sensepost/heartbleed-poc
ccs injection : https://github.com/Tripwire/OpenSSL-CCS-Inject-Test
freak : https://gist.github.com/martinseener/d50473228719a9554e6a



UDPack - An Extensible Generic UDP Packet Obfuscator

$
0
0

UDPack is an extensible generic UDP packet obfuscator. The purpose of this application is to sit in the path of a UDP data stream, and obfuscate, deobfuscate or otherwise modify the packets.

Python 3.4 or above is required, since this script uses the asyncio library. Currently there are no other dependencies.

Warning: It must be stressed that the purpose of this application is obfuscation , not encryption . Many design decisions have been (and will be) deliberately made against best practices in cryptography, so in all likelihood the obfuscation methods will not resist crypto analysis. DO NOT rely on the obfuscation for confidentiality of your data!!!
At this stage the script includes the following "packers" (obfuscation methods):
  • Straight through: no obfuscation
  • Shuffle: shuffle the order of data bytes in each packet

Typical usage
A "packer" is a particular implementation of obfuscation method, usually obfuscating packets travelling upstream and deobfuscating packets travelling downstream. An "unpacker" is the same thing, implemented in the opposite direction.
            raw data         obfuscated data           raw data
UDP Client ---------- Packer =============== Unpacker ---------- UDP server
upstream ==> <== downstream

Implementing new packers and unpackers
In most cases, to implement a new packer, simply inherit from UDPackStraightThroughPacker and implement pack and unpack methods. To implement the corresponding unpacker, inherit from UDPackUnpackerMixIn and the completed packer.


SubBrute v2.0 - A DNS meta-query spider that enumerates DNS records, and subdomains

$
0
0

SubBrute is a community driven project with the goal of creating the fastest, and most accurate subdomain enumeration tool. Some of the magic behind SubBrute is that it uses open resolvers as a kind of proxy to circumvent DNS rate-limiting ( https://www.us-cert.gov/ncas/alerts/TA13-088A ). This design also provides a layer of anonymity, as SubBrute does not send traffic directly to the target's name servers.

Whats new in v2.0?
A lot of exciting updates... except for the readme file, which still needs to be updated.

Whats new in v1.2.1?
The big news in this version is that SubBrute is now a recursive DNS-spider, and also a library, more on this later. SubBrute should be easy to use, so the interface should be intuitive (like nmap!), if you would like the interface to change, let us know. In this version we are opening up SubBrute's fast DNS resolution pipeline for any DNS record type. Additionally, SubBrute now has a feature to detect subdomains were their resolution is intentionally blocked, which sometimes happens when a subdomain is intended for for use on an internal network.
  • SubBrute is now a DNS spider that recursively crawls enumerated DNS records. This feature boosted *.google.com from 123 to 162 subdomains. (Always enabled)
  • --type enumerate an arbitrary record type (AAAA, CNAME, SOA, TXT, MX...)
  • -s can now read subdomains from result files.
  • New useage - The subdomains enumerated from previous scans can now be used as input to enumerate other DNS records. The following commands demonstrate this new functionality:
    ./subbrute.py google.com -o google.names
...162 subdomains found...

./subbrute.py -s google.names google.com --type TXT
google.com,"v=spf1 include:_spf.google.com ip4:216.73.93.70/31 ip4:216.73.93.72/31 ~all"
adwords.google.com,"v=spf1 redirect=google.com"
...

./subbrute.py -s google.names google.com --type CNAME
blog.google.com,www.blogger.com,blogger.l.google.com
groups.google.com,groups.l.google.com
...
  • SubBrute is now a subdomain enumeration library with a python interface: subbrute.run() Do you want to use SubBrute in your python projects? Consider the following:
    import subbrute

for d in subbrute.run("google.com"):
print d
Feedback welcome.

Whats new in v1.1?
This version merges pull requests from the community; changes from JordanMilne, KxCode and rc0r is in this release. In SubBrute 1.1 we fixed bugs, improved accuracy, and efficiency. As requested, this project is now GPLv3.
Accuracy and better wildcard detection:
  • A new filter that can pickup geolocation aware wildcards.
  • Filter misbehaving nameservers
Faster:
  • More than 2,000 high quality nameservers were added to resolvers.txt, these servers will resolve multiple queries in under 1 sec.
  • Nameservers are verified when they are needed. A seperate thread is responsible creating a feed of nameservers, and corresponding wildcard blacklist.
New output:
  • -a will list all addresses associated with a subdomain.
  • -v debug output, to help developers/hackers debug subbrute.
  • -o output results to file.

More Information
The 'names.txt' list was created using some creative Google hacks with additions from the community. SubBrute has a feature to build your own subdomain lists by matching sub-domains with regular expression and sorting by frequency of occurrence:
  • python subroute.py -f full.html > my_subs.txt
names.txt contains 31298 subdomains. subs_small.txt was stolen from fierce2 which contains 1896 subdomains. If you find more subdomains to add, open a bug report or pull request and I'll be happy to add them.
No install required for Windows, just cd into the 'windows' folder:
  • subbrute.exe google.com
Easy to install: You just need http://www.dnspython.org/ and python2.7 or python3. This tool should work under any operating system: bsd, osx, windows, linux...
(On a side note giving a makefile root always bothers me, it would be a great way to install a backdoor...)
Under Ubuntu/Debian all you need is:
  • sudo apt-get install python-dnspython
On other operating systems you may have to install dnspython manually:
http://www.dnspython.org/
Easy to use:
  • ./subbrute.py google.com
Tests multiple domains:
  • ./subbrute.py google.com gmail.com blogger.com
or a newline delimited list of domains:
  • ./subbrute.py -t list.txt
Also keep in mind that subdomains can have subdomains (example: _xmpp-server._tcp.gmail.com):
  • ./subbrute.py gmail.com > gmail.out
  • ./subbrute.py -t gmail.out
Cheers!


APT2 - Automated Penetration Toolkit

$
0
0

This tool will perform an NMap scan, or import the results of a scan from Nexpose, Nessus, or NMap. The processesd results will be used to launch exploit and enumeration modules according to the configurable Safe Level and enumerated service information.

All module results are stored on localhost and are part of APT2's Knowledge Base (KB). The KB is accessible from within the application and allows the user to view the harvested results of an exploit module.

Setup
On Kali Linux install python-nmap library:
sudo pip install python-nmap
sudo pip install neovim

Configuration (Optional)
APT2 uses the default.cfg file in the root directory. Edit this file to configure APT2 to run as you desire.
Current options include:
  • metasploit
  • nmap
  • threading

Metasploit RPC API (metasploit)
APT2 can utuilize your host's Metasploit RPC interface (MSGRPC). Additional Information can be found here: https://help.rapid7.com/metasploit/Content/api-rpc/getting-started-api.html

NMAP
Configure NMAP scan settings to include the target, scan type, scan port range, and scan flags. These settings can be configured while the program is running.

Threading
Configure the number of the threads APT2 will use.

Run:

No Options:
python apt2 or ./apt2

With Configuration File
python apt2 -C <config.txt>

Import Nexpose, Nessus, or NMap XML
python apt2 -f <nmap.xml>

Specify Target Range to Start
python apt2 -f 192.168.1.0/24

Safe Level
Safe levels indicate how safe a module is to run againsts a target. The scale runs from 1 to 5 with 5 being the safest. The default configuration uses a Safe Level of 4 but can be set with the -s or --safelevel command line flags.

Usage:
usage: apt2.py [-h] [-C <config.txt>] [-f [<input file> [<input file> ...]]]
[--target] [--ip <local IP>] [-v] [-s SAFE_LEVEL] [-b]
[--listmodules]

optional arguments:
-h, --help show this help message and exit
-v, --verbosity increase output verbosity
-s SAFE_LEVEL, --safelevel SAFE_LEVEL
set min safe level for modules
-b, --bypassmenu bypass menu and run from command line arguments

inputs:
-C <config.txt> config file
-f [<input file> [<input file> ...]]
one of more input files seperated by spaces
--target initial scan target(s)

ADVANCED:
--ip <local IP> defaults to ip of interface

misc:
--listmodules list out all current modules

Modules
-----------------------
LIST OF CURRENT MODULES
-----------------------
nmaploadxml Load NMap XML File
hydrasmbpassword Attempt to bruteforce SMB passwords
nullsessionrpcclient Test for NULL Session
msf_snmpenumshares Enumerate SMB Shares via LanManager OID Values
nmapbasescan Standard NMap Scan
impacketsecretsdump Test for NULL Session
msf_dumphashes Gather hashes from MSF Sessions
msf_smbuserenum Get List of Users From SMB
anonftp Test for Anonymous FTP
searchnfsshare Search files on NFS Shares
crackPasswordHashJohnTR Attempt to crack any password hashes
msf_vncnoneauth Detect VNC Services with the None authentication type
nmapsslscan NMap SSL Scan
nmapsmbsigning NMap SMB-Signing Scan
responder Run Responder and watch for hashes
msf_openx11 Attempt Login To Open X11 Service
nmapvncbrute NMap VNC Brute Scan
msf_gathersessioninfo Get Info about any new sessions
nmapsmbshares NMap SMB Share Scan
userenumrpcclient Get List of Users From SMB
httpscreenshot Get Screen Shot of Web Pages
httpserverversion Get HTTP Server Version
nullsessionsmbclient Test for NULL Session
openx11 Attempt Login To Open X11 Servicei and Get Screenshot
msf_snmplogin Attempt Login Using Common Community Strings
msf_snmpenumusers Enumerate Local User Accounts Using LanManager/psProcessUsername OID Values
httpoptions Get HTTP Options
nmapnfsshares NMap NFS Share Scan
msf_javarmi Attempt to Exploit A Java RMI Service
anonldap Test for Anonymous LDAP Searches
ssltestsslserver Determine SSL protocols and ciphers
gethostname Determine the hostname for each IP
sslsslscan Determine SSL protocols and ciphers
nmapms08067scan NMap MS08-067 Scan
msf_ms08_067 Attempt to exploit MS08-067


Lynis 2.3.2 - Security Auditing Tool for Unix/Linux Systems

$
0
0

We are excited to announce this major release of auditing tool Lynis. Several big changes have been made to core functions of Lynis. These changes are the next of simplification improvements we made. There is a risk of breaking your existing configuration.

Lynis is an open source security auditing tool. Used by system administrators, security professionals, and auditors, to evaluate the security defenses of their Linux and UNIX-based systems. It runs on the host itself, so it performs more extensive security scans than vulnerability scanners.

Supported operating systems

The tool has almost no dependencies, therefore it runs on almost all Unix based systems and versions, including:
  • AIX
  • FreeBSD
  • HP-UX
  • Linux
  • Mac OS
  • NetBSD
  • OpenBSD
  • Solaris
  • and others
It even runs on systems like the Raspberry Pi and several storage devices!

Installation optional

Lynis is light-weight and easy to use. Installation is optional: just copy it to a system, and use "./lynis audit system" to start the security scan. It is written in shell script and released as open source software (GPL). 

How it works

Lynis performs hundreds of individual tests, to determine the security state of the system. The security scan itself consists of performing a set of steps, from initialization the program, up to the report.

Steps
  1. Determine operating system
  2. Search for available tools and utilities
  3. Check for Lynis update
  4. Run tests from enabled plugins
  5. Run security tests per category
  6. Report status of security scan
Besides the data displayed on screen, all technical details about the scan are stored in a log file. Any findings (warnings, suggestions, data collection) are stored in a report file.

Opportunistic scanning

Lynis scanning is opportunistic: it uses what it can find.
For example if it sees you are running Apache, it will perform an initial round of Apache related tests. When during the Apache scan it also discovers a SSL/TLS configuration, it will perform additional auditing steps on that. While doing that, it then will collect discovered certificates, so they can be scanned later as well.

In-depth security scans

By performing opportunistic scanning, the tool can run with almost no dependencies. The more it finds, the deeper the audit will be. In other words, Lynis will always perform scans which are customized to your system. No audit will be the same!

Use cases

Since Lynis is flexible, it is used for several different purposes. Typical use cases for Lynis include:
  • Security auditing
  • Compliance testing (e.g. PCI, HIPAA, SOx)
  • Vulnerability detection and scanning
  • System hardening

Resources used for testing

Many other tools use the same data files for performing tests. Since Lynis is not limited to a few common Linux distributions, it uses tests from standards and many custom ones not found in any other tool.
  • Best practices
  • CIS
  • NIST
  • NSA
  • OpenSCAP data
  • Vendor guides and recommendations (e.g. Debian Gentoo, Red Hat)

Lynis Plugins

lugins enable the tool to perform additional tests. They can be seen as an extension (or add-on) to Lynis, enhancing its functionality. One example is the compliance checking plugin, which performs specific tests only applicable to some standard.


Changelog

Categories and Groups

Tests are now grouped by their focus area and named 'groups' accordingly. Besides groups, each test will belong to a category (performance, privacy, or security).
Commands: lynis show categories, lynis show groups Options: --tests-from-category, --tests-from-group
Note: You might need to change your scripts if you previously defined the group of tests to scan.
Development

A new 'strict' option is available in the profiles and by default enabled for the initialization phases of Lynis. It will perform a strict code check for the tests, to detect any uninitialized variables, improving code quality.

Helpers

With 'lynis update check' you can now check for updates. This is the preferred new method.
The command 'lynis show changelog' allows reviewing the changes. Optionally a release can be specified as additional argument.

Languages

Initial translation for German has been contributed by Kai Raven. The Italian translation by Stefano Marty (stefanomarty). Hungarian translation by Zoltan Paldi (paldiz)

Profiles

Parsing of the profiles has been improved, which prevented some settings from overriding default settings.

Tests

  • AUTH-9212 - Added prerequisite to log
  • AUTH-9216 - Simplified test and make it more efficient
  • AUTH-9218 - Clean ups and improve readability
  • AUTH-9226 - Style, text, and removed warning
  • AUTH-9228 - Provide just a suggestion instead of warning
  • AUTH-9268 - Improve test for readability
  • AUTH-9328 - Test /etc/profile.d for umask setting
  • AUTH-9406 - Readability and code style changes
  • CONT-8102 - Determine if all Docker tests should be performed
  • DBS-1880 - Initial support for Redis server
  • HTTP-6720 - Readability improvement of test
  • KRNL-5830 - Readability and style improvements, ignore rescue images
  • MAIL-8818 - Style and refactoring
  • PHP-2211 - Readability improvement and code style changes
  • PHP-2374 - Changed text and cleanups
  • PHP-2376 - Log result to log file instead of report
  • PKGS-7383 - Simplified test
  • PKGS-7388 - Style and readability improvements
  • TIME-3106 - Corrected string to test for status
  • TOOL-5102 - Split of fail2ban tests
  • TOOL-5104 - Test for enabled fail2ban jails

Languages

Translation of Spanish (es) added Proper display of text strings when accented characters are used More text strings added

General

  • Added bold and header as new colors
  • Changed header and footer of screen output
  • Allow atomic tests to be skipped (e.g. SSH-7408)
  • Extended tests database with category (lynis show tests)
  • By default Lynis will now run in 'quick mode' and not break after each section. You can get this behavior by adding the --wait option.

Functions

  • RemoveColors - New test to clear colors
  • DisplayError - Display error on screen in uniform format and colors Use an optional exit code to quit the program
  • SkipAtomicTest - This function is now properly working with lowercase strings

Website

Several controls on the website are added or updated, including:

  • FILE-6344
  • FINT-4315
  • FINT-4402
  • HTTP-6714
  • MACF-6234
  • NAME-4018
  • NAME-4402
  • PHP-2374
  • PROC-3612
  • TIME-3106


    Raptor WAF v0.2 - Web Application Firewall using DFA

    $
    0
    0

    Raptor WAF is a simple web application firewall made in C, using KISS principle, to make poll use select() function, is not better than epoll() or kqueue() from *BSD but is portable,  the core of match engine using DFA to detect XSS, SQLi and path traversal.

    No more words, look at the following :


    WAF stands for Web Application Firewall. It is widely used nowadays to detect and defend SQL Injections and XSS...
    • You can block XSS, SQL injection attacks and path traversal with Raptor
    • You can use blacklist of IPs to block some users at config/blacklist ip.txt
    • You can use IPv6 and IPv4 at communications
    • At the future DoS protector, request limit, rule interpreter and Malware detector at uploads.
    • At the future SSL/TLS...


    to run:

    $ git clone https://github.com/CoolerVoid/raptor_waf
    $ cd raptor_waf; make; bin/raptor

    Example

    Up some HTTPd server at port 80
    $ bin/Raptor -h localhost -p 80 -r 8883 -w 4 -o loglog.txt
    you can test at http://localhost:8883/test.php

    Look the docs

    https://github.com/CoolerVoid/raptor_waf/blob/master/doc/raptor.pdf

    Tests:

    509 of attacks, detect and block 349, 68% of attacks blocked



    Steps to create your WAF(web application firewall) in C

    Following definition (like OWASP), a WAF is a piece of software intended to protect a web app that is on the level of the application. nowadays, a WAF is not defined by the web app, it’s not a customized solution specific to that application but similarly to a general software firewall, where one that contains parameters to protect against intrusion in a wide variety of frameworks and codes. Trying clear your mind, there is overlap between the different types of firewalls. Software and hardware firewalls are used in their own right to protect networks. However, WAFs with their specialized function for web applications, can take the form input of either of those two main types. Per default, a firewall uses a blacklist, protecting against an individual, previously logged attacks. Additionally, it can also use a white list, providing allowable users and instances of interaction for the application, another function is block SQL Injection attacks and XSS attacks… Another context  WAFs can create random tokens and put in forms to try blocks web robots and automated attacks, this practice can try mitigate CSRF pitfalls. Before you ask “How i can do  it?”, i gotta bring to you some principles, anyway the theory around facts…


    Have two common WAFs:

    1- Uses plugin in HTTPd to get information of data INPUT or OUTPUT, before finish he gets the request and block some contents, this function focuses at HTTP METHODs POST, GET… 


     2- This way, is my favorite, is a independent reverse proxy server, he bring all requests of the client to the proxy, the proxy makes some analysis in the content, if not block, he send all the information to the external server… 

      
    Number One is a cold, this path is not fully portable… other bad thing you need create a diferent plugin each HTTPd, something to apache another to NGINX, IIs, lighttpd…  its not cool! If you are not a good low level programmer… you can try use twisted of python, is easy make reverse proxy with it, but is not good way, because not have good performance in production… if you piss off for it, study the Stevens book of sockets. Its OK, the title of this post is “create waf in C”, Task fully done here and commented and with some documentations in LaTex… relax, you can get it in this repository:


    Panopticon - A Libre Cross-Platform Disassembler

    $
    0
    0

    Panopticon is a cross platform disassembler for reverse engineering written in Rust. Panopticon has functions for disassembling, analysing decompiling and patching binaries for various platforms and instruction sets.

    Panopticon comes with GUI for browsing control flow graphs, displaying analysis results, controlling debugger instances and editing the on-disk as well as in-memory representation of the program.

    Building
    Panopticon builds with Rust stable. The only dependencies aside from a working Rust 1.7 toolchain and Cargo you need Qt 5.4 installed.

    Linux
    Install Qt using your package manager.
    Ubuntu 15.10 and 16.04:
    sudo apt install qt5-default qtdeclarative5-dev \
    qml-module-qtquick-controls qml-module-qttest \
    qml-module-qtquick2 qml-module-qtquick-layouts \
    qml-module-qtgraphicaleffects \
    qtbase5-private-dev pkg-config \
    git build-essential cmake
    Fedora 22 and 23:
    sudo dnf install qt5-qtdeclarative-devel qt5-qtquickcontrols \
    qt5-qtgraphicaleffects
    After that clone the repository onto disk and use cargo to build everything.
    git clone https://github.com/das-labor/panopticon.git
    cd panopticon
    cargo build
    Gentoo:
    layman -a rust
    layman -f -o https://raw.github.com/das-labor/labor-overlay/master/labor-overlay -a labor-overlay

    emerge -av panopticon

    Windows
    Install the Qt 5.4 SDK and the Rust toolchain Panopticon can be build using cargo build .

    Running
    The current version only supports AVR and has no ELF or PE loader yet. To test Panopticon you need relocated AVR code. Such a file is prepared in tests/data/sosse .

    Contributing
    Panopticon is licensed under GPLv3 and is Free Software. Hackers are always welcome. See https://panopticon.re for our project documentation. Panopticon uses Github for issue tracking: https://github.com/das-labor/panopticon/issues

    Contact
    IRC: #panopticon on Freenode. Twitter: @_cibo_


    OpenStego - Steganography Application (Data Hiding and Watermarking)

    $
    0
    0

    OpenStego is a steganography application that provides two functionalities:
    1. Data Hiding: It can hide any data within a cover file (e.g. images).
    2. Watermarking: Watermarking files (e.g. images) with an invisible signature. It can be used to detect unauthorized file copying. 

    Usage
    • For GUI:
         java -jar lib\openstego.jar    

    OR
    Use the bundled batch file or shell script to launch the GUI.
    • For command line interface:
    Refer to online documentation .

    Plugins help
    Please use the following command to get plugin specific help:
       java -jar lib\openstego.jar -help -a <algorithm_name>   


    Developing new plugin
    To add a new plugin, the following abstract class must be implemented:
    net.sourceforge.openstego.OpenStegoPlugin
    Read the API documentation for the details of the methods to be implemented. In addition, the following utility class can be used to handle multilingual string labels for the plugin:
    net.sourceforge.openstego.util.LabelUtil
    A new namespace should be added to LabelUtil class for each new plugin. Same namespace can also be used for exception messages while throwing OpenStegoException .
    After implementing the plugin classes, create new file named OpenStegoPlugins.external and put the fully qualified name of the class which implements OpenStegoPlugin in the file. Make sure that this file is put directly under the CLASSPATH while invoking the application.
    Please refer to the net.sourceforge.openstego.plugin.lsb package sources for sample plugin implementation.

    Author
    Samir Vaidya (syvaidya [at] gmail)
    Copyright (c) 2007-2015

    See Also
    Project homepage: http://www.openstego.com
    Blog: http://syvaidya.blogspot.com



    Pentmenu - A simple Bash Script for Recon and DOS Attacks

    $
    0
    0

    A bash script inspired by pentbox.
    Designed to be a simple way to implement various network pentesting functions, including network attacks, using wherever possible readily available software commonly installed on most linux distributions without having to resort to multiple specialist tools.

    Sudo is implemented where necesssary.
    Tested on Debian and Arch.

    Requirements:
    • bash
    • sudo
    • curl
    • netcat (must support '-k' option, openbsd variant recommended)
    • hping3 (or nping can be used as a substitute for flood attacks)
    • openssl
    • stunnel
    • nmap
    • whois (not essential but preferred)

    How to use?
    • Download the script:
    $ wget https://raw.githubusercontent.com/GinjaChris/pentmenu/master/pentmenu
    • Make it executable:
    $ chmod +x ./pentmenu
    • Run it:
    $ ./pentmenu
    Alternatively, use git clone, or download the latest release from https://github.com/GinjaChris/pentmenu/releases , extract it and run the script.

    More detail
    RECON MODULES
    • Show IP - uses curl to perform a lookup of your external IP. Runs ip a or ifconfig (as appropriate) to show local interface IP's.
    • DNS Recon - passive recon, performs a DNS lookup (forward or reverse as appropriate for target input) and a whois lookup of the target. If whois is not available it will perform a lookup against ipinfo.io (only works for IP's, not hostnames).
    • Ping Sweep - uses nmap to perform an ICMP echo (ping) against the target host or network.
    • Network Recon - uses nmap to identify live hosts, open ports, attempts OS identification, grabs banners/identifies running software version and attempts OS detection. Nmap will not perform a ping sweep prior as part of this scan. Nmap's default User-Agent string is changed to that of IE11 in this mode, to help avoid detection via HTTP. This scan can take a long time to finish, please be patient.
    • Stealth Scan - TCP Port scanner using nmap to scan for open ports using TCP SYN scan. Nmap will not perform a ping sweep prior to performing the TCP SYN scan. This scan can take a long time to finish, please be patient.
    • UDP scan - uses nmap to scan for open UDP ports.
    • Check Server Uptime - estimates the uptime of the target by querying an open TCP port with hping. Accuracy of the results varies from one machine to another.
    DOS MODULES
    • TCP Syn Flood - sends a flood of TCP SYN packets using hping3. If hping3 is not found, it attempts to use the nmap-nping utility instead. Hping3 is preferred since it sends packets as fast as possible. Options are provided to use a source IP of your interface, or specify (spoof) a source IP, or spoof a random source IP for each packet. Optionally, you can add data to the SYN packet. All SYN packets have the fragmentation bit set and use hpings virtual MTU of 16 bytes, guaranteeing fragmentation. Falling back to nmap-nping means sending X number of packets per second until Y number of packets is sent and only allows the use of interface IP or a specified (spoofed) source IP. 
      A TCP SYN flood is unlikely to break a server, but is a good way to test switch/router/firewall infrastructure and state tables. 
    • UDP Flood - much like the TCP SYN Flood but instead sends UDP packets to the specified host:port. Like the TCP SYN Flood function, hping3 is used but if it is not found, it attempts to use nmap-nping instead. All options are the same as TCP SYN Flood, except you can specify data to send in the UDP packets. Again, this is a good way to check switch/router throughput or to test VOIP systems.
    • SSL DOS - uses OpenSSL to attempt to DOS a target host:port. It does this by opening many connections and causing the server to make expensive handshake calculations. This is not a pretty or elegant piece of code, do not expect it to stop immediately upon pressing 'Ctrl c', but it can be brutally effective. 
      The option for client renegotiation is given; if the target server supports client initiated renegotiation, this option should be chosen. Even if the target server does not support client renegotiation (for example CVE-2011-1473), it is still possible to impact/DOS the server with this attack. 
      It is very useful to run this against loadbalancers/proxies/SSL-enabled servers (not just HTTPS!) to see how they cope under the strain. 
    • Slowloris - uses netcat to slowly send HTTP Headers to the target host:port with the intention of starving it of resources. This is effective against many, although not all, HTTP servers, provided the connections can be held open for long enough. Therefore this attack is only effective if the server does not limit the time available to send a complete HTTP request. Some implementations of this attack use clearly identifiable headers which is not the case here. The number of connections to open to the target is configurable. The interval between sending each header line is configurable, with the default being a random value between 5 and 15 seconds. The idea is to send headers slowly, but not so slow that the servers idle timeout closes the connection. The option to use SSL (SSL/TLS) is given, which requires stunnel.
    Defences against this attack include (but are not limited to):
    Limiting the number of TCP connections per client; this will prevent a single machine from making the server unavailable, but is not effective if say, 10,000 clients launch the attack simultaneously. Additionally, such a defensive measure may negatively impact multiple (legitimate) clients operating behind a forward proxy server.
    Limiting the time available to send a complete HTTP request; this is effective since the attack relies on slowly sending headers to the server (the server should await all headers from the client before responding). If the server limits the time for receiving all headers of a request to 10 seconds (for example) it will severely limit the effectiveness of the attack. It is possible that such a measure will prevent legitimate clients over slow/lossy connections from accessing the site.
    • Distraction Scan - this is not really a DOS attack but simply launches multiple TCP SYN scans, using hping, from a spoofed IP of your choosing (such as the IP of your worst enemy). It is designed to be an obvious scan in order to trigger any lDS/IPS the target may have and so hopefully obscure any actual scan or other action that you may be carrying out.
    EXTRACTION MODULES
    • File extraction via ICMP - This module uses hping to send data with ICMP packets. It can be extremely useful where only ICMP connectivity is possible.
    • File receipt via ICMP - This module uses hping to listen for ICMP packets and record the data to an output file of your choice. It will only record packet data starting with the secret that you define. Therefore the extractor and receiver must use an identical secret.
    An alternative to using this receiver is to run wireshark to capture the inbound icmp packets, which seems quite happy to reconstruct the data received over several fragmented ICMP packets.
    • Listener - uses netcat to open a listener on a configurable TCP or UDP port. This can be useful for testing syslog connectivity, receive files or checking for active scanning on the network. Anything received by the listener is written out to ./pentmenu.listener.out.

    Disclaimer
    This script is only for responsible, authorised use. You are responsible for your own actions and this script is provided without warranty or guarantee of any kind. The author(s) accept no responsibility or liability on your behalf.

    Also see
    Pentmenu is available as a package on Arch Linux. Big love to ArchStrike and Parrot linux .


    Hydra 8.3 - Network Logon Cracker

    $
    0
    0
     A very fast network logon cracker which support many different services.

    See feature sets and services coverage page - incl. a speed comparison against ncrack and medusa.Number one of the biggest security holes are passwords, as every password security study shows.

    This tool is a proof of concept code, to give researchers and security consultants the possiblity to show how easy it would be to gain unauthorized access from remote to a system.

    There are already several login hacker tools available, however none does either support more than one protocol to attack or support parallized connects.

    It was tested to compile cleanly on Linux, Windows/Cygwin, Solaris, FreeBSD/OpenBSD, QNX (Blackberry 10) and OSX.

    Currently this tool supports the following protocols:
    Asterisk, AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-PROXY, HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MS-SQL, MYSQL, NCP, NNTP, Oracle Listener, Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, RDP, Rexec, Rlogin, Rsh, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5, SSH (v1 and v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC and XMPP.

    CHANGELOG for 8.3
    CHANGELOG for 8.3
    ===================
    ! Development moved to a public github repository: https://github.com/vanhauser-thc/thc-hydra

    * Support for upcoming OpenSSL 1.1 added. needs testing.
    * Fixed hydra redo bug (issue #113)
    * Updated xhydra for new hydra features and options
    * Some more command line error checking
    * Ensured unneeded sockets are closed


    Raptor - Web-based Source Code Vulnerability Scanner

    $
    0
    0

    Raptor is a web-based (web-serivce + UI) github centric source-vulnerability scanner i.e. it scans a repository with just the github repo url. You can setup webhooks to ensure automated scans every-time you commit or merge a pull request. The scan is done asynchonously and the results are available only to the user who initiated the scan.

    Some of the features of the Raptor:
    • Plug-in architecture (plug and play external tools and generate unified reports)
    • Web-service can be leveraged for custom automation (without the need of the UI)
    • Easy to create/edit/delete signatures for new vulnerabilities and/or programming languages.
    This tool is an attempt to help the community and start-up companies to emphasize on secure-coding. This tool may or may not match the features/quality of commercial alternatives, nothing is guaranteed and you have been warned. This tool is targeted to be used by security code-reviewers and/or developers with secure-coding experience to find vulnerability entry-points during code-audits or peer reviews. Please DO NOT trust the tool's output blindly. This is best-used if you plug Raptor into your CI/CD pipeline.

    Tech
    Integrated Plugins:
    Note: Most of the following tools/modules/libs have been modified heavily to be able to integrate well in the framework.
    • Mozilla ScanJS - for JavaScript (Client-Side, Node.JS etc. and upcomming support for Chrome Extensions & Firefox Plugins)
    • Brakeman - for Ruby On Rails
    • RIPS - for PHP
    • Manitree - for AndroidManifest.xml insecurities
    Available Rulepacks:
    • ActionScript - supports Flash/Flex (ActionScript 2.0 & 3.0) source/sinks
    • FindSecurityBugs (rules Only) - for Java (J2EE, JSP, Android, Scala, Groovy etc.)
    • gitrob - for Sensitive Date Exposure (files containing credentials, configuration, backup, private settings etc.)

    Installation (Tested on a Ubuntu 14.04 x64 LAMP instance)
    Installation Video: YouTube Install
    $ wget https://github.com/dpnishant/raptor/archive/master.zip -O raptor.zip
    $ unzip raptor.zip
    $ cd raptor-master
    $ sudo sh install.sh

    Usage

    Scanner
    Installation Video: YouTube Usage
    cd raptor-master
    sudo sh start.sh #starts the backend web-service
    Now point your browser to Raptor Home (http://localhost/raptor/)

    Login
    Login with the username as registered on the corresponding github server you are connected to and any password (but remember the username to view scan history)
    For example:
    If you are registered as foobar on https://github.com , then use the same username when scanning repos on https://github.com . However if are registered as foobar_corp on your personal/corporate github (say https://github.corp.company.com ) then use the same username if you intend to scan repos on https://github.corp.company.com
    However, as of now password can be anything, since we have NOT implemented a database in the development version.

    Rules Editor
    You can use the bundled light-weight, GUI client-side rules editor for adding any new/custom rule(s) for your specific requirements(s) or any other plain-text editor as the rulepack files are just simple JSON structures. Use your browser to open rules located in 'backend/rules'. When you are done, save your new/modified rules file in same directory i.e. 'backend/rules'. All you need to do now is a minor edit, here: Init Script . Append your new rulepack filename to this array without the '.rulepack' extension and restart the backend server. You are all set!
    You can access it here: Rules Editor (http://localhost/raptor/editrules.php)

    Adding Rules

    ignore_list.rulepack
    Add a filename or directory name pattern to exclude from getting scanned. This is useful to ignore any known files like jquery.min.js etc. or say the entire /test/ directory. For example in the sample content below, jquery means jquery and is case-sensitive, hence be careful. In the plugins section, name of the plugin is the name of the rulepack file without the ".rulepack" extension as available under the rules/ directory. The issue field is the ID of the issue mentioned in each rule of the rulepack files: Example #1 , Example #2 . The match_type field value can be either regex or start or end . The value field is the exact string to be matched in case the match_type is start or end . In case the match_type field is regex the value should contain the raw RegEx pattern which needs to be Base64 encoded to avoid any JSON syntax escaping related issues. regex is a Regular Expression based matching, start will match the at the beginning of the snippet and end will match at the end of the snippet.
    The way it works is when the scanner has finished scanning for issues, it will iterate through all the issues found and remove those that match the patterns (based on the type of match) of each plugin mentioned in the ignore_list.rulepack file.
    (sample contents below)
    {
    "files": [
    "/.",
    "bootstrap",
    "jquery",
    "uglify",
    "knockout",
    "angular",
    "backbone",
    "ember",
    "yui",
    "mocha",
    "express",
    "yql",
    "dataTables"
    ],
    "directories": [
    "/node_modules/",
    "/test/"
    ],
    "plugins": [
    {
    "name": "common", <----- Name of the Plugin
    "issue": "HARD_CRED1", <----- ID of the issue
    "patterns": [
    {
    "match_type": "start", <----- Match type can be either "regex", "start" or "end"
    "value": "foreach" <----- The actual string to match. Base64 Encode this pattern if match_type is "regex"
    },
    {
    "match_type": "start",
    "value": "for"
    },
    {
    "match_type": "start",
    "value": "elseif"
    }
    ]
    }
    ]
    }

    your_rule_name.rulepack
    You may either create an entirely new rulepack and add it to the scanner or you may write your own scanner plugin and add it to the framework. A sample rulepack file is a very simple JSON structure.
    {
    "plugin_type": "plugin_name", <-- Give it a name (any string)
    "file_types": [
    ".java", <-- Add as many file extensions, you would want the scanner to pick while scanning
    ".js"
    ],
    "rules": [
    {
    "id": "HARD_CRED1", <-- A unique IssueID, be creative.
    "severity": "High", <-- This can be High, Medium or Low. This would accordingly show up in the graphs in UI.
    "title": "Title of the Issue", <-- The title of the issue.
    "description": "This text here shall be reflected in the UI as description of the issue.", <-- The description of the issue, this is optional.
    "remediation": "The text here shall be reflected in the UI as the steps to remediate the issue", <-- The remediation of the issue, this is optional.
    "link": "Any URL that has more resources about the issue.", <-- URL of the issue. This is optional
    "example_insecure": "Put the insecure version of the code snippet for learning purpose.", <-- This is optional
    "example_secure": "Put the secure version of the code snippet for learning purpose.", <-- This is optional
    "platform_version": "all", <-- Leave it like that
    "enabled": "true", <-- This value enables or disables the rule during the scan. It can be either "true" or "false".
    "logic": "Explain the logic behind this rule for future updation or customization", <-- This is optional
    "signature": "base64encode(regexp)" <-- Write the Regular Expression of your pattern and then base64encode it to put it here.
    }
    ]
    }
    If you want more control or add more intelligence to your scanner rather than a simple RegExp search, you may write a quick scanner plugin like this one and integrate the script here and append the script name here . That's it. That's pretty straight forward for anyone with basic Python scripting skills.

    Public/Private GitHub instance
    You can use Raptor to scan your organization's private as well as public instances of GitHub by specifying the right server endpoints at here and here .

    Screenshots

    Login


    Github Scan



    Zip Scan


    Scan Started


    Scan in progress


    Report Statistics


    Issue Details


    Export Report


    Scan History


    Rules Editor


    Server Error


    Development
    Want to contribute? Great! Get in touch with me if you have an idea or else feel free to fork and improve.

    Contributors

    Known Bugs (& Workarounds)
    Ubuntu Kylin Installation


    MacroShop - Collection of scripts to aid in delivering payloads via Office Macros

    $
    0
    0

    Collection of scripts to aid in delivering payloads via Office Macros. Most are python.
    1. macro_safe.py 
      Generates safe for VB inclusion into an excel spreadsheet. Requires a batch file generated by Veil-Evasion powershell payloads. To include, enable the developer menu in Office, head to Visual Basic tab, double click on This_Workbook and paste the contents of the output file. Syntax is: python macro_safe.py test.bat test.txt 
    2. exeinvba.py 
      Generates VB code for including and unpacking a portable executable onto a file system for delivery via Office Macro. To include, enable the developer menu in Office, head to Visual Basic tab, double click on This_Workbook and paste the contents of the output file. Requires a PE. Syntax is: python exeinvba.py --exe test.exe --out test.vb --dest "C:\Users\Public\Documents\test.exe" Ensure any backslashes are escaped in the dest variable 
    3. macro_safe_old.py 
      Same as macro_safe.py, just uses powershell vice VB for architecture detection to call the correct version of powershell. 
    4. b64_enc.py 
      Watered down version of exeinvba.py that will output both the raw base64 string of the executable and the variable specific section of the VB. May be useful for use with different VB templates or other methods that may require an executable passed as a base64 string somewhere. Automatically stores output into base64_output.txt (raw) and base64_output.vb. Syntax is: python b64_enc.py test.exe 

    Rupture - A framework for BREACH and other compression-based crypto attacks

    $
    0
    0

    Rupture is a framework for easily conducting BREACH and other compression-based attacks.
    For more information, please visit Rupture's home page: RuptureIt


    Authors
    Rupture is developed by:
    This research is being conducted at the Cryptography & Security lab at the University of Athens and the National Technical University of Athens.

    Installation
    You can install the whole framework as follows:
    • Install rupture.
    rupture/ $ ./install.sh all
    or you can also install each module separately, as below.

    Javascript
    Rupture uses Javascript for communication between the client code and the realtime server. Client code is compiled using babel and server code is run on Node.js .

    Injection
    • Install injection.
    rupture$ ./install.sh injection

    Client
    • Install client.
    rupture$ ./install.sh client

    Python
    Rupture uses Python for the Command & Control server. Communication between js realtime server and Python backend is performed with a Django API endpoint.

    Backend
    • Install backend.
    rupture/ $ ./install.sh backend

    Sniffer
    • Install sniffer.
    rupture/ $ ./install.sh sniffer

    Execution

    Backend
    • Edit following configuration scripts:
      • rupture/backend/target_config.yml
      • rupture/backend/victim_config.yml
    • Setup backend.
    rupture $ ./rupture setup
    • Deploy backend.
    rupture $ ./rupture backend

    Realtime
    • Deploy realtime.
    rupture $ ./rupture realtime

    Sniffer
    • Deploy sniffer.
    rupture $ ./rupture sniffer

    Attack
    • You can also deploy backend, realtime and sniffer modules all together:
    rupture/ $ sudo ./rupture attack
    Note: Sniffer deployment - either standalone or all together with 'attack' - may need elevated privileges, since it requires access to network interface.

    Client
    • Client code is in following directory:
      • rupture/client/client_
      where is the victim's id in the backend database.
    • Open the following test HTML page in browser:
      • rupture/client/client_/test.html
      or inject client code in HTTP responses:
    rupture/client/client_<id> $ ./inject.sh


    ps-inject - Inject Shellcode on Linux PID

    $
    0
    0

    Inject shellcode on linux PID

    How use:
    $ make
    gcc -Wall -Wextra -O3 -c -o lib/file.o src/file.c
    gcc -Wall -Wextra -O3 -c -o lib/str.o src/str.c
    gcc -Wall -Wextra -O3 -c -o lib/mem.o src/mem.c
    gcc -Wall -Wextra -O3 -c -o lib/inject.o src/inject.c
    gcc -Wall -Wextra -O3 -c -o lib/main.o src/main.c
    gcc -Wall -Wextra -O3 -o ps-inject lib/file.o lib/str.o lib/mem.o lib/inject.o lib/main.o
    $ ./ps-inject
    ____ ____ __ __ _ __ ____ ___ ____
    ( _ \ / ___) ( )( ( \ _( )( __)/ __)(_ _)
    ) __/_ \___ \ _ )( / // \) \ ) _)( (__ )(
    (__) (_)(____/(_)(__)\_)__)\____/(____)\___) (__)

    Usage: ps-inject [OPTIONS] [PID]

    -f, --sc-file FILE File contains shellcode bytes
    -s, --sc-string STRING Shellcode string, e.g '\x90\x90\x90'
    -n, --no-restore Not restore memory overwrited by shellcode


    Example:
    asciicast


    Manalyze - A static analyzer for PE executables

    $
    0
    0

    Manalyzer is a free service which performs static analysis on PE executables to detect undesirable behavior.

    A static analyzer for PE files
    Manalyze was written in C++ for Windows and Linux and is released under the terms of the GPLv3 license . It is a robust parser for PE files with a flexible plugin architecture which allows users to statically analyze files in-depth. Manalyze...
    • Identifies a PE's compiler
    • Detects packed executables
    • Applies ClamAV signatures
    • Searches for suspicious strings
    • Looks for malicious import combinations (i.e. WriteProcessMemory + CreateRemoteThread )
    • Detects cryptographic constants (just like IDA's findcrypt plugin)
    • Can submit hashes to VirusTotal
    • Verifies authenticode signatures (on Windows only)

    How to build
    There are few things I hate more than checking out an open-source project and spending two hours trying to build it. This is why I did my best to make Manalyze as easy to build as possible. If these few lines don't work for you, then I have failed at my job and you should drop me a line so I can fix this.

    On Linux and BSD (tested on Debian Jessie and FreeBSD 10.2)
    $> [sudo or as root] apt-get install libboost-regex-dev libboost-program-options-dev libboost-system-dev libboost-filesystem-dev build-essential cmake git
    $> [alternatively, also sudo or as root] pkg install boost-libs-1.55.0_8 cmake
    $> git clone https://github.com/JusticeRage/Manalyze.git && cd Manalyze
    $> cmake .
    $> make
    $> cd bin && ./manalyze --version

    On Windows
    • Get the Boost libraries from boost.org and install CMake .
    • Build the boost libraries
      • cd boost_1_XX_0 && ./bootstrap.bat && ./b2.exe --build-type=complete --with-regex --with-program_options --with-system --with-filesystem
      • Add an environment variable BOOST_ROOT which contains the path to your boost_1_XX_0 folder.
    • Download and install Git
    • git clone https://github.com/JusticeRage/Manalyze.git && cd Manalyze && cmake .
    • A Visual Studio project manalyze.sln should have appeared in the Manalyze folder!

    Offline builds
    If you need to build Manalyze on a machine with no internet access, you have to manually check out the following projects:
    Place the two folders in the external folder as external/yara and external/hash-library respectively. Then run cmake . -DGitHub=OFF and continue as you normally would.

    Binaries
    Windows x86 binaries
    All the binaries in this archive are signed with a certificate ‎presenting the following fingerprint: 26fc24c12b2d84f77615cf6299e3e4ca4f3878fc .

    Generating ClamAV rules
    Since ClamAV signatures are voluminous and updated regularly, it didn't make a lot of sense to distribute them from GitHub or with the binary. When you try using the ClamAV plugin for the first time, you will likely encounter the following error message: [!] Error: Could not load yara_rules/clamav.yara . In order to generate them, simply run the update_clamav_signatures.py Python script located in bin/yara_rules .
    Run the script whenever you want to refresh the signatures.

    Usage
    $ ./manalyze.exe --help
    Usage:
    -h [ --help ] Displays this message.
    -v [ --version ] Prints the program's version.
    --pe arg The PE to analyze. Also accepted as a positional
    argument. Multiple files may be specified.
    -r [ --recursive ] Scan all files in a directory (subdirectories will be
    ignored).
    -o [ --output ] arg The output format. May be 'raw' (default) or 'json'.
    -d [ --dump ] arg Dump PE information. Available choices are any
    combination of: all, summary, dos (dos header), pe (pe
    header), opt (pe optional header), sections, imports,
    exports, resources, version, debug, tls, config, delay
    --hashes Calculate various hashes of the file (may slow down the
    analysis!)
    -x [ --extract ] arg Extract the PE resources to the target directory.
    -p [ --plugins ] arg Analyze the binary with additional plugins. (may slow
    down the analysis!)

    Available plugins:
    - clamav: Scans the binary with ClamAV virus definitions.
    - compilers: Tries to determine which compiler generated the binary.
    - peid: Returns the PEiD signature of the binary.
    - strings: Looks for suspicious strings (anti-VM, process names...).
    - findcrypt: Detects embedded cryptographic constants.
    - packer: Tries to structurally detect packer presence.
    - imports: Looks for suspicious imports.
    - resources: Analyzes the program's resources.
    - mitigation: Displays the enabled exploit mitigation techniques (DEP, ASLR, etc.).
    - authenticode: Checks if the digital signature of the PE is valid.
    - virustotal: Checks existing AV results on VirusTotal.
    - all: Run all the available plugins.

    Examples:
    manalyze.exe program.exe
    manalyze.exe -dresources -dexports -x out/ program.exe
    manalyze.exe --dump=imports,sections --hashes program.exe
    manalyze.exe -r malwares/ --plugins=peid,clamav --dump all



    BruteXSS - Cross-Site Scripting Bruteforcer

    $
    0
    0

    BruteXSS - Cross-Site Scripting BruteForcer
    Author: Shawar Khan
    The BruteXSS project is sponsored and supported by Netsparker Web Application Security Scanner
    Disclaimer: I am not responsible for any damage done using this tool. This tool should only be used for educational purposes and for penetration testing.

    Compatibility:
    • Windows , Linux or any device running python 2.7

    Requirements:
    • Python 2.7
    • Wordlist included(wordlist.txt)
    • Modules required: Colorama, Mechanize

    Modules Required:

    Description:
    BruteXSS is a very powerful and fast Cross-Site Scripting Brutforcer which is used for bruteforcing a parameters. The BruteXSS injects multiple payloads loaded from a specified wordlist and fires them at the specified parameters and scans if any of the parameter is vulnerable to XSS vulnerability. BruteXSS is very accurate at doing its task and there is no chance of false positive as the scanning is much powerful. BruteXSS supports POST and GET requests which makes it compatible with the modern web applications.

    Features:
    • XSS Bruteforcing
    • XSS Scanning
    • Supports GET/POST requests
    • Custom wordlist can be included
    • User-friendly UI

    Usage(GET Method):
    COMMAND:  python brutexss.py
    METHOD: g
    URL: http://www.site.com/?parameter=value
    WORDLIST: wordlist.txt

    Usage(POST method):
    COMMAND:   python brutexss.py
    METHOD: p
    URL: http://www.site.com/file.php
    POST DATA: parameter=value&parameter1=value1
    WORDLIST: wordlist.txt

    Output:
      ____             _        __  ______ ____  
    | __ ) _ __ _ _| |_ ___ \ \/ / ___/ ___|
    | _ \| '__| | | | __/ _ \ \ /\___ \___ \
    | |_) | | | |_| | || __/ / \ ___) |__) |
    |____/|_| \__,_|\__\___| /_/\_\____/____/

    BruteXSS - Cross-Site Scripting BruteForcer

    Author: Shawar Khan - https://shawarkhan.com


    Select method: [G]ET or [P]OST (G/P): p
    [?] Enter URL:
    [?] > http://site.com/file.php
    [+] Checking if site.com is available...
    [+] site.com is available! Good!
    [?] Enter post data: > parameter=value&parameter1=value1
    [?] Enter location of Wordlist (Press Enter to use default wordlist.txt)
    [?] > wordlist.txt
    [+] Using Default wordlist...
    [+] Loading Payloads from specified wordlist...
    [+] 25 Payloads loaded...
    [+] Injecting Payloads...

    [+] Testing 'parameter' parameter...
    [+] 2 / 25 payloads injected...
    [!] XSS Vulnerability Found!
    [!] Parameter: parameter
    [!] Payload: "><script>prompt(1)</script>

    [+] Testing 'parameter1' parameter...
    [+] 25 / 25 payloads injected...
    [+] 'parameter1' parameter not vulnerable.
    [+] 1 Parameter is vulnerable to XSS.
    +----+--------------+----------------+
    | Id | Parameters | Status |
    +----+--------------+----------------+
    | 0 | parameter | Vulnerable |
    +----+--------------+----------------+
    | 1 | parameter1 | Not Vulnerable |
    +----+--------------+----------------+


    PenBox v2.2 - A Penetration Testing Framework (The Hacker's Repo)

    $
    0
    0

    A Penetration Testing Framework , The Hacker’s Repo our hope is in the last version we will have evry script that a hacker needs.

    Information Gathering :
    • nmap
    • Setoolkit
    • Port Scanning
    • Host To IP
    • wordpress user enumeration
    • CMS scanner
    • XSStracer - checks remote web servers for Clickjacking, Cross-Frame Scripting, Cross-Site Tracing and Host Header Injection
    • Doork - Google Dorks Passive Vulnerability Auditor
    • Scan A server's Users

    Password Attacks :
    • Cupp
    • Ncrack

    Wireless Testing :
    • reaver
    • pixiewps
    • Bluetooth Honeypot GUI Framework

    Exploitation Tools :
    • Venom
    • sqlmap
    • Shellnoob
    • commix
    • FTP Auto Bypass
    • jboss-autopwn
    • Blind SQL Automatic Injection And Exploit
    • Bruteforce the Android Passcode given the hash and salt
    • Joomla, Mambo, PHP-Nuke, and XOOPS CMS SQL injection Scanner

    Sniffing & Spoofing :
    • Setoolkit
    • SSLtrip
    • pyPISHER
    • SMTP Mailer

    Web Hacking :
    • Drupal Hacking
    • Inurlbr
    • Wordpress & Joomla Scanner
    • Gravity Form Scanner
    • File Upload Checker
    • Wordpress Exploit Scanner
    • Wordpress Plugins Scanner
    • Shell and Directory Finder
    • Joomla! 1.5 - 3.4.5 remote code execution
    • Vbulletin 5.X remote code execution
    • BruteX - Automatically brute force all services running on a target
    • Arachni - Web Application Security Scanner Framework

    Private Tools
    • Get all websites
    • Get joomla websites
    • Get wordpress websites
    • Find control panel
    • Find zip files
    • Find upload files
    • Get server users
    • Scan from SQL injection
    • Scan ports (range of ports)
    • Scan ports (common ports)
    • Get server banner
    • Bypass Cloudflare

    Post Exploitation
    • Shell Checker
    • POET
    • Weeman - Phishing Framework

    Recon
    • Sniper

    Installation
    git clone https://github.com/x3omdax/PenBox.git


    BFAC - Backup File Artifacts Checker

    $
    0
    0

    An automated tool that checks for backup artifacts that may discloses the web-application's source code.
                  _____   _______  _______  _______
    ( ___ \ ( ____ \( ___ )( ____ \
    | ( ) )| ( \/| ( ) || ( \/
    | (__/ / | (__ | (___) || |
    | __ ( | __) | ___ || |
    | ( \ \ | ( | ( ) || |
    | )___) )| ) | ) ( || (____/\
    |/ \___/ |/ |/ \|(_______/

    -:::Backup File Artifacts Checker:::-
    ___An automated tool that checks for backup artifacts that may discloses the web-application's source code___
    Author: Mazin Ahmed | <mazin AT mazinahmed DOT net> | @mazen160

    Description
    BFAC (Backup File Artifacts Checker) is an automated tool that checks for backup artifacts that may discloses the web-application's source code. The artifacts can also lead to the leakage of sensitive information, such as passwords, directory structure,etc...

    BFAC goal is to be an all-in-one tool for backup-file artifacts black-box testing.

    Usage

    Help
        bfac --help   

    Check a single URL
        bfac --url http://example.com/test.php   

    Check a list of URLs
        bfac --list testing_list.txt   

    Check a single URL with a higher level
        bfac --url http://example.com/test.php --level 2   

    Check a single URL while specifying values for valid status codes
        bfac --url http://example.com/test.php --valid-status-codes 200,302   

    Check a single URL while excluding specific status codes
        bfac --url http://example.com/test.php --invalid-status-codes 302,403,404   

    Checking a single URL and showing only the results
        bfac --no-text --url http://example.com/test.php   

    Requirements
    • Python2 or Python3
    • requests

    Installation (for *NIX machines) [Optional]
        sudo python install.py confirm   

    Compatibility
    The project currently supports all platforms that runs Python. The project is compatible with both Python2 and Python3.

    Community Contribution
    Contribution from the community to the BFAC project is very welcome. If you find a bug, have an idea for a feature, or ideas to reconstruct the code to work better, or anything else, feel free to make an issue ticket or a pull request.

    Legal Disclaimer
    This project is made for educational and ethical testing purposes only. Usage of BFAC for attacking targets without prior mutual consent is illegal. It is the end user's responsibility to obey all applicable local, state and federal laws. Developers assume no liability and are not responsible for any misuse or damage caused by this program.

    License
    The project is currently licensed under GNU GPLv3.0 License.

    Author
    Mazin Ahmed


    Lynis 2.3.3 - Security Auditing Tool for Unix/Linux Systems

    $
    0
    0

    We are excited to announce this major release of auditing tool Lynis. Several big changes have been made to core functions of Lynis. These changes are the next of simplification improvements we made. There is a risk of breaking your existing configuration.

    Lynis is an open source security auditing tool. Used by system administrators, security professionals, and auditors, to evaluate the security defenses of their Linux and UNIX-based systems. It runs on the host itself, so it performs more extensive security scans than vulnerability scanners.

    Supported operating systems

    The tool has almost no dependencies, therefore it runs on almost all Unix based systems and versions, including:
    • AIX
    • FreeBSD
    • HP-UX
    • Linux
    • Mac OS
    • NetBSD
    • OpenBSD
    • Solaris
    • and others
    It even runs on systems like the Raspberry Pi and several storage devices!

    Installation optional

    Lynis is light-weight and easy to use. Installation is optional: just copy it to a system, and use "./lynis audit system" to start the security scan. It is written in shell script and released as open source software (GPL). 

    How it works

    Lynis performs hundreds of individual tests, to determine the security state of the system. The security scan itself consists of performing a set of steps, from initialization the program, up to the report.

    Steps
    1. Determine operating system
    2. Search for available tools and utilities
    3. Check for Lynis update
    4. Run tests from enabled plugins
    5. Run security tests per category
    6. Report status of security scan
    Besides the data displayed on screen, all technical details about the scan are stored in a log file. Any findings (warnings, suggestions, data collection) are stored in a report file.

    Opportunistic scanning

    Lynis scanning is opportunistic: it uses what it can find.
    For example if it sees you are running Apache, it will perform an initial round of Apache related tests. When during the Apache scan it also discovers a SSL/TLS configuration, it will perform additional auditing steps on that. While doing that, it then will collect discovered certificates, so they can be scanned later as well.

    In-depth security scans

    By performing opportunistic scanning, the tool can run with almost no dependencies. The more it finds, the deeper the audit will be. In other words, Lynis will always perform scans which are customized to your system. No audit will be the same!

    Use cases

    Since Lynis is flexible, it is used for several different purposes. Typical use cases for Lynis include:
    • Security auditing
    • Compliance testing (e.g. PCI, HIPAA, SOx)
    • Vulnerability detection and scanning
    • System hardening

    Resources used for testing

    Many other tools use the same data files for performing tests. Since Lynis is not limited to a few common Linux distributions, it uses tests from standards and many custom ones not found in any other tool.
    • Best practices
    • CIS
    • NIST
    • NSA
    • OpenSCAP data
    • Vendor guides and recommendations (e.g. Debian Gentoo, Red Hat)

    Lynis Plugins

    lugins enable the tool to perform additional tests. They can be seen as an extension (or add-on) to Lynis, enhancing its functionality. One example is the compliance checking plugin, which performs specific tests only applicable to some standard.


    Changelog
    Upgrade note
    ----------------------
    Customized profiles that included sysctl settings need to be altered. See default.prf for the correct format of the lines.

    Additions
    ----------------------
    OpenStack detection
    Option to disable automatic refresh of software repository
    Japanese translation added, contributed by Yukio Takahara
    Some tests did not show a warning text
    Typo in man page for tests-from-group
    New --bin-dirs to define binary directories to scan
    New option --root-dir to specify a different file system to scan
    Rewrite of nginx configuration parsing
    Support for PHP 5.6
    Redis test to detect configuration files
    Test Redis configuration for several best practices
    Perform permission check on Redis configuration files

    Experimental features (in development)
    ----------------------
    --bin-dirs - set what directories should be scanned for binaries
    --root-dir - define the root of the file system, to allow forensics
    Settings

    Many settings have a new alias (with dashes instead underscores)
    New setting 'show-report-solution' to show solution in report

    Functions
    ----------------------
    ExitFatal can now exit program with optional text
    IsNotebook can detect if system is a notebook (or not)
    ShowSymlinkPath and FileIsReadable test for at least one argument
    StoreNginxSettings will save parsed nginx configuration

    Tests
    ----------------------
    BOOT-5108 - Support for Syslinux bootloader
    DBS-1882 - Redis configuration detection
    DBS-1884 - Redis 'requirepass' check
    DBS-1886 - Redis 'rename-command CONFIG' check
    DBS-1888 - Redis 'bind localhost' check
    FILE-6374 - Improved logging
    KRNL-5830 - Improved logging for detected Linux kernels
    KRNL-6000 - Support for multiple profiles and new format style
    LOGG-2190 - Ignore MySQL files in /tmp from early MySQL 5.x releases
    LOGG-2192 - New test to check opened log files that are empty

    Lynis Enterprise integration
    ----------------------
    Tag 'redis-server' is added for systems running Redis


    D-TECT - Pentesting the Modern Web

    $
    0
    0

    D-TECT is an All-In-One Tool for Penetration Testing. This is specially programmed for Penetration Testers and Security Researchers to make their job easier, instead of launching different tools for performing different task. D-TECT provides multiple features and detection features which gather target information and finds different flaws in it.

    Compatibility:
    • Any platform using Python 2.7

    Requirements:
    • Python 2.7
    • Modules(included): Colorama, BeautifulSoup

    Features:
    • Sub-domain Scanning
    • Port Scanning
    • Wordpress Scanning
    • Wordpress Username Enumeration
    • Wordpress Backup Grabbing
    • Sensitive File Detection
    • Same-Site Scripting Scanning
    • Click Jacking Detection
    • Powerful XSS vulnerability scanning
    • SQL Injection vulnerability scanning
    • User-Friendly UI

    Usage:
    python d-tect.py

    Screenshots:

    Banner Grabbing:


    Click Jacking Detection:


    Port Scanner:


    WP Backup Grabber:


    Sensitive File Detection:


    Cross-Site Scripting [ XSS ] Scanner:


    SQL Injection [ SQLI ] Scanner:


    Sub-domain Scanner:


    WP Username Enumeration:


    Same Site Scripting detection:



    Viewing all 5816 articles
    Browse latest View live