GithubHelp home page GithubHelp logo

golismero / golismero Goto Github PK

View Code? Open in Web Editor NEW
854.0 854.0 267.0 23.12 MB

GoLismero - The Web Knife

Home Page: http://golismero.com/

License: GNU General Public License v2.0

Python 76.05% Shell 0.04% CSS 1.53% JavaScript 4.64% Ruby 0.01% Lua 0.09% Batchfile 0.02% HTML 16.26% Roff 0.06% Perl 1.31% C++ 0.01% Dockerfile 0.01%

golismero's Introduction

What's GoLismero?

GoLismero is an open source framework for security testing. It's currently geared towards web security, but it can easily be expanded to other kinds of scans.

The most interesting features of the framework are:

  • Real platform independence. Tested on Windows, Linux, *BSD and OS X.
  • No native library dependencies. All of the framework has been written in pure Python.
  • Good performance when compared with other frameworks written in Python and other scripting languages.
  • Very easy to use.
  • Plugin development is extremely simple.
  • The framework also collects and unifies the results of well known tools: sqlmap, xsser, openvas, dnsrecon, theharvester...
  • Integration with standards: CWE, CVE and OWASP.
  • Designed for cluster deployment in mind (not available yet).

Installing

Strictly speaking, GoLismero doesn't require installation - only its dependencies do. So if you want to use it on a system where you don't have root privileges, you can ask the system administrator to install them for you, and just run the "git checkout" command on your home folder.

The following are step-by-step instructions to install GoLismero on different operating systems:

Debian/Ubuntu

The following commands will download and install GoLismero on your system. This requires root privileges, so you will be prompted for your password when you run the first command.

sudo bash
apt-get install python2.7 python2.7-dev python-pip python-docutils git perl nmap sslscan
cd /opt
git clone https://github.com/golismero/golismero.git
cd golismero
pip install -r requirements.txt
pip install -r requirements_unix.txt
ln -s ${PWD}/golismero.py /usr/bin/golismero
exit

If you have an API key for Shodan, or an OpenVAS server or SpiderFoot server you want to integrate with GoLismero, run the following commands:

mkdir ~/.golismero
touch ~/.golismero/user.conf
chmod 600 ~/.golismero/user.conf
nano ~/.golismero/user.conf

At the editor, add the following sections to the file, as appropriate:

[shodan:Configuration]
apikey = <INSERT YOUR SHODAN API KEY HERE>

[openvas]
host = <INSERT THE OPENVAS HOST HERE>
user = <INSERT THE OPENVAS USERNAME HERE>
*password = <INSERT THE OPENVAS PASSWORD HERE>

[spiderfoot]
url = <INSERT THE SPIDERFOOT URL HERE>

Mac OS X

First of all, on Mac we'll need to install the Mac Ports.

After doing that, run the following commands to download and install GoLismero on your system. This requires root privileges, so you will be prompted for your password when you run the first command.

sudo -s
easy_install-2.7 -U distribute
easy_install install pip
port install nmap sslscan
cd /opt
git clone https://github.com/golismero/golismero.git
cd golismero
pip install -r requirements.txt
pip install -r requirements_unix.txt
ln -s /opt/golismero/golismero.py /usr/bin/golismero
exit

If you have an API key for Shodan, or an OpenVAS server or SpiderFoot server you want to integrate with GoLismero, run the following commands:

mkdir ~/.golismero
touch ~/.golismero/user.conf
chmod 600 ~/.golismero/user.conf
nano ~/.golismero/user.conf

At the editor, add the following sections to the file, as appropriate:

[shodan:Configuration]
apikey = <INSERT YOUR SHODAN API KEY HERE>

[openvas]
host = <INSERT THE OPENVAS HOST HERE>
user = <INSERT THE OPENVAS USERNAME HERE>
*password = <INSERT THE OPENVAS PASSWORD HERE>

[spiderfoot]
url = <INSERT THE SPIDERFOOT URL HERE>

FreeBSD 10-Release

The following commands will download and install GoLismero on your system. This requires root privileges, so you will be prompted for your password when you run the first command.

su -
cd /root
pkg update
pkg install git
pkg install python27
ln -s /usr/local/bin/python2.7 /usr/local/bin/python
pkg install databases/py-sqlite3
pkg install nmap
pkg install sslscan
pkg install devel/py-pip
mkdir /opt 2> /dev/null
cd /opt
git clone https://github.com/golismero/golismero.git
cd golismero
pip install -r requirements.txt
pip install -r requirements_unix.txt
ln -s /opt/golismero/golismero.py /usr/bin/golismero
exit

If you have an API key for Shodan, or an OpenVAS server or SpiderFoot server you want to integrate with GoLismero, run the following commands:

mkdir ~/.golismero
touch ~/.golismero/user.conf
chmod 600 ~/.golismero/user.conf
nano ~/.golismero/user.conf

At the editor, add the following sections to the file, as appropriate:

[shodan:Configuration]
apikey = <INSERT YOUR SHODAN API KEY HERE>

[openvas]
host = <INSERT THE OPENVAS HOST HERE>
user = <INSERT THE OPENVAS USERNAME HERE>
*password = <INSERT THE OPENVAS PASSWORD HERE>

[spiderfoot]
url = <INSERT THE SPIDERFOOT URL HERE>

Windows

On Windows, you'll have to install each tool separately. You can download them from here:

Nikto is already bundled with GoLismero, but it requires the Cygwin version of Perl to run, since the native version can't handle Unix paths. You can download if from here: Cygwin.

SSLScan for Windows has a bug that causes crashes when writing XML output, which is the one required by GoLismero. The issue has been unfixed since 2010, so it's not likely to change soon, but there's a workaround: simply upgrade OpenSSL to a newer version. You can get an OpenSSL build from here: Win32OpenSSL.

It's usually a good idea to install Visual Studio 2008 SP1 as well. This enables the compilation of C extensions, which can speed up some Python modules.

After installing the tools, open a console and run the following commands:

cd %HOME%
git clone https://github.com/golismero/golismero.git
cd golismero
pip install -r requirements.txt

Finally, you may have to add the tools to the PATH environment variable so GoLismero can find them. You can also add GoLismero itself to the PATH.

If you have an API key for Shodan, or an OpenVAS server or SpiderFoot server you want to integrate with GoLismero, create a new file called "user.conf" where you installed GoLismero and add the following sections to the file, as appropriate:

[shodan:Configuration]
apikey = <INSERT YOUR SHODAN API KEY HERE>

[openvas]
host = <INSERT THE OPENVAS HOST HERE>
user = <INSERT THE OPENVAS USERNAME HERE>
*password = <INSERT THE OPENVAS PASSWORD HERE>

[spiderfoot]
url = <INSERT THE SPIDERFOOT URL HERE>

Quick help

Using GoLismero is very easy. Below are some basic commands to start to using it:

Basic usage

This command will launch GoLismero with all default options and show the report on standard output:

golismero scan <target>

If you omit the default command "scan" GoLismero is smart enough to figure out what you're trying to do, so this works too:

golismero <target>

You can also set a name for your audit with --audit-name:

golismero scan <target> --audit-name <name>

And you can produce reports in different file formats. The format is guessed from the file extension, and you can write as many files as you want:

golismero scan <target> -o <output file name>

Run example

Additionally, you can import results from other tools with the -i option. You can use -i several times to import multiple files.

golismero import nikto_output.csv nmap_output.xml -db database.db

This allows you to scan the target in one step, and generate the report later. For example, to scan without generating a report:

golismero scan <target> -db database.db -no

And then generate the report from the database at a later time (or from a different machine!):

golismero report report.html -db database.db

You can also specify multiple output files:

golismero report report.html report.txt report.rst -db example.db

Report example

Available plugins

To display the list of available plugins:

golismero plugins

Plugin list example

You can also query more information about specific plugins:

golismero info <plugin>

Plugin info example

The full plugin list is also available online.

Select a specific plugin

Use the -e option to enable only some specific plugins, and -d to disable plugins (you can use -e and -d many times):

golismero scan <target> -e <plugin>

You can also select multiple plugins using wildcards. For example, you can select all bruteforce plugins like this:

golismero scan <target> -e brute*

Run plugin example

Reporting and eye candy

GoLismero currently produces reports on the console, in plain text files, in reStructured text format and in HTML format. In all cases, the reports are self-contained in a single file for easier transport - that means the HTML report is a single .html file with everything bundled in, and you can just attach it in an email to send it to someone else.

If no output files are specified, GoLismero reports on the console by default. But you can choose both at the same time too! For example, let's write an HTML report and also see the output on the console, using the special filename "-":

golismero scan <target> -o - -o report.html

Here's what the HTML report summary looks like on Chrome:

Report header

The table of contents, on Firefox:

Report table

And the details for each vulnerability, on Internet Explorer:

Report details

It's also compatible with mobile devices, like for example an iPad:

Report summary on iPad

As you surely noticed, the layout remains consistent across all platforms. The HTML report is completely self contained in a single .html file, making it very easy to share.

Putting it all together

In this example we'll put everything we've seen above into practice in a single command. We'll import results from an Nmap scan, run a scan of our own but using only the DNS analysis plugins, save the results in a database file of our choosing and produce reports in HTML and reStructured text format.

golismero -i nmap_output.xml -e dns* -db database.db -o report.rst -o report.html

Notice how the default "scan" command was omitted but GoLismero figured it out on its own.

This is how you'd do it if you want to break it into multiple commands instead:

golismero import -db database.db nmap_output.xml
golismero scan -db database.db -e dns* -no
golismero report -db database.db report.rst report.html

Notice how the second command uses the "-no" switch to prevent the default console report from kicking in.

What will be the next features?

The next features of GoLismero will be:

  • Integration with Metasploit, w3af, ZAP and many other free tools.
  • Web UI. We all know true h4xx0rs only use the console, but sometimes drag&drop does come in handy. ;)
  • Export results in PDF and MS Word format, to keep the boss happy.
  • And more plugins of course!

Not enough? Roll your own!

GoLismero is fully extensible through plugins, and that means you can always roll your own scripts, tailored to your specific needs, or using your favorite tools.

You can start from the plugin API documentation, and move on to the full specifications if you want to tinker with GoLismero's internals.

More step-by-step tutorials and howtos are coming soon!

Need help? Found a bug?

If you have found a bug, you can report it using the Github issues system. You can also drop us an email ([email protected]) or find us on Twitter (@golismero_pro).

Known bugs

Some gotchas we already know about:

  • Control-C on Python generally doesn't work very well - it may show bogus errors on screen, but you can ignore them. If stopping GoLismero takes too long, try hitting Control-C twice for force shutdown. Even then, sometimes you just have to be a patient!
  • GoLismero seems to run slower on Windows than on Linux or Mac. It appears to be related to the Python standard multiprocessing module and the lack of fork() support on Windows.
  • This is not a bug, just a reminder: GoLismero by default creates a new database file on each run! You can disable the database creation with the -nd switch.

githalytics.com alpha

golismero's People

Contributors

aiddroid avatar compermisos avatar cr0hn avatar evbevz avatar kekek2 avatar lrvick avatar mariovilas avatar moon2l avatar physicalit avatar wcc526 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

golismero's Issues

ValueError: URL does not point to a folder!

[] Web Spider: Found 42 links in URL: http://xxxx/
[
] DNS subdomain bruteforcer: 9.38% percent done...
[] DNS subdomain bruteforcer: 9.43% percent done...
[
] DNS subdomain bruteforcer: 9.49% percent done...
[] DNS subdomain bruteforcer: 9.54% percent done...
[
] DNS subdomain bruteforcer: 9.59% percent done...
[!] GoLismero: Error processing message!
Traceback (most recent call last):
File "/home/xxxx/golismero/main/orchestrator.py", line 476, in run
self.dispatch_msg(message)
File "/home/xxxx/golismero/main/orchestrator.py", line 335, in dispatch_msg
if self.auditManager.dispatch_msg(message):
File "/home/xxxx/golismero/managers/auditmanager.py", line 235, in dispatch_msg
return self.get_audit(message.audit_name).dispatch_msg(message)
File "/home/xxxx/golismero/managers/auditmanager.py", line 755, in dispatch_msg
return self.dispatch_msg(message)
File "/home/xxxx/golismero/managers/auditmanager.py", line 838, in __dispatch_msg
queue = list(data.discovered) # Make sure it's a copy.
File "/home/xxxx/golismero/api/data/resource/url.py", line 294, in discovered
result = FolderUrl.from_url(self.url)
File "/home/xxxx/golismero/api/data/resource/url.py", line 470, in from_url
return [FolderUrl(x) for x in folder_urls]
File "/home/xxxx/golismero/api/data/resource/url.py", line 424, in __init

raise ValueError("URL does not point to a folder!")
ValueError: URL does not point to a folder!

RPC/REST API

It would be very useful for Golismero to support an RPC/REST API. This would allow for easier integration in to other tools as a subcomponent.

Appears to not work with *.xyz TLD

I have a website with a *.xyz TLD and it just says
[!] GoLismero: [Errno -5] No address associated with hostname
[!] GoLismero: Error: Failed to add new audit, reason: [Errno -5] No address associated with hostname

Newer OpenVAS support?

Love Golismero, however have to update my OpenVAS for a few reasons, meaning i have not now been using Golismero for anything.
[!] OpenVAS: Plugin disabled, reason: Remote host is running an unsupported version of OpenVAS. Only OpenVAS 6 is currently supported.
Noticed you had made some changes to openvas recently and wondered if this was in the works?
Would love to see some support for newer versions

OpenVAS Plugin setup.py

When I try to run a scan:

/opt/golismero/plugins/testing/scan/openvas.py:161: UserWarning: OpenVAS plugin not initialized, please run setup.py
 warn("OpenVAS plugin not initialized, please run setup.py")

when I run ./golismero/plugins/testing/scan/openvas_pluging/setup.py

usage: setup.py [-h] [-o OUTPUT_BBDD] -p OPENVAS_PLUGINS [-v] [-d]
                [--rules RULES] [--display-processed] [--display-non-match]
setup.py: error: argument -p is required

what is the golismero architecture?

what is the golismero architecture?

how the managers and message work together?

the readdoc only has the comment of code,I want to know more about the architecture,because sometimes the process will be stock,I want to know more about golismero.

Error execution

Hello,

When I run golismero I have this error:

sudo python3 golismero.py -h
  File "/golismero/golismero.py", line 655
    print colorize "-= %s plugins =-" % stage.title(), "yellow"
    ^^^^^^^^^^^^^^

Can anyone help me?

A greeting and thanks

How to write custom plugins, any plans for a Java wrapper ?

Hi, this is a wonderful project. I have seen that there is an IDE for writing plugins, but how do I access the IDE, what are the steps for integrating/running custom plugins ..would there be some limitations ?
Lastly, is there a Java wrapper out there ....thanks.

cannot load targets from file?

python golismero.py SCAN -f urls.txt
error: no targets selected for audit (did you misspell the database filename?)

python golismero.py -f urls.txt
golismero.py: error: too few arguments

Errors

Is this project still active?

Getting errors for keywords like areacode for Shodan, and time_zone for IP Geolocator.

Thanks.

OpenSSL Heartbleed Attack - Execution timeout reached Error

Hi, got the above error and then Golismero just stop running BUT not exiting from the script.

Anybody can help to modify the python script to check if target server is running on OpenSSL before the attack start?

My System Info:-

  1. Running VM on VMWare Workstation Pro 12 v12.5.7 build-5813279
  2. Host OS: Windows 10 Enterprise
  3. Guest OS: Linux version 4.11.0-parrot6-amd64 ([email protected]) (gcc version 6.3.0 20170516 (Debian 6.3.0-18) ) #1 SMP Parrot 4.11.6-1parrot6 (2017-06-28)

Error:
[!] OpenSSL Heartbleed Attack: Error: Execution timeout reached.
[*] GoLismero: Current stage: Reporting
[!] OpenSSL Heartbleed Attack: Error: 'NoneType' object has no attribute 'getitem'
/usr/share/golismero/golismero/messaging/notifier.py:418: UserWarning: Got an unexpected ACK for data ID 36698d5c0d5e994c5e1b23de6a38bab1-8a2146f2fe501ad3b3a760f71ee15de9 from plugin testing/attack/heartbleed
warn(msg % (identity, plugin_id))

* record in DNS

In case there is a * record in DNS all the host reported as detected and even scanned one-by-one, if over x record resolve to the same IP, then it should generate a random record and request that, in case that's still the same address then terminate that loop.

IP Geolocator plugin exception

During an scan I got:

[!] IP Geolocator: Error: init() got an unexpected keyword argument 'area_code'

Then it continued scan.

OpenVAS: Plugin disabled, reason: no element found: line 1, column 0

/----------------------------------------------
| GoLismero 2.0.0b3 - The Web Knife |
| Contact: [email protected] |
| |
| Daniel Garcia Garcia a.k.a cr0hn (@ggdaniel) |
| Mario Vilas (@Mario_Vilas) |
----------------------------------------------/

GoLismero started at 2014-08-24 07:16:59.333888 UTC
[] GoLismero: Audit name: golismero-INIANSfJ
[!] OpenVAS: Plugin disabled, reason: no element found: line 1, column 0
[
] GoLismero: Added 3 new targets to the database.

By default using the "golismero info openvas" it says that uses the port port -> 9390

but mine openvas is on port -> 9392, so in my user.config i change it to this:

[openvas]
host = 127.0.0.1
user = admin
*password = mypassword
port=9392

But when i run it got the error below:

OpenVAS: Plugin disabled, reason: no element found: line 1, column 0

Should switch to Python 3

Python 2.x will no longer be supported by their upstream developers in 2020. Thus Debian developers are actively removing Python 2 support in Debian Testing with the goal of getting rid of Python 2 in Debian 11 (bullseye).

Since Kali is based on Debian Testing, we have to follow the move and since golismero is part of Kali we would like it to work with Python 3. All your dependencies are already available for Python 3 so there should be no real blockers.

Thank you in advance.

Tracking bug in Kali: https://gitlab.com/kalilinux/packages/golismero/issues/1

No "Location" in report from demo plugin

I have wrote a demo plugin for backup file checking.This plugin works well for checking backup files, but the text report in console has no "Location" value. I have already checked my code, but found nothing.I'm new to Python from PHP, Pls help!

here is the core code in the plugin's run()

        results = []
        # Check if backup file exists
        for f in self.test_files:
            for backup_ext in self.backup_extensions[:]:
                backup_url = 'http://' + info.hostname + '/' + f + backup_ext
                Logger.log_verbose("Testing %s..." % backup_url)
                response = HTTP.get_url(backup_url, method="HEAD")

                if response.status == "200":
                    Logger.log_verbose("Found backup :%s" % backup_url)
                    results.append(SuspiciousURL(URL(backup_url)))

        return results

Run halts on random position

Hello

I am running a freshly updated, very new version of Kali Debian Kali-Linux-2016.1-vbox-amd64 in a virtualbox using Oracle VM VirtualBox Manager 4.3.26.

I have used Golismero in the past and automated it with very good results using crontab midnight runs and then had custom scripts to collect up the reports.

It gets stuck on random positions, but mostly during Web Server Fingerprinting and SSLScan or sometimes Nmap. With 'get stuck' meaning that no more output is shown nor any other sign of life remains. The process is not terminated. It just does nothing for infinity (max tested 15 hours).

This happens after just a simple:
golismero scan --brief --forbid-subdomains -d theharvester -o testoutput.txt

...but also with variations, such as without --brief, with various parts of it (-d) disabled (I've tried disabling theharvester, punkspider, openvas, dns etc) and aiming at a specific website address (my own web service) that has its address set in the Kali Debian's hostfile.

Having added some custom code that runs Golismero process I can follow very closely system resources and exact timing of each output.I stress however, that this occurs just running Golismero from the command line.

#!/bin/bash

/root/pentest.sh | awk '{ print strftime("%Y-%m-%d %H:%M:%S"), $0; fflush(); }' &

echo $!
$mypenprocess=$!

#pause x hours
sleep 21600  #6 hours
#sleep 60

#check if abc is running
kill -KILL $mypenprocess 2> /dev/null

After twenty runs, trying to disable various parts .. I cannot pinpoint a specific point of failure. I also monitor performance and disc space of the host OS (Windows 7) and nothing interesting on that side.

/No, G isn't for Golismero.

dns_analyzer missing

$ ./golismero.py --profile=passive scan example.com

/----------------------------------------------
| GoLismero 2.0.0b2 - The Web Knife |
| Contact: [email protected] |
| |
| Daniel Garcia Garcia a.k.a cr0hn (@ggdaniel) |
| Mario Vilas (@Mario_Vilas) |
----------------------------------------------/

GoLismero started at 2013-12-09 15:07:09.362469
[] GoLismero: Audit name: golismero-fEk4Mmhg
[
] GoLismero: Audit database: golismero-fEk4Mmhg.db
[!] GoLismero: Failed to add new audit, reason: 'Unknown plugin in whitelist: dns_analyzer'
[!] Fatal error! Failed to add new audit, reason: 'Unknown plugin in whitelist: dns_analyzer'
GoLismero finished at 2013-12-09 15:07:09.596224

[Errno 11001] getaddrinfo failed & OpenVAS: Plugin disabled, reason: Missing status property in response

when i install & setuping my golismero, i got two errors totally have no idea to solve it, pleas give some help @MarioVilas

my openvas: 9
golismero: GoLismero 2.0.0b6
C:\Users\aaa>golismero scan xxx.com -vvvv

/-------------------------------------------\
| GoLismero 2.0.0b6, The Web Knife          |
| Copyright (C) 2011-2014 GoLismero Project |
|                                           |
| Contact: [email protected]    |
\-------------------------------------------/

GoLismero started at 2018-01-24 07:12:10.839000 UTC
[*] GoLismero: Audit name: golismero-bFzVR3JW
[!] OpenVAS: Plugin disabled, reason: Missing status property in response
[!] OpenVAS: Traceback (most recent call last):
  File "D:\HackProgram\golismero-master\golismero\managers\pluginmanager.py", line 1535, in __check_plugin_params
    plugin.check_params()
  File "D:\HackProgram\golismero-master\plugins\testing\scan\openvas.py", line 147, in check_params
    VulnscanManager(m_host, m_user, m_password, m_port, m_timeout)
  File "D:\HackProgram\golismero-master\thirdparty_libs\openvas_lib\__init__.py", line 496, in __init__
    self.__manager = get_connector(host, user, password, port, m_time_out, ssl_verify)
  File "D:\HackProgram\golismero-master\thirdparty_libs\openvas_lib\common.py", line 73, in get_connector
    manager = ConnectionManager(host, username, password, port, timeout, ssl_verify)
  File "D:\HackProgram\golismero-master\thirdparty_libs\openvas_lib\common.py", line 149, in __init__
    self._connect()
  File "D:\HackProgram\golismero-master\thirdparty_libs\openvas_lib\common.py", line 200, in _connect
    self._authenticate(self.__username, self.__password)
  File "D:\HackProgram\golismero-master\thirdparty_libs\openvas_lib\common.py", line 229, in _authenticate
    self.make_xml_request(m_request)
  File "D:\HackProgram\golismero-master\thirdparty_libs\openvas_lib\common.py", line 379, in make_xml_request
    raise ValueError('Missing status property in response')
ValueError: Missing status property in response

[!] GoLismero: [Errno 11001] getaddrinfo failed
[!] GoLismero: Traceback (most recent call last):
  File "D:\HackProgram\golismero-master\golismero\managers\auditmanager.py", line 163, in new_audit
    audit.run()
  File "D:\HackProgram\golismero-master\golismero\managers\auditmanager.py", line 631, in run
    audit_scope = AuditScope(self.config)
  File "D:\HackProgram\golismero-master\golismero\main\scope.py", line 176, in __init__
    self.add_targets(audit_config)
  File "D:\HackProgram\golismero-master\golismero\main\scope.py", line 340, in add_targets
    for entry in getaddrinfo(domain, 80)
gaierror: [Errno 11001] getaddrinfo failed

[!] GoLismero: Error: Failed to add new audit, reason: [Errno 11001] getaddrinfo failed
Traceback (most recent call last):
  File "D:\HackProgram\golismero-master\golismero\managers\auditmanager.py", line 297, in dispatch_msg
    self.new_audit(message.message_info)
  File "D:\HackProgram\golismero-master\golismero\managers\auditmanager.py", line 177, in new_audit
    raise AuditException("Failed to add new audit, reason: %s" % e)
AuditException: Failed to add new audit, reason: [Errno 11001] getaddrinfo failed

GoLismero finished at 2018-01-24 07:12:12.066000 UTC

How to add resources?

I want to create a new resource type: service, and there are http/ssh/rsync and etc in it.

#!/usr/bin/env python
# -*- coding:utf-8 -*-

from . import Resource
from .. import identity
from ...config import Config

from urlparse import urlunparse


class HTTP(Resource):

    data_subtype = "service"

    def __init__(self, scheme, host, port, server):
        """
        :param scheme: str, scheme
        :param host: str, hostname
        :param port: int, port
        :param server: str, server software
        """
        super(HTTP, self).__init__()
        self.depth = 0
        self.__scheme = scheme
        self.__host = host
        self.__port = port
        self.__server = server

    def __str__(self):
        return urlunparse(
            (
                self.scheme,
                self.host+str(self.port)
            )
        )

    def __repr__(self):
        return "<HTTP url=%r>" % self.__str()

    @property
    def display_name(self):
        return "HTTP Service"

    def is_in_scope(self, scope = None):
        if scope is None:
            scope = Config.audit_scope
        return self.host in scope

    @identity
    def scheme(self):
        """
        :return: str, scheme
        """
        return self.__scheme

    @identity
    def host(self):
        """
        :return: str, hostname
        """
        return self.__host

    @identity
    def port(self):
        """
        :return: int, port
        """
        return self.__port

    @identity
    def server(self):
        """
        :return: str, server software
        """
        return self.__server

Now my problem is I don't know how to add resource from a plugin. For example, I have a plugin test_a, which accepted_types is [IP], and I want to add resource HTTP from it to database. And use the resource in another plugin(which accepted_types is [HTTP])

Can you help me? Thx.

Golismeros error Plugin disabled SpiderFoot

Someone that this error is generated?

[!] SpiderFoot: Plugin disabled, reason: Cannot connect to SpiderFoot, reason: invalid literal for int() with base 10: '0-BETA'

make the changes /usr/share/golismero/plugins/testing/recon/

Spiderfoot.golismero

[Arguments]
url = http://127.0.0.1:5001

Thanks!

Openvas Plugin issue

I am trying to run the Golismero with Openvas plugin. Its gving the below error although all the parameters for the openvas is correctly modified. Please check into the below issue and help out with a solution.

The openvas conf is :
[openvas]
host = xxxxxxxxxxx
port = xxxxxx
user = admin
*password = admin

golismero scan xxxxxxxxxxx -e openvas

[!] OpenVAS: Plugin disabled, reason: Missing status property in response
[!] OpenVAS: Traceback (most recent call last):
File "/opt/golismero/golismero/managers/pluginmanager.py", line 1535, in check_plugin_params
plugin.check_params()
File "/opt/golismero/plugins/testing/scan/openvas.py", line 151, in check_params
VulnscanManager(m_host, m_user, m_password, m_port, m_timeout)
File "/opt/golismero/thirdparty_libs/openvas_lib/__init
.py", line 490, in init
self.manager = get_connector(host, user, password, port, m_time_out)
File "/opt/golismero/thirdparty_libs/openvas_lib/common.py", line 69, in get_connector
manager = ConnectionManager(host, username, password, port, timeout)
File "/opt/golismero/thirdparty_libs/openvas_lib/common.py", line 144, in __init

self._connect()
File "/opt/golismero/thirdparty_libs/openvas_lib/common.py", line 183, in _connect
self._authenticate(self.__username, self.__password)
File "/opt/golismero/thirdparty_libs/openvas_lib/common.py", line 211, in _authenticate
self.make_xml_request(m_request)
File "/opt/golismero/thirdparty_libs/openvas_lib/common.py", line 360, in make_xml_request
raise ValueError('Missing status property in response')
ValueError: Missing status property in response

tagged release?

Hello
It would be great to make a tagged release in git for the next releases.
In kali we have tools that monitors web pages listing release, and it works well with github pages showing git tags. If you make a tagged release we will be automatically informed and we will update the package quickly.
Thanks

Openvas 9

Hi guys,

Do you plan on adding OpenVAs 9 support ?

output error,

After scanning I can't generate a report, anyone got the same problem?
this mostly happened after scanning vulnerable website with > 10 vulnerabilities

Capture

How to scan a POST request directly?

There's something wrong with sqlmap scanner.Even cannot detect a simple sql injection.Is there any way to scan a POST request directly?

python golismero.py 'http://localhost:8080/mysql.php' -a "sqlmap:args=--data 'username=allen'"

could not install Golismero my mac terminal

I did followed the installation steps mentioned but this message appeared... what should i do next ??

meshinator-Mac-mini:~ meshinator$ sudo -s
bash-3.2# easy_install-2.7 -U distribute
Searching for distribute
Reading https://pypi.python.org/simple/distribute/
Best match: distribute 0.7.3
Processing distribute-0.7.3-py2.7.egg
distribute 0.7.3 is already the active version in easy-install.pth

Using /Library/Python/2.7/site-packages/distribute-0.7.3-py2.7.egg
Processing dependencies for distribute
Finished processing dependencies for distribute
bash-3.2# easy_install install pip
Searching for install
Reading https://pypi.python.org/simple/install/
No local packages or download links found for install
error: Could not find suitable distribution for Requirement.parse('install')
bash-3.2#

Support newer OpenVAS version

Currently GoLismero supports only version 6, which is hard to get these days. Support for version 8 (or 9 beta) would be appreciated.

Metasploit Support

Hey guys I was thinking of playing around with some Metasploit support, does anyone have any ideas on what type of integration We want to start off with? are We thinking version Scanners or are We talking full Metasploit pwnage via Python from the output of the Nmap scan?

I figured I'd ask for some guidance on the best course of attack for this design for first draft code design to submit to you guys.

cmd line options + new longer TLDs handling + proxy mode broken

I started adding new functionality (I need SOCKS5 and Tor-support) and then I discovered that so many problems need to be fixed first:

* doesn't recognise newer, longer TLDs

for example ./golismero.py heroic.academy fails with:

[!] OpenVAS: Plugin disabled, reason: Missing hostname
[!] GoLismero: [Errno -2] Name or service not known
[!] GoLismero: Error: Failed to add new audit, reason: [Errno -2] Name or service not known
     GoLismero finished

works with --forbid-subdomains though

* goes bezerk as soon as you try to use proxy (for some reason includes the proxy in the list of scanned targets instead of using it to connect to the targets):

LOG:
./golismero.py -pa 127.0.0.1 -pn 8118 --forbid-subdomains google.com
[...]

**[!] OpenVAS: Plugin disabled, reason: Missing hostname**    <-- ???????????
[*] GoLismero: **Added 4 new targets to the database.** <-- ???????????
[*] GoLismero: Launching tests...
[*] GoLismero: Current stage: Reconaissance
[!] theHarvester: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] PunkSPIDER: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] DNS Resolver: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] IP Geolocator: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] IP Geolocator: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Web Spider: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Robots.txt Analyzer: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Web Server Fingerprinter: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[*] GoLismero: Current stage: Scanning (non-intrusive)
[!] Plecost: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Bruteforce predictables discovery: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] DNS Bruteforcer: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] DNS Zone Transfer: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Nmap: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Nmap: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Bruteforce file extensions discovery: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Bruteforce suffixes discovery: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Bruteforce prefixes discovery: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Bruteforce permutations discovery: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Bruteforce directories discovery: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] Nikto: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[*] GoLismero: Current stage: Exploitation (intrusive)
[!] SQLMap: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] XSSer: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[!] OpenSSL Heartbleed Attack: Error: Invalid URL u'127.0.0.1:8118': No schema supplied
[*] GoLismero: Current stage: Reporting

--= Report =--

-# Summary #-

Audit started:   2017-08-10 14:40:15.725714 UTC
Audit ended:     2017-08-10 14:40:21.563186 UTC
Execution time:  0 days, 0 hours, 0 minutes and 5 seconds

**Scanned hosts:   3** <--- ????????
Vulnerabilities: 0

So the question is, will you be able to fix these before I even begin? I could actually fix or rewrite the proxy things myself, but for that I'd like to see these bugs above fixed, or else I'm gonna lose my mind :P

Does not create report file.

After running for golismero with with the -o option the audit began normally.
Things seemed to be going well as plugins executed.
After a specific time period the tool showed that a plugin had completed execution and then the program seemed to freeze for over 30mins. After which it began printing
.......
[] GoLismero: Current stage: Reconaissance
[
] GoLismero: Current stage: Reconaissance
[] GoLismero: Current stage: Reconaissance
[
] GoLismero: Current stage: Reconaissance
[] GoLismero: Current stage: Reconaissance
[
] GoLismero: Current stage: Reconaissance
[] GoLismero: Current stage: Reconaissance
[
] GoLismero: Current stage: Reconaissance
[*] GoLismero: Current stage: Reconaissance

in an infinite loop for over 6 hours.
after which I interrupted it. It exited with.

....................
[] GoLismero: Current stage: Reconaissance
[
] GoLismero: Current stage: Reconaissance
^CUser cancel requested, stopping all audits...
[] GoLismero: Current stage: Reconaissance
[
] GoLismero: Current stage: Reconaissance

Note: If we use Ctrl-C while the program is frozen it fails to does not exit nor does it continue in any manner.

Command usage 👍
python2.7 golismero.py scan reelmonk.com -o X.html

X.html does not exit after the program ended.

Broken apt-get formula

Hello,

On a fresh kali-rolling install, I'm unable to install golismero with the commands:

echo "deb http://old.kali.org/kali sana main non-free contrib" >> ./etc/apt/sources.list
apt-get install -y golismero

It looks like the dependency with python-docutils is the issues here. It's looking for the version 0.12+dfsg-1 where only the version 0.16+dfsg-4 is available. (see skavngr/rapidscan#25)

Thanks,

K8S job

Hey Folks!
Trying to start container into my cluster like that:

apiVersion: batch/v1
kind: Job
metadata:
  name: job1
spec:
  template:
    spec:
      containers:
        - name: job
          image: treemo/golismero 
          args:
            - /bin/sh
            - -c
            - golismero scan -o report.hmtl https://mytarget.com**
      restartPolicy: Never

But i go errror:

[```
!] GoLismero: I don't know what to do with this: golismero scan -o report.html https://mytarget.com
[!] GoLismero: Error: Failed to add new audit, reason: I don't know what to do with this: golismero scan -o report.html https://mytarget.com
GoLismero finished at 2021-04-15 06:27:30.252147 UTC

Can you tell me what I do incorrect?


How to use a profile?

I really love using golismero for pentesting but I have no idea how to use a profile. I want to use the profile quick but don't know. Please help!

image

default parameters not expressed

Kali 2018.2. Repository version of golismero.
Executed command:
golismero $target_url

Then golismero starts "doing something". Why? Help function should expose that scan is the default option (if that's a scan that it's doing), while it says:

COMMAND

like it were mandatory, but works like an optional:

[COMMAND]

Please correct --help output.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.