Skip to content

Etcher - plattformübergreifend SD Karten oder USB Sticks beschreiben

Tools um SD Karten zu beschreiben oder ISO Dateien auf USB-Sticks zu bannen gibt es einige.

Da wären Rufus für Windows, LibreELEC USB-SD Creator für Media Systeme oder UNetbootin, Universal USB Installer, LiLi USB Creator für Linux Systeme.
Alle diese Programme sind Open Source und erfüllen nur einen Zweck, möglichst einfach bestimmte Daten von A nach B schaufeln.

Etcher - Open-Source USB Image Tool in Schick

Zu dieser Toolsammlung gesellt sich mit Etcher ein weiteres Programm hinzu, welches ebenfalls unter Open Source Lizenz läuft und auf jeder Plattform (Windows, OS X und Linux) lauffähig ist.

etcher

 

Anders als bereits bekannte USB Creator Tools, basiert Etcher auf Electron. Ein JavaScript/Node.js Framework, welches vom Atom Editor oder Visual Studio Code bekannt sein dürfte.

Nicht nur die Basis ist eine andere, auch die schicke Oberfläche kann überzeugen. Dazu gesellt sich eine Fehlerüberprüfung die verhindert, dass fehlerhafte Medien beschrieben werden. 

Installation via Repository

Die Installation kann via Repository oder Download einer.zip Datei erfolgen, je nach Wunsch.

nano /etc/apt/sources.list.d/etcher.list
        deb https://dl.bintray.com/resin-io/debian stable etcher
sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 379CE192D401AB61
sudo apt-get update
sudo apt-get install etcher-electron

 


Fazit

Für alle die schnell Daten bzw. ISO Dateien auf USB-Sticks oder SD-Karten laden möchten und nicht genau wissen, was dd ist.

Etcher

Installation DracOS 2.1, sowie Neues von Parrot Security OS und BlackArch Linux

Gegen Ende letzten Jahres gab es noch ein paar Änderungen an der Security Distributionen Front. Aber zunächst möchte ich ein neues Security OS vorstellen. 

DracOS 2.1 - Leak

Neu im Sicherheitsbunde ist ein indonesisches Security OS. 

DracOS ist ein Penetration OS, welches auf Linux from Scratch aufbaut. Der regelmäßige Leser erinnert sich vielleicht daran (Artikel).
Es verwendet die Kommandozeile in Verbindung mit den Dynamic Windows Manager. Das heißt ihr solltet fit auf der CLI sein, wenn ihr die Distribution verwendet oder es eben werden.

In der aktuellen Version 2 gibt es noch keinen Paketmanager, dieser soll aber folgen.
Wie bei anderen Distribution sind jede Menge Tools zur Informationsgewinnung, Sicherheitslückenfindung oder Malware Analyse vorinstalliert.

Details zu allen Programmen lassen sich hier finden. DracOS Codename "Leak" wurde bereits im Oktober 2016 veröffentlicht und wird stets weiter entwickelt.

 

Installation Dracos 2.1

Die Installation erfolgt über git und den Installer DRACER oder ganz normal via ISO Datei

sudo apt-get install squashfs-tools rsync
git clone https://github.com/Screetsec/super-dracos
cd super-dracos
sudo chmod +x DracosInstaller.sh
sudo ./DracosInstaller

[02]  CREATE PARTITION WITH FDISK
[03]  START INSTALL DRACOS

dracos-dracer

Ich habe eine Installation zu Testzwecken via ISO realisiert, diese ist einfach via VirtualBox oder VMware möglich.

Erste Schritte mit DracOS

Nach einer Installation via VirtualBox muss zunächst ein Login erfolgen.
Hierzu wird der Login "root" und das Passwort "toor" eingegeben.

Danach wird schlicht das Terminal angezeigt, für den Start der GUI muss "startx" eingegeben werden.

Auch nach dem Start der Oberfläche ist weiterhin die Tastatur das Hauptbewegungsmittel, da es sich bei DracOS wie schon erwähnt um eine CLI Steuerung handelt.

Wichtige Tastatur Shortcuts für die Bedienung sind

Menü öffnen windows + shift + d
Browser öffnen windows + shift + l
Screenshot printscreen
Terminal öffnen windows + shift + enter
Dateimanager öffnen windows + shift + c
Fenster verschieben windows + left click
Fenstergröße anpassen windows + right click

Zusätzlich dazu kann auch das Fenster Layout geändert werden

Null windows + f
Monocle windows  + m
Tile windows + t
Apples Grid windows + g


Fazit

DracOS bringt frischen Wind in die Security OS Szene, mit seinem LFS Ansatz ist es eine gelungene Abwechslung zu herkömmlichen Distributionen. Tools sind zahlreich vorhanden und das OS benötigt nicht viele Ressourcen.

DracOS



Parrot Security OS 3.3

Das bereits vor zwei Monaten vorgestellte Sicherheits OS Parrot Security wurde in Version 3.3 veröffentlicht.

Parrot-SecurityDie größten Änderungen der neuen Version dürfte der Wechsel zum Kernel 4.8, GCC 6.2 und PHP7 darstellen.
Des weiteren wurden fast alle der integrierten Security Tools aktualisiert.

 

Parrot Sec




BlackArch Linux 2016.12.29

Ebenfalls kurz vor Weihnachten wurde die neueste Version von BlackArch veröffentlicht.

Die auf ArchLinux basierende Distribution, mit stolzen 6.3 GB an Daten, wurde im Zuge des Rolling Releases auf 2016.12.29 aktualisiert.

BlackArch-Linux

Auch hier wurde der Kernel auf 4.8.13 aktualisiert, sowie viele Programme. Laut Changelog sind über 100 neue Tool hinzugekommen.

BlackArch bietet nun auch eine offizielle Unterstützung für VirtualBox und VMware, hierzu wird nun ein OVA Image bereitgestellt.

Black Arch




Fehlt nur noch der Überblick

Gesamtübersicht der bereits erwähnten Security Systeme

Name Version Tools Besonderes Basis GUI
Autopsy 4.0 ??? The Sleuth Kit Windows  
BackBox 4.7 70+ eigenes Repo Ubuntu Xfce
BackTrack 5 300+ out of date Ubuntu Gnome
BlackArchLinux 2016.12.29 1500+ ArchLinux ArchLinux Gnome
CaINE 5 100+ WinUFO Ubuntu Mate
DracOS 2.1 100+ CLI LFS DWM
DEFT Zero RC1 250+ Dart2 Lubuntu Lxde
Kali Linux 2016.2 300+ ARM fähig Debian Multi
LionSec 5.0 ???   Ubuntu  
Matriux v3 RC1 300+ out of date Debian Gnome
NST 24 ??? Server integriert Fedora  
NetSecLOS 6.0 50+   OpenSuse Lxde
Paladin 6.0 30+   Ubuntu  
Parrot Security 3.3 700+ Cloud fähig Debian Jessie MATE
Pentoo 2015.0 RC5 ??? 64bit Gentoo Xfce
Ronin   150+ out of date Lubuntu Lxde
Sans SIFT 3.0 20+   Ubuntu  

Sysinternals Tools ohne Browser via Windows Explorer installieren

Die bekannte Sysinternals Suite mit Programmen wie Process Explorer oder Autoruns wurde ja bekanntlich schon vor langer Zeit von Microsoft übernommen.
Die Sysinternals Leute haben der Toolssammlung einen speziellen Server für gegönnt, bestimmt schon länger, mir ist das allerdings neu.

Sysinternals Tools mit dem Windows Explorer öffnen

Für die Installation einzelner Sysinternals Programme ist kein Browser notwendig.

Microsoft stellt einen Server bereit, der sich wie ein lokaler Server aufrufen lässt.

sysinternals
Dazu muss nur folgender UNC Pfad "\\live.sysinternals.com" in der Adresszeile des Windows Explorers oder unter Windows 10 in der globalen Suche eingegeben werden. Auch via Shortcut "Win+R" ist der schnelle Aufruf möglich.

sysinternals-browser

Alternativ ist der Download via Webseite ebenfalls möglich, dennoch ist das Öffnen direkt im Explorer ein großer Vorteil, besonders bei einer Untersuchung via Live CD oder abgespeckten Systemen, welche keine Browser integriert haben. 

Fazit

Der Download bzw. die Installation via Windows Explorer und UNC Pfad ist ein praktische Ergänzung der Windows Toolsuite.

Sysinternals

Lynis 2.3.4 – Sicherheits Auditing für Linux Systeme mit vielen neuen Features

Das Open Source Security Auditing Tool Lynis  hat ein weiteres Major Update erhalten, welches allerdings schon beim 4. Bugfix Release angekommen ist.
Ich hatte das letzte Mal im März darüber berichtet (Artikel).

Zu den Kern-Neuerungen der Version 2.3.4 zählt unter anderen

  • Neue Ansible Scripte sind verfügbar
  • Ein Entwickler Modus für detaillierte Informationen wurde integriert "--profile developer.prf lynis audit system --developer"
  • Neuer Hilfe Befehl "show" (siehe Screenshot)
  • Es werden nun verschiedene Sprachen unterstützt, Deutsch ist seit Version 2.3.2 dabei.
  • Nginx wird auf veraltete SSL Implementierungen überprüft (SSLv2/SSLv3)
  • Lynis beherrscht verschiedene Profile
  • Remote Scans via SSH sind möglich
  • Systemd wird erkannt und unterstützt
  • Die Auswertung samt Darstellung wurde verbessert
  • Die Auswertung kann debugged werden "--debug flag"
  • Support für Redis, OpenStack und PHP 5.6 wurde integriert
  • Die Logdatei lässt sich mit "lynis show details TestID" öffnen
  • Bösartige Arch Linux Pakete werden nun erkannt

lynis-show

Installation Ubuntu 14.04 oder 16.04

Ubuntu 14.04

sudo sh -c 'echo "deb https://packages.cisofy.com/community/lynis/deb/ trusty main" > /etc/apt/sources.list.d/cisofy-lynis.list'
sudo apt-get update
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C80E383C3DE9F082E01391A0366C67DE91CA5D5F
sudo apt-get install lynis

Ubuntu 16.04

sudo sh -c 'echo "deb https://packages.cisofy.com/community/lynis/deb/ xenial main" > /etc/apt/sources.list.d/cisofy-lynis.list'
sudo apt-get update
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C80E383C3DE9F082E01391A0366C67DE91CA5D5F
sudo apt-get install lynis

Weitere Systeme wie Fedora oder SuSE werden ebenfalls unterstützt, alternativ kann das Paket auch ohne Repository installiert werden.

lynis

Fazit

Für Administratoren oder Sicherheitsexperten ist Lynis ein praktisches Tool, um Systeme zu auditieren oder zu härten. Die deutsche Übersetzung ist etwas dürftig und zum jetzigen Stand eher überflüssig. Dafür wurden zahlreiche Verbesserungen integriert, welche das kleine Programm immer noch zu einem nützlichen Puzzlestück bei einem ausgefeilten Sicherheitskonzept macht.

Download

PostgreSQL 9.6, pgAdmin 4 und Barman 2.0 - Die Neuerungen und Installation unter Ubuntu 14.04 und 16.04

PostgreSQL 9.6, pgAdmin 4 und Barman 2.0 sind pünktlich zum neuen Quartal fertig geworden, quasi ein Rundumschlag, doch eins nach dem anderen.

PostgreSQL 9.6 - jetzt auch parallel

Beim neuen Datenbank Server 9.6 verstecken sich die Neuerungen wie so oft im Detail.
So wurden parallele Queries eingeführt. Diese sind in den Standardeinstellungen noch nicht aktiv und müssen erst aktiviert werden. Ich werde das Thema später kurz anreisen.
Das bekannte autovacuum wurde verbessert und die Unterstützung für  multi-CPU-socket Server optimiert. Die Volltextsuche hat Verbesserungen erhalten und arbeitet effizienter.
Eine vollständige List der Neuerungen kann den Release Notes entnommen werden.

postgres

Installation PostgreSQL 9.6 unter Ubuntu 14.04 oder 16.04

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install postgresql-9.6

Kleine Anmerkung, das Paket postgresql-contrib-9.6 wird durch diesen Befehl mit installiert und muss nicht extra installiert werden.

Parallele Queries aktivieren

Wie bereits in der Einführung erwähnt, beherrscht PostgreSQL 9.6 parallele Queries. Hier ein kurzer Einblick in dieses Thema

Aktuelle Einstellungen anzeigen

sudo cat /etc/postgresql/9.6/main/postgresql.conf |grep max_parallel_workers_per_gather

    #max_parallel_workers_per_gather = 0    # taken from max_worker_processes

Anzahl der Workers auf 2 erhöhen

Wie oben zu sehen ist, ist die Einstellung nicht aktiv, mit dem folgenden Befehl soll das geändert werden.

sed -i 's/#max_parallel_workers_per_gather = 0/max_parallel_workers_per_gather = 2/g' /etc/postgresql/9.6/main/postgresql.conf

Weitere (wichtige) Werte in Zusammenhang mit parallelen Queries

Neben der Anzahl der Worker gibt es noch weitere Einstellungen, hier eine Auflistung der verfügbaren Optionen.

  • min_parallel_relation_size = 8MB: Sets the minimum size of relations to be considered for parallel scan
  • parallel_setup_cost = 1000.0: Sets the planner's estimate of the cost of launching parallel worker processes
  • parallel_tuple_cost = 0.1: Sets the planner's estimate of the cost of transferring one tuple from a parallel worker process to another process
  • force_parallel_mode = off: Allows the use of parallel queries for testing purposes even in cases where no performance benefit is expected

Kleiner Hinweis, die Konfiguration lässt sich natürlich auch direkt in der Postgres Konsole anpassen. Hierzu gab es auch schon einen Artikel (PostreSQL und ALTER SYSTEM)

sudo su postgres
psql
postgres=# SET max_parallel_workers_per_gather TO 8;

Test der parallelen Queries

Das Verhalten der Workers kann mit einer einfachen Testdatenbank überprüft werden

sudo su postgres
psql

postgres=# CREATE TABLE paralleltest (i int);
CREATE TABLE
postgres=# INSERT INTO paralleltest SELECT generate_series(1,1000000);
postgres=# ANALYZE paralleltest;
postgres=# EXPLAIN ANALYZE SELECT * FROM paralleltest WHERE i=1;

----------------------------------------------------------------------------------------------------------------------------
 Gather  (cost=1000.00..10633.43 rows=1 width=4) (actual time=22.542..413.352 rows=1 loops=1)
   Workers Planned: 2
   Workers Launched: 2
   ->  Parallel Seq Scan on paralleltest  (cost=0.00..9633.33 rows=1 width=4) (actual time=213.560..343.765 rows=0 loops=3)
         Filter: (i = 1)
         Rows Removed by Filter: 333333
 Planning time: 9.629 ms
 Execution time: 416.070 ms
(8 rows)

Weitere Details und Analysen können mit der Verwendung verschiedener Einstellungen erreicht werden. Infos dazu hier.

Fazit

Abschließend kann gesagt werden, dass mit parallelen Queries ein Geschwindigkeitsvorteil gegeben ist, bei anderen Neurungen fehlt mit der praktische Test um Aussagen treffen zu können. Ein Update auf die neueste Version steht somit außer Frage.



pgAdmin 4 - alles neu macht der Herbst

Ich hatte ja bereits über die pgAdmin 4 Beta berichtet und möchte darum nicht mehr ausführlich auf das PostgreSQL Verwaltungs-Tool eingehen, sondern auf den vorhandnen pgAdmin Artikel verweisen.
Weitere Neurungen sind in pgAdmin seit der Beta nicht eingeflossen, Einstellungen und Funktionen lassen sich der offiziellen Dokumentation entnehmen.

pgadmin4

Installation pgAdmin4

Da zum jetzigen Zeitpunkt noch kein Debian Paket zur Verfügung steht, erfolgt die Installation via PIP

sudo apt-get install python-pip
sudo apt-get install libpq-dev
sudo apt-get install python-dev
wget https://ftp.postgresql.org/pub/pgadmin3/pgadmin4/v1.0/pip/pgadmin4-1.0-py2-none-any.whl
pip install pgadmin4-1.0-py2-none-any.whl

Alternativ kann pgAdmin4 auch im Bundle mit PostgreSQL 9.6 heruntergeladen werden.



Barman 2.0 Disaster Recovery für PostgreSQL

Zeitgleich mit PostgreSQL wurde die Disaster Recovery Barman veröffentlicht. Das Administrationswerkzeug ermöglicht die Sicherung und Wiederherstellung mehrerer Datenbank Server.

Neu an der Version 2.0 ist die Unterstützung für einen reinen Streaming-Modus.
Möglich wurde dies durch die Integration bzw. Unterstützung der pg_basebackup und pg_receivexlog Funktion.
Diese Neuerungen ermöglichen nun eine Datenbank Sicherung von Docker-Containern.

Die Installation läuft einfach ab, für eine korrekte Konfiguration sind ein paar mehr Schritte notwendig.

barman

Installation

Installation unter Ubuntu 14.04

sudo apt-get install python-argcomplete python-argh python-dateutil python-psycopg2
wget http://downloads.sourceforge.net/project/pgbarman/2.0/barman_2.0-1.wheezy%2B1_all.deb
sudo dpkg -i barman_2.0-1.wheezy%2B1_all.deb

Installation unter Ubuntu 16.04

sudo apt-get install python-argcomplete python-argh python-dateutil python-psycopg2
wget http://downloads.sourceforge.net/project/pgbarman/2.0/barman_2.0-1.xenial%2B1_all.deb
sudo dpkg -i barman_2.0-1.xenial%2B1_all.deb

Konfiguration Barman 2.0

Die Hauptkonfiguration erfolgt über die Dateien barman.conf und postgresql.conf.
Das die Einrichtung etwas komplexer ist und auf den gewünschten Sicherungstyp zugeschnitten werden muss, verweise ich schon hier auf die ausführliche Dokumentation mit Schritt für Schritt Anleitung.

barman

Beispielkonfiguration

Nutzer einrichten

sudo su postgres
createuser -W --replication streaming_barman

createuser -W --replication barman

Das vergebene Passwort und der Nutzernamen müssen nun in einem Connection File beim Barman Benutzer hinterlegt werden

sudo echo "dbserverip:5432:postgres:streaming_barman:passwort" > /home/streaming_barman/.pgpass
sudo echo "dbserverip:5432:postgres:barman:passwort" > /home/barman/.pgpass

Berechtigungen müssen ebenfalls gesetzt werden

sudo chmod 600 /home/barman/.pgpass && sudo chmod 600 /home/streaming_barman/.pgpass


Konfiguration PostgreSQL für Barmann

sed -i 's/#archive_mode = off/archive_mode = on/g' /etc/postgresql/9.6/main/postgresql.conf
sed -i 's/#wal_level = minimal/wal_level = replica/g' /etc/postgresql/9.6/main/postgresql.conf
sed -i 's/#archive_mode = off/archive_mode = on/g' /etc/postgresql/9.6/main/postgresql.conf
sed -i 's/#wal_level = minimal/wal_level = replica/g' /etc/postgresql/9.6/main/postgresql.conf
sed -i 's/#max_wal_senders = 0/max_wal_senders = 2/g' /etc/postgresql/9.6/main/postgresql.conf
sed -i 's/#max_replication_slots = 0/max_replication_slots = 2/g' /etc/postgresql/9.6/main/postgresql.conf

Einstellung in der barman.conf

[streaming]
description =  "DB Sicherung Streaming)"
conninfo = host=dbserverip user=barman dbname=postgres
streaming_conninfo = host=dbserverip user=streaming_barman
backup_method = postgres
streaming_archiver = on
slot_name = barman
retention_policy_mode = auto
retention_policy = RECOVERY WINDOW OF 7 days
wal_retention_policy = main

Test der Verbindung

sudo su barman
$ psql -U streaming_barman -h dbserverip -c "IDENTIFY_SYSTEM" replication=1

Password for user streaming_barman:
      systemid       | timeline |  xlogpos   | dbname
---------------------+----------+------------+--------
 6336160320851389899 |        1 | 0/370001B0 |
(1 row)

Hier ein Beispiel für die Konfiguration von SSH

sudo su barman
ssh-keygen -t rsa

sudo su postgres
ssh-keygen -t rsa

Test der Verbindung

ssh barman@dbserverip -C true
ssh postgres@dbserverip -C true

Wal Slot anlegen

sudo su barman
barman receive-wal --create-slot streaming

Das Archive Kommando muss noch in der postgresql.conf angepasst werden

sudo nano /etc/postgresql/9.6/main/postgresql.conf
archive_command = 'rsync -a %p barman@dbserverip:/var/lib/barman/pg/incoming/%f'

Test der Konfiguration

sudo su barman
barman switch-xlog --force pg

Ein Barman Funktionstest kann mit barman check durchgeführt werden

barman check streaming

Server streaming:
        WAL archive: FAILED (please make sure WAL shipping is setup)
        PostgreSQL: OK
        superuser: OK
        PostgreSQL streaming: OK
        wal_level: OK
        replication slot: OK
        directories: OK
        retention policy settings: OK
        backup maximum age: OK (no last_backup_maximum_age provided)
        compression settings: OK
        failed backups: OK (there are 0 failed backups)
        minimum redundancy requirements: OK (have 0 backups, expected at least 0)
        pg_basebackup: OK
        pg_basebackup compatible: OK
        pg_basebackup supports tablespaces mapping: OK
        pg_receivexlog: OK
        pg_receivexlog compatible: OK
        receive-wal running: OK
        archiver errors: OK
       

Manuell starten lässt sich ein Backup mit folgendem Befehl

sudo su barman
barman backup streaming

Starting backup using postgres method for server streaming in /var/lib/barman/streaming/base/20161002T214709
Backup start at xlog location: 0/39000060 (000000010000000000000039, 00000060)
Copying files.

Fazit

Trotz des etwas höherem Aufwands bei der Einrichtung des Sicherungstools barman, macht sich dieses spätestens beim nächsten Serverausfall bezahlt. Mit der Unterstützung für Docker Container arbeitet das Sicherungsprogramm am Puls der Zeit und hat somit sein dasein voll und ganz verdient.

Viel Erfolg