Drupal

services.drupal.drupal_server module

A Drupal CMS server based on Python’s HTTPServer.

class services.drupal.drupal_server.DrupalServer(logger, alert)[source]

Bases: object

Drupal CMS honeypot.

start()[source]

Start serving requests by starting the underlying HTTP server.

stop()[source]

Stop serving requests.

class services.drupal.drupal_server.HoneyHTTPRequestHandler(*args, directory=None, **kwargs)[source]

Bases: http.server.SimpleHTTPRequestHandler, object

Filter requests to catch Drupalgeddon 2 exploit attempts.

do_GET()[source]

Handle an HTTP GET request.

do_POST()[source]

Handle an HTTP POST request.

log_error(message, *args)[source]

Log an error.

log_message(level, message, *args)[source]

Send message to logger with standard apache format.

log_request(code='-', size='-')[source]

Log an incoming request.

verify(query)[source]

Filter HTTP request to make sure it’s not an exploit attempt.

version_string()[source]

Return the web server name that we run on.

class services.drupal.drupal_server.ThreadingHTTPServer(server_address, RequestHandlerClass, bind_and_activate=True)[source]

Bases: socketserver.ThreadingMixIn, http.server.HTTPServer

Extend both classes to have threading capabilities.

services.drupal.drupal_service module