# HONEYNET (Deception Technology using Honeypot)
### Created by: Achmad Fathur Rizki
---
### Website related to seminar:
https://dionaea.readthedocs.io/en/latest/
https://www.enisa.europa.eu/
https://www.enisa.europa.eu/publications/proactive-detection-report
---
### Requirements:
1. VMWare / virtualbox
2. Dionaea Open Virtualization Format Archive
3. Internet connection
---
### Steps:assadadad
1. Buka vmware dan import dionaea Open Virtualization Format Archive
2. Download extension pack untuk VMware (sesuaikan versi VMWare nya, dapat dilihat di about)
3. Atur network jadi bridged adapter (KONEKSI JANGAN KE HOTSPOT UI)
4. Buka https://dionaea.readthedocs.io/en/latest/installation.html
5. Login dengan username: dio dan password: 1234567890
6. Yang dari https://dionaea.readthedocs.io/en/latest/installation.html --> Arch linux ga usah diikuti
> VMWARE DAN VIRTUALBOX MEMILIKI NETWORK YANG BERBEDA SEHINGGA VMWARE HARUS MELAKUKAN BEBERAPA KONFIGURASI AGAR DAPAT TERKONEKSI DENGAN INTERNET:
>
> 1. ifconfig (lihat apakah network ens33 atau enp0s3).
> 2. Lalu, masukkan perintah berikut:
> `sudo lshw -class network`
>
> 3. Ubah file di interfaces, dengan cara berikut:
> `sudo nano /etc/network/interfaces`
> 4. Cari enp0s3 (ethernet network peripheral #serial), dan ubah semuanya menjadi ens33
> 5. reboot
---
### Langkah-langkah melakukannya di dionaea
1. Clone dulu dengan memasukkan command berikut:
```
git clone https://github.com/DinoTools/dionaea.git
cd dionaea
```
2. Machine -> Setting -> Advance -> bidirectional (OPTIONAL) / install ssh agar dapat diakses make cmd
`sudo apt-get install ssh`
3. Update dionaea
`Sudo apt-get update`
4. Install required build dependencies before configuring and building dionaea. (‘ttf-liberation’ required to ‘util/gnuplotsql.py’)
```
sudo apt-get install \
build-essential \
cmake \
check \
cython3 \
libcurl4-openssl-dev \
libemu-dev \
libev-dev \
libglib2.0-dev \
libloudmouth1-dev \
libnetfilter-queue-dev \
libnl-3-dev \
libpcap-dev \
libssl-dev \
libtool \
libudns-dev \
python3 \
python3-dev \
python3-bson \
python3-yaml \
python3-boto3 \
ttf-liberation
```
5. Balik ke laman awal
`cd`
6. Masukkan komentar untuk run sebagai Daemon (running in background)
`sudo /opt/dionaea/bin/dionaea -D`

7. Jalani perintah berikut untuk mengecek servis apa saja yang terbuka (servis 'palsu' yang diberikan oleh dionaea)
`sudo netstat -atnp`

8. Install sqlite3
`sudo apt install sqlite3`

9. Pindah direktori:
`cd /opt/dionaea/etc/dionaea`
`ls`
10. Lakukan perubahan sesuai yang diinginkan.
Misalkan listen mode -> ubah jadi `manual`

Atau mengubah konfigurasi logging

11. Untuk ngecek servis yang dijalanin

services-enabled untuk mengecek seluruh servis yang dibuka.

12. Contoh penyerangan dari localhost, dari sini honeypot sudah dapat logging:
`curl localhost`
Atau, Contoh penyerangan dari http:

13. Untuk menambahkan fungsi baru:
`cd /opt/dionaea/lib/dionaea/python/dionaea`

14. Masuk ke database:
`cd /opt/dionaea/var/lib/dionaea/`
Lalu:
`sqlite3 dionaea.sqlite`

- Cek serangan yang ada:
`select * from connections;`
- Cek malware yang ada di public address:
`select * from downloads;`
Lalu, Salin ke file binaries di `pot/dionaea/var/lib/dionaea` untuk analisis malware
15. Cek logging mendetail dari serangan yang dilakukan attacker.
`opt/dionaea/var/lib/dionaea/bistreams/2019-09-11 `
===============
Visualisasi Honeypot Dionaea
YINSTALASI VISUALISASI DIONAEA MENGGUNAKAN ES DAN KIBANA
By : Pratama Putra K.R.
1) INSTALL ELK PLATFORM
Install Java 8
Elasticsearch membutuhkan java 8 untuk running. Maka dilakukan installasi java 8 karena versi ini merupakan rekomendasi dari Elasticsearch.
1. Installasi Java 8
sudo apt install openjdk-8-jdk openjfx
2. Verifikasi jika sudah terinstall java 8
java -version
Seharusnya java menunjukann versi
openjdk version "1.8.0_222"
Install Elasticsearch
Untuk instalasi elasticsearch dapat dilakukan dengan menambahkan elastic package source list atau dengan mengunduh source nya
1. Mengunduh dari sumber
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.deb
wget x.x.x.x/elasticsearch-6.5.4.deb
2. Menjalankan command untuk melakukan instalasi dari .deb file nya
sudo dpkg -i elasticsearch-6.5.4.deb
3. Elastic sudah terinstall dan selanjutnya dilakukan kofigurasi
sudo vi /etc/elasticsearch/elasticsearch.yml
Untuk dapat mengakses hanya dari lokalhost maka dilakukan perubahan konfigurasi pada elasticsearch.yml dan atur network.host : localhost
network.host: localhost
4. Save dan exit
5. Start Elasticsearch
sudo service elasticsearch restart
Install Kibana
Untuk instalasi kibana dapat dilakukan dengan menambahkan elastic package source list atau dengan mengunduh source nya
1. Mengunduh dari sumber
wget https://artifacts.elastic.co/downloads/kibana/kibana-6.5.4-amd64.deb
wget x.x.x.x/kibana-6.5.4-amd64.deb
2. Menjalankan command untuk melakukan instalasi dari .deb file nya
sudo dpkg -i kibana-6.5.4-amd64.deb
3. Elastic sudah terinstall dan selanjutnya dilakukan kofigurasi
sudo vi /etc/kibana/kibana.yml
Untuk dapat mengakses hanya dari lokalhost maka dilakukan perubahan konfigurasi pada kibana.yml dan atur server.host : localhost
server.host: "localhost"
4. Save dan exit
5. Start kibana
sudo service kibana restart
Install Logstash
1. Mengunduh dari sumber
wget https://artifacts.elastic.co/downloads/logstash/logstash-6.5.4.deb
wget x.x.x.x/logstash-6.5.4.deb
2. Menjalankan command untuk melakukan instalasi dari .deb file nya
sudo dpkg -i logstash-6.5.4.deb
3. Install geolite
cd /etc/logstash/
wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.tar.gz atau wget x.x.x.x/GeoLite2-City.tar.gz
tar xzf GeoLite2-City.tar.gz
mv GeoLite2-City_20190108 GeoLite2-City
Install Filebeat
1. Mengunduh dari sumber
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.2.4-amd64.deb
wget x.x.x.x/filebeat-6.2.4-amd64.deb
2. Menjalankan command untuk melakukan instalasi dari .deb file nya
sudo dpkg -i filebeat-6.2.4-amd64.deb
2) CONVERT SQLITE TO JSON
Install SqliteToJson
1. Mengunduh dari sumber
wget https://raw.githubusercontent.com/eval2A/dionaeaToJSON/master/dionaeaSqliteToJson.py
wget x.x.x.x/dionaeaSqliteToJson.py
2. Pindah dionaeaSqliteToJson.py
sudo mv dionaeaSqliteToJson.py /opt/
3. Edit dionaeaSqliteToJson.py
Default path pada dionaeaSqliteToJson.py masih mengarah ke file yang salah. maka harus diganti sebagai berikut.
sudo nano /opt/dionaeaSqliteToJson.py
Ubah default path menjadi
dionaeaSQLite = '/opt/dionaea/var/lib/dionaea/dionaea.sqlite'
dionaeaBinariesPath = '/opt/dionaea/var/lib/dionaea/binaries'
4. Jalankan dionaeaSqliteToJson.py
sudo apt-get install python3
sudo python3 /opt/dionaeaSqliteToJson.py
3) KONFIGURASI LOGSTASH DAN FILEBEAT
Konfigurasi Logstash
1. Buat file konfigurasi
sudo nano /etc/logstash/conf.d/logstash-dionaea.conf
2. Ubah file konfigurasi Logstash
input {
beats {
port => 5044
}
}
filter {
if [document_type] == "dionaea" {
json {
source => "message"
}
if [remote_host] {
mutate {
copy => { "remote_host" => "remote_hostname" }
}
dns {
reverse => [ "remote_hostname" ]
nameserver => [ "8.8.8.8", "8.8.4.4" ]
action => "replace"
hit_cache_size => 4096
hit_cache_ttl => 900
failed_cache_size => 512
failed_cache_ttl => 900
}
geoip {
source => "remote_host"
target => "geoip"
}
}
mutate {
remove_tag => [ "beats_input_codec_plain_applied"]
remove_field => [ "source", "offset", "input_type" ]
}
}
}
output {
if [document_type] == "dionaea" {
elasticsearch {
hosts => ["localhost:9200"]
index => "dionaea-%{+YYYY.MM.dd}"
}
}
}
3. Save and Exit
Konfigurasi Filebeat
1. Buat file konfigurasi
cd /etc/filebeat
mv filebeat.yml filebeat.yml.bak
sudo nano filebeat.yml
2. Ubah file konfigurasi
filebeat.prospectors:
- type: log
paths:
- /opt/dionaea/var/dionaea/json/dionaea.json*
fields:
document_type: dionaea
fields_under_root: true
output:
logstash:
hosts: ["localhost:5044"]
bulk_max_size: 2048
3. Save and Exit