Commit Graph

307 Commits (2b309944937212e1a5890f6083813fc844d92ea5)

Author SHA1 Message Date
neutron ad48df9793 creating new templates to make more modular in the future.
added ip types
added geo types
added source and destination nat IPs
better command line and process name analyzers
2018-08-02 14:04:23 -04:00
Dev Dua 457a2a579a Minor fix on output 2018-07-12 13:48:13 +05:30
Dev Dua 34bafe51ff Added license option & improved update process 2018-07-12 13:39:10 +05:30
Dev Dua a645e6365a Fixed typo 2018-07-12 11:52:56 +05:30
Dev Dua 4e74ac1102 Merge branch 'master' (commit 931d567) of https://github.com/Cyb3rWard0g/HELK into add-helk-update-script 2018-07-12 11:50:15 +05:30
Roberto Rodriguez 47edded450
Update helk_update.sh
I updated the Available Memory variable
2018-07-12 00:55:53 -04:00
Roberto Rodriguez 931d56729f HELK-07122018
License: GPL-3.0 Update
++ Updated all the local documents
++ Docker images in Dockerhub in progreess

Docker-Compose
++ Created two options: basic and trial

ELK Stack Docker Files
++ Created Trial Folders to make sure the configurations are set properly for when the user selects trial version of HELK.
++++ HELK trial = x-pack + trial license + security enabled
++ Deprecating the HELKs Platinum's Branch. Merging that branch with the HELKs master to allow user to select the type of license during the install process.

Jupyter
++ Getting ready for Jupyterhub
++ Created two folders: basic and trial to allow elasticsearch interaciton with username and password hardcoded in the spark session. trial license requires any interaction with elasticsearch to be authenticated.

Kibana
++ Added trial folder with scripts that set up security configs for the trial version of HELK. It creates users and roles to test the security features of x-pack

Logstash
++ Created trial folder with another pipeline folder in it. The pipeline in trial has output configs with elasticsearch's username and password hardcoded. Ready for when the user sets the build with trial license and wants to send logs to elasticsearch. The logstash configs are the same as the ones from the defailt pipeline. They only have username and password configs on all the output configs.

Nginx
++ set trial folder with the right config to allow Kibana handle the authentication process when user builds and installs HELK with a trial license. No need for nginx to handle the authentication.

helk_install bash script
++ Updated script to handle license choice : basic or trial
++ basic license is selected by default. If user selects trial, it runs the specific docker-compose file needed to build and install HELK with the right trial configs.
++ Updated also the CLI options. User now will have to specify the license for HELK. Example: sudo ./helk_install.sh -i 192.168.64.131 -l basic
2018-07-12 00:29:09 -04:00
Roberto Rodriguez 3694e25b23
Updating License 2018-07-11 20:54:57 -04:00
Dev Dua bd7df68b59 Removed backup and restore of docker-compose.yml (Docker Hub fail-safe) 2018-07-10 12:01:10 +05:30
Roberto Rodriguez 2a09c6ddd5 HELK 07092018
++Added Image property to docker-compose file for ELK images.
++Updated Docker files to remove extra configs that were being already specified in docker-compose file
++ Kibana scripts are now added in the docker-compose file. Move them to /usr/share/kibana/scripts folder in the Kibana container
++Updated ELK config files to follow basic subscription templates (default settings)
++ Updated Winlogbeat template to only point to two Kafka Brokers
2018-07-09 17:08:27 -04:00
Dev Dua bc67befc52 Removed Docker Hub update option 2018-07-09 10:04:59 +05:30
Dev Dua f327b332ee Small change to GitHub update check 2018-07-08 20:47:17 +05:30
Dev Dua c63bee7b55 Merge branch 'master' of https://github.com/Cyb3rWard0g/HELK into add-helk-update-script 2018-07-08 19:54:35 +05:30
Roberto Rodriguez a17d8341bd HELK v0.1.1-alpha07062018
Docker Compose
++ Updated Spark images to 2.3.1

ELK Stack
++ Docker Images updated to 6.3.1

helk-jupyter
++ Preparing Jupyter for Jupyterhub
++ Spark base image now comes with a sparkuser user
++ Updated es-hadoop package to 6.3.1

helk-logstash
++ Updated Sysmon parser to transform new datafield from Sysmon V8.0. RuleName

helk-spark-base
++ Images updated to 2.3.1

helk_install
++ fixed https://github.com/Cyb3rWard0g/HELK/issues/81
++ Updated banner to show right version
2018-07-06 23:11:41 -04:00
Dev Dua 7a055280f7 Added option to update from Github + minor improvements 2018-06-18 15:23:43 +05:30
Dev Dua 5a2a3911cf Modified the script for HELK 6.3.0 & added available memory check 2018-06-16 18:32:44 +05:30
Dev Dua 7277b9ee2c Merge branch 'master' of https://github.com/Cyb3rWard0g/HELK into add-helk-update-script
Get the latest install script
2018-06-16 07:49:44 +05:30
Roberto Rodriguez ac40eed43a
Merge pull request #78 from rsimplicio/install-script-update
Update helk_install.sh to read from available memory instead of free
2018-06-15 17:44:31 -04:00
Robert Simplicio 524ef7f352 Updated helk_install.sh with upstream changes and updated memory to available 2018-06-15 11:30:29 -07:00
Robert Simplicio 1beef09b92 Merge remote-tracking branch 'upstream/master' into install-script-update 2018-06-15 11:23:14 -07:00
Roberto Rodriguez 828f0fc599 HELK 6.3.0
HELK Version
+ ELK update tp 6.3.0

Logstash
+ Integrated ATT&CK CTI to the build. Created from https://github.com/Cyb3rWard0g/ATTACK-Python-Client/tree/master/integrations/helk_cti
+ Added the mitre_attack file to the build which contains information from Enterprise, PRE and Mobile Matrices
+ Enabled x-pack monitoring (new feature)

Kibana
+ Added Dashboards for the ATT&CK Integration

helk_install script
+ reduced docker-compose build and run steps to one

scripts
+ Added script export_attack.py to export the file used for logstash and kibana.
2018-06-15 13:11:58 -04:00
Dev Dua 4dce1883a2 Minor improvements 2018-06-15 09:05:52 +05:30
Roberto Rodriguez 51c310febb
Official HELK LogoV2 2018-06-14 00:43:36 -04:00
Robert Simplicio 667a4c4434 Update helk_install.sh to read from available memory instead of free 2018-06-13 09:18:07 -07:00
Roberto Rodriguez ec4e491060 Minor updates
- Docker compose file order of volumes
- Kibana Dockerfile: removed comment
- README: Added Contributor
2018-06-12 01:28:26 -04:00
Roberto Rodriguez 2856a40c9c Minor Fix - Winevent Security
fix https://github.com/Cyb3rWard0g/HELK/issues/75
2018-06-11 02:42:44 -04:00
Roberto Rodriguez fea1b81c31 Update 06112018
Updated several errors that I got after testing a few configurations.

Logstash
- Updated Field Names for Sysmon and Security Logs
- Updated Logstash Templates to maintain consistency
- Updated Dockerfile to directly use official Centos Elastic Docker Image
- Updated Logstash main config file to update pipeline batch value and the Kafka input config to  fix https://github.com/Cyb3rWard0g/HELK/issues/73
- Updated Logstash Security parser to fix:
-- https://github.com/Cyb3rWard0g/HELK/issues/71
-- https://github.com/Cyb3rWard0g/HELK/issues/72

Kibana & Elasticsearch
- Updated Docker files to directly use  Official Centos Elastic Docker images with only a few updates.

Docker Compose File
- Updated file to mount Logstash, Kibana and Elasticsearch config files, dashboards and output_templates. This will simplify utilization of custom pipes, visualizations and dashboards. User can now just replace those the local folder and HELK will use those configurations.
- ES_JAVA_OPTS is now set to 6GB by default. No more MEM string. It confuses the user.

helk_install.sh script
- Updated the string that it replaces when setting ES JAVA OPTS. It went from looking for the string "MEME" to "6GB".
2018-06-11 01:56:28 -04:00
Roberto Rodriguez 3cbef71322 Fixed Disk Size conversion
Addressed https://github.com/Cyb3rWard0g/HELK/issues/67 where I was grabbing Disk size in human readable format which was breaking the calculations when the HELK was being built on a computer with TB space.
2018-06-10 15:18:53 -04:00
Dev Dua 596bd4cdb8 Minor corrections 2018-06-05 16:22:49 +05:30
Dev Dua 1e80f05e0e Added first draft of the update script 2018-06-05 16:14:18 +05:30
Roberto Rodriguez 6702eaf8d9 Install CLI Option 2018-06-03 19:15:24 -07:00
Roberto Rodriguez eaf08d4a97 Updated Kafka Input Pipeline config
I added the helk-kafka-broker2 to the list of Kafka instances in case the other one is down. more information about the kafka plugin: https://www.elastic.co/guide/en/logstash/current/plugins-inputs-kafka.html#plugins-inputs-kafka-bootstrap_servers
2018-05-31 16:13:36 -04:00
Roberto Rodriguez f3a0e251ea 05312018
Logstash
- Added Local Pipeline to the build to allow custom local configurations
- updated sysmon config to fix https://github.com/Cyb3rWard0g/HELK/issues/63
- removed port exposed in local logstash Dockerfile. It will be pushed to official docker image in the next update
- removed logstash init file (not being used anymore)

Zeppelin
- not available yet
- initial draft dockerfile
- created spark-defaults file for future zeppelin dockerfile

Install Script
- incrased minimum memory size required
2018-05-31 02:08:15 -04:00
Roberto Rodriguez bb321d985a
Merge pull request #56 from thomaspatzke/devel-sigma
Sigma integration
2018-05-30 12:12:14 -04:00
Thomas Patzke ea979912ed Finalized Sigma integration 2018-05-22 23:32:07 +02:00
Thomas Patzke d0477a08db Added Sigma container
Todo:
* Structure (scripts in directory)
* Recognition when Kibana and index config of it gets available (polling)
* Cron job for auto update
* Integration in compose file
2018-05-22 23:32:07 +02:00
Thomas Patzke e70eafce09 Added field mappings
Field mappings required for integration of Windows Sigma rules.
2018-05-22 23:32:07 +02:00
Roberto Rodriguez 0519db370a
Update PULL_REQUEST_TEMPLATE.md 2018-05-17 09:33:56 -04:00
Roberto Rodriguez 714f9daacd
Merge pull request #51 from devdua/add-snap-fallback
Added snap as fallback installation method for Docker
2018-05-15 10:54:08 -04:00
Dev Dua 43feaa7407 Added check to see if snap is installed 2018-05-15 09:59:54 +05:30
Dev Dua f8cbe7e825 Added snap as fallback installation method for Docker 2018-05-15 08:10:10 +05:30
Roberto Rodriguez 93c47ea728
Create PULL_REQUEST_TEMPLATE.md 2018-05-11 16:31:41 -04:00
Roberto Rodriguez 4b1c4fbd65 Update issue templates 2018-05-11 16:22:18 -04:00
Roberto Rodriguez 8c08a5bf66
External ES URL and port was removed 2018-05-07 02:15:17 +02:00
Roberto Rodriguez 3baec9f79c Updated post-install info & Resources 2018-05-04 00:35:45 -04:00
Roberto Rodriguez d8070cc204 Updated post-Install information
+ Added the Cluster Master and Worker URLs.
2018-05-03 16:02:48 -04:00
Roberto Rodriguez 10de1b6b0a HELK 6.2.4-050318
## Overall
+ Removed the Init files dependencies on all containers
+ Added more resources to the resources folder (papers and presentations)
+ Updated to-do list on main README
+ Removed Static Network setting. Addressing overlapping network issues (https://github.com/Cyb3rWard0g/HELK/issues/43)
+ Updated WIki and added new images to it
+ Started documenting potential error messages or bugs with a few quick fixes

## Helk Install Script
+ Script now collects information about Available Memory and Disk size for LINUX host ONLY. it only continues if the box hosting the HELK has at least 12GB of RAM and 50GB of Disk Available. (This can be overwritten manually by just editing the helk_install script before installing the HELK)

## ELK Stack
+ Started using Elastic Docker Images as a base
+ Updated ELK stack to 6.2.4 version
+ X-Pack Basic Free License attached to build automatically
+ Monitoring capabilities are now enabled in the build (Reason why Cerebro went away)

## Spark
+ Integrated Spark Standalone Cluster Manager
+ Spark Node running with Jupyter Notebook now points to the Helk-Spark-Master container for any execution of code
+ Added Spark Master and Worker Docker Images
+ Build runs now with 2 Workers and 1 Master by default.
+ Apache Arrow is enabled for Pandas Dataframe optimization
+ Created Spark-Base Docker Image (Applied to the Jupyter Image)

## Kafka
+ Kafka Container was split in Kafka Brokers and one Zookeeper
+ Helk runs with 2 Kafka Brokers and 1 Zookeeper by default

## Jupyter Container
+ Preparing to add Zeppelin Notebook. the Analytics container is now named Jupyter. It uses the Spark-Base image to build on the top and install the necessary packagess
+ New packages were added:
++ nxviz
++ hiveplot
 ++ pyarrow
+ Apache Arrow is not enabled on the Jupyter node to be able to optimize the use of Pandas DataFrames
2018-05-03 15:54:12 -04:00
Roberto Rodriguez 084ff68cb2 Updated HELK Design
Removed OTX Enrichment for now to reduce the load on logstash and keep it clean for now. It will be added in the future. Implementation is already developed.
2018-04-10 03:16:54 -04:00
Roberto Rodriguez 24e82eafad Updsted README 2018-04-10 03:03:19 -04:00
Roberto Rodriguez 6054e2be9a HELK 6.2.3-041018
Docker-Compose File
+ Split helk-elk service in 3 (Logstash, Kibana, Logstash)

HELK-base
+ New Docker Base image applied to all HELK's Docker images

HELK-analytics
+ updated file due to new helk-base image

HELK-elk
+ Removed Helk-elk folder

HELK-kafka
+ Updated it to version 1.1.0

HELK-Logstash
+ Updated all files to point to helk-kafka and helk-elasticsearch (New image after splitting helk-elk)

New Docker Images
+ helk-elasticsearch
+ helk-logstash
+ helk-kibana
+ helk-nginx

HELK-nginx
+ Removed route to elasticsearch:8082. Cerebro now can point to 172.18.0.2 (Internal Docker IP)

HELK-Install
+ organized script a little better by creating install_dockerl and install_docker_compose functions

HELK-kibana
+ updated Kibana configuration to set Kibana server to the name of the service helk-kibana. It allows remote connections to it (internally among docer images)
+ Updated elasticsearch url to new docker image (helk-elasticsearch:9200)

HELK-kafka
+ updated internal listeners on each broker to helk-kafka
2018-04-10 02:56:28 -04:00