Od luki do wytrycha – narzędzia skryptowe ułatwiające zarządzanie podatnościami systemów

Informacje o podatnościach, czyli lukach w bezpieczeństwie systemów informatycznych, stanowią – a przynajmniej tak powinno być – treść porannej, obowiązkowej lektury i jednocześnie stały rytuał każdego „bezpiecznika”. Tego typu

vulninformacji można rzecz jasna szukać bezpośrednio, przy pomocy przeglądarki weboewej, w specjalistycznych serwisach internetowych, choćby na stronie cve.mitre.org, lecz nie zawsze jest to wygodne. Jeśli chcemy kierować do bazy danych zaawansowane zapytania, a nie tylko pytać o proste dopasowania do wzorców łańcuchów znakowych, to na pewno przyda nam się lokalna baza danych o podatnościach i trochę skryptowych narzędzi, które operując na tej bazie – jak zwykle – uczynią nasze życie lżejszym. Warto mieć do dyspozycji tego rodzaju narzędzia funkcjonujące w trybie off-line także wtedy, gdy nie posiadamy dostępu do Internetu, choć w dzisiejszych czasach taka sytuacja zyskuje wymiar niemal katastrofy😉.

Read more of this post

Pomiar rzeczywistej przepustowości łącza internetowego – narzędzia skryptowe

speed_testPomiar rzeczywistej przepustowości łączy do Internetu przydaje się nie tylko wtedy, gdy chcemy wygrać spór z nieuczciwym dostawcą usług dostępowych. Może przydać się również – a może przede wszystkim – w bardziej pokojowych okolicznościach, na przykład do szeroko pojętej diagnostyki problemów w sieci. Możemy przykładowo badać „wąskie gardła” sieci, identyfikując problemy z przepustowością i czasem odpowiedzi.

Narzędzie, które opracowałem bazuje na oprogramowaniu speedtest, które trzeba zainstalować na komputerze z interpreterem języka Python. Można to uczynić poleceniem:

pip install speedtest

Należy również doinstalować w analogiczny sposób wszystkie niestandardowe moduły przywoływane w kodzie skryptu dyrektywami import, a wśród nich na pewno ‚optparse‚ (do kontroli składni i obsługi parametrów wywołania skryptu) oraz ‚xlwt‚ (do tworzenia i zapisywania danych do arkuszy kalkulacyjnych Excela, nawet jeśli Excelem nie dysponujemy) oraz ‚sched‚ (implementujący funkcje schedulera). Read more of this post

Standaryzacja konfiguracji urządzeń sieciowych Cisco – narzędzia skryptowe

cisco_routersW kolejnym kroku po audycie, być może wystąpi potrzeba standaryzacji konfiguracji, w ramach której będziemy chcieli sprawnie wdrożyć zmiany wynikające z zaleceń audytowych.

Z całą pewnością pomocne okażą się narzędzia skryptowe, które generowanie plików konfiguracyjnych mogą uczynić procesem automatycznym lub semi-automatycznym, a na pewno znacznie mniej czasochłonnym i dużo prostszym do wykonania.

Posłużymy się językiem Python i biblioteką ‚ciscoconfparse‚. O tym jak ją zainstalować i jak z niej skorzystać napisałem w poprzednim artykule: https://janusznawrat.wordpress.com/2015/10/24/audyt-konfiguracji-urzadzen-sieciowych-z-systemem-cisco-ios-narzedzia-skryptowe/.

W przypadku audytu konfiguracji, rzecz jasna, istniała potrzeba dostępu do plików konfiguracyjnych jedynie w trybie do odczytu i na takiej właśnie funkcjonalności blokowego czytania hierarchicznej konfiguracji urządzeń wówczas skupiliśmy się.

Natomiast w przypadku standaryzacji konfiguracji, potrzebujemy czegoś więcej – zmian w plikach konfiguracyjnych, takich jak chociażby wstawianie, podmiana i usuwanie linii czy bloków konfiguracji.

Read more of this post

Audyt konfiguracji urządzeń sieciowych z systemem Cisco IOS – narzędzia skryptowe

pentestAudyt sieci bywa czasem przedsięwzięciem żmudnym i długotrwałym. Jednym z elementów takiego audytu jest przegląd konfiguracji urządzeń sieciowych. Nie stanowi problemu manualne przeglądnięcie ustawień kilku czy nawet kilkunastu urządzeń, natomiast wzrost skali do stu lub tym bardziej kilkuset urządzeń czyni zadanie praktycznie niemożliwym do wykonania w rozsądnym czasie bez pomocy narzędzi automatyzujących ten proces.

Chcąc z pliku konfiguracyjnego wyekstrahować te fragmenty konfiguracji, które odnoszą się do badanej w ramach audytu funkcjonalności (na przykład bezpieczeństwa, routingu, jakości usług itp.), możemy posłużyć się różnymi narzędziami, spośród których ‚grep’ z zastosowaniem wyrażeń regularnych wydaje się być najprostszy, ale bynajmniej nie najlepszy. Grep pozwala na przetwarzanie pliku wiersz po wierszu, a to czasem nie wystarcza. Nie wystarcza mianowicie wtedy, gdy wymagana jest implementacja jakiejś logiki przetwarzania, a nie tylko proste wyszukiwanie informacji. Nie wystarcza także wtedy, gdy informacje trzeba przetwarzać blokami, a nie wierszami.

Read more of this post

Narzędzia Net Admina: Nie masz serwera FTP – napisz go sobie sam

ftpservericonKolejne ćwiczenie polega na opracowaniu i uruchomieniu serwera FTP. Rzecz to praktyczna, bo przy pomocy usługi FTP można na przykład szybko i sprawnie zapisać kopie zapasowe konfiguracji urządzeń sieciowych w jakimś repozytorium w systemie plików serwera. Własny serwer FTP przydaje się wtedy, gdy nie ma pod ręką gotowego rozwiązania. W takiej sytuacji, jak zwykle z nieodzowną pomocą przychodzi Python. Przy jego pomocy, pisząc zaledwie i dosłownie kilka wierszy kodu źródłowego, możemy mieć w pełni funkcjonalne rozwiązanie działające dosłownie na każdym urządzeniu, łącznie z tabletem czy smartfonem.

Tego typu rozwiązania okazują się przydatne także wtedy, gdy w trakcie przeprowadzania testów penetracyjnych, trzeba w fazie poeksploatacyjnej wstrzyknąć do zaatakowanego hosta kod serwera, by móc stamtąd wyprowadzić większy wolumen danych.

Read more of this post

Narzędzia Net Admina: Nie masz TFTP-a – napisz go sobie sam

Protokół TFTP jest wykorzystywany na bardzo szeroką skalę w zarządzaniu urządzeniami infrastruktury sieciowej. Służy na przykład do ładowania systemu operacyjnego oraz inicjalizacji urządzeń aktywnych, w tym routerów i przełączników, przez sieć. Może też służyć do zapisywania i pobierania kopii zapasowych konfiguracji z centralnego repozytorium.

Przeważnie aTFTP-Serverktywne urządzenia sieciowe mogą działać w trybie klienta protokołu TFTP, choć na niektórych z nich da się również uruchamiać funkcje serwera. Tym niemniej znacznie wygodniej jest posiadać serwer na komputerze, na przykład na swoim laptopie wykorzystywanym także jako konsola przy wykonywaniu różnego rodzaju prac związanych z konfiguracją urządzeń. Wygodę takiego rozwiązania na pewno potwierdzi każdy administrator lub instalator urządzeń sieciowych.

Jeśli jednak na tym właśnie komputerze brak gotowego serwera TFTP, to absolutnie nic nie stoi na przeszkodzie, żeby w kilka minut napisać swoje własne rozwiązanie. Wystarczy posiadać interpreter Pythona oraz bibliotekę ‘tftpy’. Oczywiście rozwiązanie, o którym mowa  jest kompletnie bezkosztowe, a na dodatek kod skryptu pozostaje niezależny od systemu operacyjnego – można go bez modyfikacji uruchamiać dosłownie na wszystkich Winsows-ach, na Mac-u i w wszelkiego rodzaju Unix-ach.

Read more of this post

Narzędzia Net Admina: Nie masz SYSLOG-a – napisz go sobie sam

Tym artykułem rozpoczynam cykl „Net Admin Tools – nie masz narzędzi, to stwórz je sobie sam”.

W cyklu tym planuję pokazać, jak w niezwykle prosty sposób i na dodatek w praktycznie błyskawicznym tempie napisać w języku Python kod serwera i klienta Syslog-a, serwera i klienta TFTP, jak skryptowo oprogramować tunelowanie SSH, by zabezpieczyć nieszyfrowaną transmisję danych przez sieć, czy też jak napisać własnego Netcata.

Log managementTematem na dziś jest Syslog – rzecz bez wątpienia niezbędna każdemu administratorowi sieci do przetwarzania logów generowanych przez urządzenia infrastruktury sieciowej i urządzania systemów zabezpieczeń sieci.

To prawda, że nic nie stoi na przeszkodzie, by skorzystać z gotowych narzędzi i na komputerze z Linuxem lub z innym systemem z rodziny Unix uruchomić systemowego Syslog-a. Dla systemów Windows też istnieją gotowe programy tego rodzaju. Jednak możemy po pierwsze nie mieć takowych narzędzi pod ręką, a po drugie – omija nas doskonała okazja, by nauczyć się sprawnie programować interfejsy gniazd sieciowych (network sockets). Wreszcie, mając własne narzędzia można logowanie uczynić bardziej przyjazne dla dalszego przetwarzania, czy to skryptowego, czy też w narzędziach klasy SIEM.

Z ciekawostek dodam w tym miejscu, że z braku innych możliwości zdarzyło mi się kiedyś napisać i uruchomić serwer Syslog-a na… tablecie🙂.

Read more of this post

TOMASZ WEŁNA

artysta grafik | wykładowca

PRACOWNIA OKO

Szkoła Rysunku Malarstwa i Grafiki DR TOMASZA WEŁNY | KRAKÓW | Plac Matejki 10 | tel 691 81 75 74

Piękno neurobiologii

Blog Jerzego Vetulaniego

Teoria muzyki, zasady muzyki, podstawy muzyki

Teoria muzyki, zasady muzyki, podstawy muzyki - czyli to co każdy amator muzyki wiedzieć powinien :)

Personal Development & Inspirations

Przemyślenia i refleksje, którymi warto się podzielić (blog by Janusz Nawrat)

Business IT Cooperation Platform

Biznes i IT - dwa światy, które muszą współdziałać