БИБЛИЯ ХАКЕРА

Описание языка скриптов

Скрипты — это изюминка Login Hacker. Поэтому, если вы научи­тесь писать хорошие скрипты, то сможете взломать практически любую систему. Конечно это не относится к новичкам или тем хакерам, которые никогда не программировали даже на Бэйсике.

Скрипт должен пройти через компилятор, который проверяет его на вшивость. Поэтому вы можете быть уверены на 99%, что в процессе атаки не произойдет сбоя по вине плохого скрипта.

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

Все, что начинается с точки с запятой — комментарии. Все, что на­чинается с двоеточия — переход на следующую команду.

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

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

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

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

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

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

Все переменные являются необязательными. Исключение состав­ляют переменные logflle и phone_nr. Вы не можете определять какие-либо переменные, за исключением тех, которые описаны ниже.

LOG FILE=FILENAME

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

Например:

L0GFILE=C:UTPUTNY-SYS5.LOG PHONE_NR=NUMBER

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

Например:

PHONE JIR=1-800-WH0-CARES INIT_MODEM=STRING

Если ваш модем должен работать в режиме Dialing, то помес­тите перед телефонным номером аргумент Р. Если же ваш модем не мо­жет инициализировать строковые данные, поместите перед соответству­ющим телефонным номером команду AT (если эта команда отсутствует в Hacker Setup).

Например:

INIT_MODEM=Z

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

Инициализация каналов передачи данных, в том числе стоповых битов и битов четности. Переменная используется в том случае, если со­ответствующие параметры отсутствуют в Hacker Setup. В общем случае ар­гументами этой переменной являются наборы символов 8N1 и 7Е1, то есть аргумент всегда должен состоять из трех символов. Первый символ — это цифры 7 или 8, являющиеся битами данных. Второй символ может быть записан как Р (контроль по нечетности), Е (контроль по четности) или N (не контролировать биты данных). Третий символ соответствует ситуации, когда на первый стартовый бит налагается первый стоповый бит:

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

DIAL_TRIES=NUMBER

Эта переменная определяет количество попыток набора номера в диапазоне от 0 до 65535. Ноль соответствует бесконечному набору номе­ра.

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

Например:

DIAL_TRIES=3

Standard : 0

Важно: Если эта переменная отсутствует в скрипте, то будут исполь­зованы установки соответствующие файлу LOGINH. CFG.

LOGIN_TRIES=NUMBER

Эта переменная определяет количество попыток входа в систему в диапазоне от 0 до 2300000000. Ноль соответствует неограниченной попыт­ке зарегистрироваться. Если в файле словаря будет достигнут так называ­емый конец кадра (EOF), то скрипт автоматически повесит трубку и пре­кратит сессию. Время, в течение которого будет осуществляться подбор регистрационных данных зависит от команд прицепки DIC, NEXTDIC или им аналогичных для словаря Brute Force Generator.

Например:

LOGIN_TRIES=0

Standard : О

Важно: Если эта переменная отсутствует в скрипте, то в атаке будут использованы установки соответствующие файлу LOGINH. CFG.

DIC(NUMBER)=FILENAME

Определить словарь, который будет использован соответствующим скриптом. Аргумент DIC указывает на существующие файлы словарей. Вы можете прицепить к скрипту от одного до трех словарей. Используй­те для этого команды Send Next DIC (Г), Send DIC (1) и Next_DlC (1).

Например:

DICC1)=С:HACKINGDICTI0NA. RYBAD„PWS. DIC FROM_DIC(NUMBER)=STRING

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

Например: FR0M_DIC(1)=Тгасу

BRUTE(NUMBER)=STRING, NUMBER, NUMBER, NUMBER

Определить словарь Brute Force Generator для использования в скрипте. Brute Force Generator весьма гибок. Четыре параметра словаря Brute Force Generator разделены запятой. Ниже описывается приемлемая спецификация этих параметров.

1

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

# А — буквы верхнего регистра.

# 1 — цифры.

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

# А — так называемые контролируемые символы.

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

2

Этот параметр сообщает скрипту какое количество различных сим­волов, соответствующих параметру 1 необходимо этому скрипту.

Каждое сгенерированное слово соответствующее параметру 1 все­гда имеется в таком же слове соответствующим параметру 2. Символ верх­него регистра и один номер допустимы. Величина соответствующая нулю неприемлема.

3

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

(4)

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

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

Помните, что вы можете использовать в атаке до трех словарей Brute Force Generator. Используйте для этого великолепные команды привязки Next_Brute(l), Send__Next_Brute(l) и Send Brute(l).

Например: BRUTE(1)=а,1,1,6

В этом примере используется первый параметр Brute Force Gene­rator со следующими данными: проверять только символы нижнего реги­стра, предположить, что при подборе пароля в словаре присутствует хотя бы один действительный символ, минимальная длина регистрационного слова равна единице, максимальная — шести.

FROM_BRUTE(number)=STRING

Начать инициализацию со словарем Brute Force Generator. При этом важно следующее: если инициализация началась с четвертой буквы, а вы просматриваете диапазон от 1 до 8 буквы, то диапазон от 1 до 3 будет игнорироваться, то есть сначала идет подбор аааа, затем aaab, затем ааас и т. д.

Например:

FROM_BRUTE(1)=2527

Секция #NOCARRIER

Это будет выполняться всякий раз, когда вы не используете коман­ду HANGUP. Если в скрипте отсутствуют операторы GOTO (*START) или GOTO (1), то дальше он выполняться не будет. Это означает, что вы снова должны набрать модемный номер доступа к системе. Поэто! му про­верьте установки в DIAL_TRIES.

Секция #START

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

LOG(STRING)

Команда LOG() записывает в файл регистрации некоторую инфор­мацию. Это может быть любой текст, переменные, перед которыми все­гда должен стоять знак $ (знак доллара), а также пробелы между словами. В конец строки каждая команда LOG( ) автоматически печатает;возврат каретки.

Примеры:

LOG(Beginning on $DATE * $TIME)

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

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

LOG_(STRING)

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

:NUMBER

Каждая линия, начинающаяся с : (двоеточия) маркируется операто­ром GOTO. Вы можете использовать 240 маркировок в диапазоне от 1 до 240. Другие номера неприемлемы. Переход к нужному маркеру осуществ­ляется командами передачи управления GOTO, GOSUB, CHECK40UT - PUT и CHECK4CARRIER.

Например:

:1

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

GOTO(NUMBER)

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

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

GOSUB(NUMBER)

С командой подстановки GOSUB вы осуществляете переход к сле­дующей маркировке. Команда GOSUB, как правило исполняется уже по­сле перехода на следующий маркер, то есть в тот момент, когда команды GOSUB и RETURN столкнутся между собой. Обратите внимание, что вот такая команда невозможна: GOSUB(#END).

Например:

GOSUB(4)

RETURN

Это так называемая команда выхода из подпрограммы. Используя эту команду вы можете возвратиться к местоположению последней вы­полненной команды GOSUB и продолжить обычное выполнение скрип­та. Если в буферном регистре команда RETURN сталкивается с несуще­ствующим начальным адресом GOSUB, то она будет игнорироваться. В одном буферном регистре вы можете иметь до 255 подстановок GOSUB.

Например:

RETURN

CHECK4CARRIER(NUMBER)

Проверка модема на соединение с линией, то есть проверка на не­сущую частоту. Команда будет выполняться в случае отсутствия перехода к указанной маркировке (переход соответствует команде GOTO). Если переход обнаружен, то устанавливается внутреннее соединение с пере­менной TRUE для проверки на NO_CARRIERS. Вы можете также осуще­ствлять процедуры перехода к *NOCARRIER, *STARTи *END. Также воз­можно осуществить проверку модема только на ON или OFF. Если команда CHECK4CARRIER(ON) выполнена с переходом к маркеру, отме­чающему обнаружение линии, и, если представлен NOT, то управление передается на *NoCarrier. Эта команда полезна только в том случае, ког­да вы оказываетесь на и не хотите использовать команду DIAL, чтобы соединиться с удаленной системой (позвольте на­брать номер SCAVENGER DIALER).

Примеры:

CHECK4CARRIER(#N0CARRIER)

CHECK4CARRIER(5) CHECK4CARRIER(ON) CHECK4CARRIER(OFF) CHECK40UTPUT(NUMBER)

Это будет выполнено подобно нижеописанной функции alarm:. Если выходной сигнал (OUTPUT) модема обнаружен, то переходщ будут осуществляться непосредственно к указанной маркировке. Вы можете также передать управление к *nocarrier, *start и *end. Также воз­можно отключить проверку на OFF, то есть заблокировать указанную проверку выходного сигнала.

Например:

CHECK4CARRIER(#N0CARRIER) CHECK4CARRIER(5)

CHECK4CARRIER(OFF)

DIAL

Набор номера PHONE_NR. Если с системой нет соединения, то сначала в модем будет послана команда: «Повесить трубку!»

Например: DIAL

Hangup

Поднять и опустить трубку. Например:

HANGUP

Wait4string(number, string, number, command, string)

В представленном здесь языке скриптов это самая важная После ее выполнения выходной сигнал модема будет находиться состо­янии ожидания. В этот момент должна начаться загрузка специального слова. Если стыковка осуществлена, то скрипт продолжается, если — нет, то после тайм-аута в модем будет отправлена заданная последователь­ность, затем — вновь тайм-аут и, наконец, идет выполнение команды.

Важно: Сначала команда WAIT4STRING проверяет текущую стро­ку с представленным словом. Синтаксис: WAIT4STRING(a, b,c, d,e).

А

Определить тайм-аут в диапазоне от 0 до 255 секунд. Ноль соответ­ствует неограниченному ожиданию, то есть ждать до тех пор пока не на­ступит так называемый TOTAL TIMEOUT (скрипт переходит в секцию #NOCARRIER в том случае, если данные не поступают из модема в тече­ние пяти минут). Если ничего не получено, то последовательность в по­токе данных распознается снова, или в какой-то момент несущая частота объявляется потерянной.

Ь

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

С

Частота отказов или количество общего времени, в течение которо­го может выполняться фатальная команда. Диапазон: от 0 до 255 (0=ни - когда, 1=первыйраз).

D

Выполнение специальной фатальной команды. Это могут быть лю­бые команды, исключая: ALARM, WAIT4STRING и IF.

Е

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

Например:

WAIT4STRING(15, ~М, 2, G0T0(1), ogin:)

В этом примере происходит ожидание последовательности ogin: в течение 15 секунд. Если стыковка не получилась, а каретка возвращается в модем (АМ), то команда снова ждет 15 секунд, пока вновь не наладится стыковка с последовательностью данных ogin:.

Как только истекут следующие 15 секунд, вызывается фатальная команда, что означает переход к GOTO с меткой под номером 1.

Log_session_on

Начиная с этого пункта, все данные поступающие из модема запи­сываются в файл регистрации.

Например:

LOG_SESSION_ON

Log_session_off

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

Например: LOG. SESSIONOFF

Например:

SEND_BRUTE(1)

Next_brute(number)

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

Например:

NEXT_BRUTE(1)

IF VARIABLE OPERATOR STRING THEN COMMAND

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

IF <variable><operatorxstring> THEN <command> <variable>

<operator>

Означает равносильность при аргументе =, больше или меньше при аргументах < или > соответственно и переменную содержащую любую по­следовательность слов при аргументе Переменные и последовательно - сти должны быть дискретными переменными.

<command>

Эта команда выполнится в том случае, если будет соблюдено усло­вие TRUE. Чтобы ее использовать, просмотрите список команд для опе­ратора wait4string.

Например:

IF STRING~ogin THEN GOTO(3)

To есть, если текущая строка (STRING), содержит дискретную (~) последовательность данных ogin, то идти (GOTO) к маркеру с номером 3.

EXECUTE(STRING)

Выполнить DOS-программу, а затем запустить скрипт. Вы должны включить переменные в выполняемую строку. Вы также должны выпол­нить соответствующие внутренние команды MS DOS. Помните, что пе­ред переменной может стоять знак $ с возможными пробелами позади и впереди самого знака.

Важно: Если вы хотите запустить программу в то время, когда по ва­шему скрипту осуществлено соединение, то вы должны использовать драйвер fossil. В противном случае ваш компьютер зависнет. Поэтому за­пустите ХОО. ЕХЕ Е 2 перед выполнением программы Login Hacker.

Важно: Чтобы ваша программа не была повреждена, предваритель­но сохраните ее в каталоге отличным от исходного.

SEND(STRING)

Команда 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

SENDJ)

Эта команда аналогична вышеописанной, но она не посылает в мо­дем символ возврата каретки АМ. Ее можно использовать, если вам нуж­но загрузить в модем только один символ или командный режим +++.

Примеры:

SEND_(n)

SEND_(+++)

SEND_DIC(NUMBER)

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

Например:

SEND_DIC(1)

NEXTDIC(NUMBER)

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

Например:

NEXT_DIC(1)

SEND_NEXTJBRUTE(NUMBER)

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

Например:

SEND_NEXT„BRUTE(1)

SEND_BRUTE(NUMBER)

Переслать в модем текущую последовательность допустимых дан­ных из словаря Brute Force Generator.

Примеры:

EXECUTE(C:SBVPLAY C:SBVOCHACKED. VOC)

EXECUTE(COPY $ LOG FILE C:HACKED)

ALARM(STRING, COMMAND)

Опасно нажимать на спусковой крючок! Если на удаленном ком­пьютере сработала система защиты, то вы будете активны до тех пор, по­ка не выполниться эта команда.

STRING

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

COMMAND

Эта команда будет выполнена после стыковки. Чтобы ее использо­вать, просмотрите листинг команд для WAIT4STRING. Примените эту ко­манду в том случае, например, если вы взломали BBS, а сисоп вас раску­сил и задает глупые вопросы. После этой команды вы автоматически прервете соединение и остановите выполнение скрипта.

Например:

ALARM(chat, GOTO(#END))

SET VARIABLE=STRING

Этой командой вы определяете переменную в секции #START или #NOCARRIER. Если переменная является статической переменной, то вы должны это отметить. Вы должны устанавливать только следующие пере­менные: STRING, DIALTRIED, LOGIN_TRIED, S_TMPh D_TMP.

Например:

SET D_TMP=3

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

INC(DIGIT_VARIABLE)

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

Имеют силу следующие команды: DIAL. TRIES DIALJTRIED LOGIN_TRIES LOGINJTRIED

• DTMP.

Например:

INC(D_TMP)

DEC(DIGIT_VARIABLE)

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

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

DIAL_TRIES

Dial_tried

• logintries

Login_tried

• D_TMP.

Например:

DEC(D_TMP)

WAIT(NUMBER)

Ожидать до тех пор, пока идут секунды определенные аргументом NUMBER. Аргумент NUMBER соответствует любому числу в диапазоне от 1 до 65535.

Например:

WAIT(10) (десять секунд)

WAITJNUMBER)

Ожидать до тех пор, пока идут миллисекунды, определенные аргу­ментом NUMBER. Аргумент NUMBER соответствует любому числу в ди­апазоне от 1 до 65535.

Например:

WAIT(500) (полсекунды)

ВЕЕР

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

БИБЛИЯ ХАКЕРА

Эта заподлистая кнопка power — как отключить?

На клавиатуре есть кнопка - у меня под делетом сразу, power называется - соответственно значок "яблоко с прямым хвостиком"... Какого гондураса её не разместили где-нибудь в другом месте да подальше …

Безопасность

Так уж устроен мир, что любое техническое изобретение человече­ского разума, расширяющее наши возможности и создающее для нас до­полнительный комфорт, неизбежно содержит в себе и отрицательные стороны, которые могут представлять потенциальную …

Прямой (кривой номер), АОН, БП и переадресация Прямые и кривые номера

Номера сотовых телефонов могут быть прямыми и кривыми. Пря­мые — это обычные городские семизначные (в Москве) номера, кривые (или федеральные) — набирать через коды 901, 902, 903, 501 или другие, …

Как с нами связаться:

Украина:
г.Александрия
тел./факс +38 05235  77193 Бухгалтерия

+38 050 457 13 30 — Рашид - продажи новинок
e-mail: msd@msd.com.ua
Схема проезда к производственному офису:
Схема проезда к МСД

Партнеры МСД

Контакты для заказов оборудования:

Внимание! На этом сайте большинство материалов - техническая литература в помощь предпринимателю. Так же большинство производственного оборудования сегодня не актуально. Уточнить можно по почте: Эл. почта: msd@msd.com.ua

+38 050 512 1194 Александр
- телефон для консультаций и заказов спец.оборудования, дробилок, уловителей, дражираторов, гереторных насосов и инженерных решений.