NFsec Logo

Podstawy skryptów shell #1

25/05/2017 w Bezpieczeństwo Możliwość komentowania Podstawy skryptów shell #1 została wyłączona

B

ezpieczeństwo, jeśli chodzi o pisanie skryptów shell bywa różne. Większość użytkowników skupia się zazwyczaj na rozwiązaniu napotkanego problemu programistycznego lub automatyzacji żmudnego zadania. Nie doprowadzanie w kodzie do luk umożliwiających późniejszą ich eksploatację schodzi na drugi plan. Dlatego w tej serii zostanie opisanych kilka typowych błędów popełnianych w skryptach shell oraz sposoby, w jaki można je wykorzystać i nim zapobiec.
[ czytaj całość… ]

Niektóre znaki zachęty mogą być podatne na wykonanie kodu

19/03/2017 w Bezpieczeństwo Możliwość komentowania Niektóre znaki zachęty mogą być podatne na wykonanie kodu została wyłączona

C

iekawe demo oraz słuszność swojego pomysłu przedstawił N.J. Hartwell. Pokazuje on, że niektóre znaki zachęty szczególnie te, którym dołożono wyświetlanie nazwy brancha git mogą być podatne na wykonanie dowolnego kodu. Można oszukać naszą, lokalną powłokę, aby wykonała polecenie lub skrypt, jeśli nazwiemy nasz branch na przykład tak: $(./skrypt.sh). Jak sprawdzić czy nasz prompt jest podatny? Wystarczy, że ściągniemy to repozytorium i wejdziemy do niego za pomocą polecenia cd. Jeśli prompt naszej powłoki niepoprawnie przeprowadzi interpretację zestawu znaków $(..) to wykona skrypt ./pw3n i wyświetli (na szczęście) tylko odpowiedni komunikat.

Uciekając z sudo – część pierwsza

18/08/2014 w Bezpieczeństwo Możliwość komentowania Uciekając z sudo – część pierwsza została wyłączona

S

udo jest narzędziem stosowanym w świecie systemów Unix i Linux do “bezpiecznego” ograniczenia dostępów do poleceń i plików wymagających praw administratora. Różni się tym od polecenia su -, że su daje natychmiastowy dostęp do konta root. Sudo natomiast pozwala na dostrojenie, które rzeczywiście polecenia mogą zostać uruchomione z wyższymi uprawnieniami. Problem z sudo jest taki, że nie jest ono w stanie przewidzieć / ograniczyć dalszych działań uprawnionych programów, ani upewnić się, że środowisko wokół tych programów nie posiada żadnych luk konfiguracyjnych, które mogą negatywnie wpłynąć na rozszerzenie nadanych praw.
[ czytaj całość… ]

Netcat shell zabezpieczony hasłem

19/06/2014 w Hacks & Scripts Możliwość komentowania Netcat shell zabezpieczony hasłem została wyłączona

Prosty skrypt autorstwa Vittorio Milazzo ukazujący sposób przyznania powłoki za pomocą netcat dopiero po podaniu hasła:

#!/bin/bash
ncpassword () {
NC="/bin/netcat"
PORT="999"
PASSWORD="123456"
SHELL="/bin/bash"

echo -n "Enter password: "

stty -echo
read  mypass
stty echo

if [ ${mypass} = $PASSWORD ]
  then
    echo "Access granted...start netcat shell on port $PORT"
    while true; do $NC -l -p $PORT -e $SHELL; done
  else
    echo "Incorrect Password"
fi
}

ncpassword
sh $0

Restrykcyjne powłoki – jak je obejść?

28/06/2009 w Magazyny Możliwość komentowania Restrykcyjne powłoki – jak je obejść? została wyłączona

A

dministratorzy, chcąc ograniczyć swobodę użytkowników systemu, decydują się na ustawienie restrykcyjnej powłoki, tak aby umożliwić wykonywanie tylko wybranych komend. Niestety, utworzenie w pełni restrykcyjnego środowiska nie jest rzeczą łatwą, a najdrobniejsze przeoczenie może zezwolić sprytnemu użytkownikowi na wydostanie się z pułapki.
[ czytaj całość… ]