All Projects → mindphluxnet → cowrie-logviewer

mindphluxnet / cowrie-logviewer

Licence: MIT License
A simple log viewer for cowrie

Programming Languages

HTML
75241 projects
python
139335 projects - #7 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to cowrie-logviewer

prickly-pete
A script using Docker to quickly bring up some honeypots exposing lots of services. For research, reconnaissance, and fun. (DISCLAIMER may not be fun, not to be taken internally, aim away from face)
Stars: ✭ 29 (+45%)
Mutual labels:  honeypot, cowrie
Cowrie
Cowrie SSH/Telnet Honeypot https://cowrie.readthedocs.io
Stars: ✭ 3,810 (+18950%)
Mutual labels:  honeypot, cowrie
pyenvdiff-lib
Python environment comparison tool
Stars: ✭ 23 (+15%)
Mutual labels:  webapp
FlashPaper
One-time encrypted password/secret sharing
Stars: ✭ 85 (+325%)
Mutual labels:  webapp
Python-TensorFlow-WebApp
Emerging Technologies Project - 4th Year 2017
Stars: ✭ 16 (-20%)
Mutual labels:  webapp
gomodest-starter
A complex SAAS starter kit using Go, the html/template package, and sprinkles of javascript.
Stars: ✭ 68 (+240%)
Mutual labels:  webapp
vctr
vctr is a self hosted short link management tool.
Stars: ✭ 14 (-30%)
Mutual labels:  webapp
pushtape-cassette
A lightweight framework for building static music apps. Make a cassette.json of your music and render a complete music site in seconds, featuring a persistent music player.
Stars: ✭ 22 (+10%)
Mutual labels:  webapp
crosshare
Crosshare is a free and ad-free community for crossword constructors and solvers
Stars: ✭ 41 (+105%)
Mutual labels:  webapp
HolyTips
A Collection of Notes, Checklists, Writeups on Bug Bounty Hunting and Web Application Security.
Stars: ✭ 1,210 (+5950%)
Mutual labels:  webapp
auth0-rubyonrails-sample
Auth0 Integration Samples for Ruby on Rails Web Applications
Stars: ✭ 36 (+80%)
Mutual labels:  webapp
hasFlutterPassedReactNativeYet
🎯 A Dart Web App to compare ↔️ GitHub stars of Flutter and React Native
Stars: ✭ 17 (-15%)
Mutual labels:  webapp
VindicateTool
LLMNR/NBNS/mDNS Spoofing Detection Toolkit
Stars: ✭ 40 (+100%)
Mutual labels:  honeypot
keyrier-json
SQL queries on JSON & CSV
Stars: ✭ 14 (-30%)
Mutual labels:  webapp
hr-time
High Resolution Time
Stars: ✭ 43 (+115%)
Mutual labels:  webapp
pass-culture-app-native
Mobile and web application for pass Culture
Stars: ✭ 18 (-10%)
Mutual labels:  webapp
fastify-example
Example webapp with Fastify
Stars: ✭ 18 (-10%)
Mutual labels:  webapp
personal-skill-tree
Create your own RPG-like talent tree
Stars: ✭ 29 (+45%)
Mutual labels:  webapp
create-web-app
Select your project type and use any boilerplate to get started! a project where you dont need any manually boilerplate adding phase in your software development phases
Stars: ✭ 15 (-25%)
Mutual labels:  webapp
WebTrap
This project is designed to create deceptive webpages to deceive and redirect attackers away from real websites.
Stars: ✭ 45 (+125%)
Mutual labels:  honeypot

Build Status

cowrie-logviewer

A simple log viewer for the cowrie honeypot.

Since the JSON logs are split by day, you can select the log to view in the top right corner of the page. Some rudimentary statistics are available as well. Uploaded payloads can also be viewed and downloaded via the "Uploaded files" page.

Attacker IPs are run against a local MaxMind GeoIP database to find out which country they belong to. The results are cached in a sqlite database.

Installation

Assuming you installed cowrie into your home directory:

su cowrie
cd ~/../cowrie
git clone https://github.com/mindphluxnet/cowrie-logviewer
cd cowrie-logviewer

If you want, you can make the script executable:

chmod +x cowrie-logviewer.py

Prerequisites

pip install -r requirements.txt

MaxMind GeoLite 2 Country database setup

mkdir maxmind
cd maxmind
wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.mmdb.gz
gunzip GeoLite2-Country.mmdb.gz
rm GeoLite2-Country.mmdb.gz

Configuration

Edit cowrie-logviewer.py to configure the script. There are several variables at the top of the file you can change:

  • "log_path" - the path to the cowrie log directory
  • "dl_path" - the path to the cowrie dl (downloads) directory
  • "maxmind_path" - the path to the MaxMind GeoLite 2 Country database. Default is "maxmind/GeoLite2-Country.mmdb"
  • "bind_host" - the IP address the web server should bind to, default 0.0.0.0
  • "bind_port" - the port the web server should listen to, default 5000
  • "min_upload_size" - min. file size in bytes to be to be listed on the "Uploaded files" page. Default is 1024
  • "debug" - if you want debug messages, set this to True. Default "False"
  • "use_gzip" - if you don't want gzip compression, set this to False. Default "True"
  • "filter_events" - a list of log events to filter. Default "[ 'cowrie.direct-tcpip.request', 'cowrie.direct-tcpip.data' ]"

Usage

python cowrie-logviewer.py

or (if you made the script executable)

./cowrie-logviewer.py

Once it's running, open

http://yourhostname:yourport

in the web browser of your choice. The default port is 5000.

Event filtering

Some log events can be quite annoying since they provide very little insight into what's actually happening but take up huge amounts of log lines. By default, cowrie-logviewer filters out events related to tcp/ip forwarding. I implemented this after having some idiot attempt to abuse my honeypot for some kind of tcp/ip forwarding exploit for about 24 hours straight. This caused the logs to become almost unreadable. Filtering these events removes that annoyance. Of course, the actual log files still contain these events so nothing is lost.

Local network connections

Since local network IPs aren't in the MaxMind database for obvious reasons, there's no flag icon attached to these connections. This isn't a bug, it's a feature.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].