Lua – lekki język skryptowy

Lua jest lekkim językiem skryptowym, którego głównym przeznaczeniem jest osadzanie w innych programach celem rozszerzenia ich możliwości. Taki cel przyświecał autorom podczas tworzenia wersji 1.0 tego języka w 1993 roku. Obecnie, głównie dzięki małemu rozmiarowi i prostocie, Lua znalazło zastosowanie także jako język do tworzenia dynamicznych stron WWW (framework Kepler) oraz jako język skryptowy ogólnego przeznaczenia. Co ciekawe, istnieje projekt, którego celem jest przeportowanie Lua na mikrokontrolery!

 

Blokujemy najczęstsze źródła ataków według ISC SANS

Internet Strom Center (ISC) jest programem Technologicznego Instytutu SANS (skrót od: SysAdmin, Audit, Networking, and Security), który ma za zadanie monitorowanie poziomu szkodliwych aktywności w Internecie – zwłaszcza w odniesieniu do zdarzeń mających miejsce w dużych infrastrukturach (poziom zagrożenia sygnalizowany jest odpowiednimi kolorami – zielony, żółty, pomarańczowy, czerwony).

Poniżej znajduje się trochę przerobiony skrypt autorstwa Alessio Rocchi, który pobiera dane z raportu o źródłach ataku oraz blokuje je przy użyciu iptables na zaporze systemu:

#!/bin/sh

IPT="/usr/sbin/iptables"
IPTS="/usr/sbin/iptables-save"
FILE="/tmp/firewall.txt"

function isclist {
wget http://isc.sans.org/sources.html -O /tmp/sources.html --quiet
if [ $? -ne 0 ]
then
        echo "Błąd pobierania pliku."
        exit 1
fi
for bad_guy in $(grep ipinfo /tmp/sources.html |sed -e "s/.*ip=(.*)">.*/1/g" | sed -e 's/^[0]*//' -e 's/.[0]*/./g')
do
        $IPT -A ISC -s $bad_guy -j DROP
done
rm /tmp/sources.html*
}

$IPTS > $FILE
CHAIN=`cat $FILE | grep ISC | wc -l`

if [ $CHAIN -eq "0" ]; then
    echo "Łańcuch ISC nie istnieje."
    $IPT -N ISC
    $IPT -I INPUT -j ISC
    isclist
else
    echo "Łańcuch ISC istnieje."
    $IPT -F ISC
    isclist
fi

rm $FILE
exit 0

Jeśli interesuje nas dłuższa lista źródłowych adresów IP – to możemy wykorzystać link generujący ją w formacie ASCII. W tym przypadku należy odpowiednio przebudować skrypt w miejscu pobierania i parsowania danych. Podobnie jak w przypadku wpisów z serwisu Spamhaus – tak prosty skrypt możemy umieścić np. w katalogu /etc/cron.daily/, aby nasze wpisy były aktualizowane raz na dzień.