IPB

Здравствуйте, гость ( Вход | Регистрация )

> Dark side of Programming, PureBASIC
Guevara-chan
сообщение 24 Dec 2006, 19:50 (Сообщение отредактировал Chrono Syndrome - 27 Dec 2006, 11:39)
Сообщение #1

•●Revolucionario●•
Сообщений: 2 467
Спасибо сказали: 5936 раз




Традиционно считается, что программирование - созидеательный процесс. И верно. Но есть одно такое интересное "но"... В криво переведенном WarZone 2100 было такое понятие: 'разрушительная структура'. Такие вещи возможны и в программировании... Да, именно так: я (и не только я, чужие статьи только приветствуются !) буду учить вас здесь написанию т.н. "вредоносного кода". Вирусы, трояны, черви, шпионы, все они попадают под это емкое опредение.

Что же, давайте перейдем к делу. Для всех примеров, если не указанно иного, вам потребуется PureBASIC v4.0 (качаем здесь:

http://forum.df2.ru/index.php?showtopic=2851), лучший, ИМХО, из существующих на сегодняшний день ЯВУ. Так же будем совсем не лишним хотя бы минимальное умение на нем писать wink.gif .

Итак, УРОК ПЕРВЫЙ:
Допустим вам хочется подшутить над другом\подругой. Подшутить беззлобно, без потери данных, порчи железа и т.п. вещей. Хочется ? Я помогу smile.gif . Предлагаю поменять местами сигнал от конопок мыши (т.е., чтобы левый клик считался как правый, и наоборот). А потом, через случайный промежуток времени, вернуть все как было. А потом опять поменять... И так до бесконечности wink.gif .

Короче говоря, открываем PureBASIC IDE, и вписываем туда следующий код:

Код
Define FSwap = -1
Repeat : SwapMouseButton_(FSwap)
FSwap = ~FSwap
Delay((Random(4) + 1) * 100)
ForEver

Код примитивнейший, поэтому пояснять ничего не буду, замечу лишь, что API SwapMouseButon, цитирую:

Цитата
reverses or restores the meaning of the left and right mouse buttons.

BOOL SwapMouseButton(

    BOOL fSwap  // reverse or restore buttons
   );


Parameters

fSwap

Specifies whether the mouse button meanings are reversed or restored. If this parameter is TRUE, the left button generates right-button messages and the right button generates left-button messages. If this parameter is FALSE, the buttons are restored to their original meanings.

После этого компилируем прогу, и потихоньку кидаем .EXE'шник (более продвинутые варианты рассмотрим в следующих уроках wink.gif ) жертве в "Автозагрузку". Все, HAVE FUN spiteful.gif . Самое смешное, что многие люди сначала начинают грешить на мышь, и лишь потом до них доходит, что не все-то так просто spiteful.gif ...

Ладно, хватит для начала. Да, кстати, если статья вам понравилась, то можете, не стесняясь, поставить мне плюсик wink.gif .

To be continued...


--------------------
life MOV.I #life+1, *life
האם יש זמן לעצור ?
Go to the top of the pageAdd Nick
 
+Quote Post
 
Start new topic
Ответов
Avaddon
сообщение 26 Dec 2006, 02:54 (Сообщение отредактировал Avaddon - 26 Dec 2006, 02:55)
Сообщение #2

Ангел
Сообщений: 450
Спасибо сказали: 4 раза




Я по пакостям не специалист(дружеский кивок в сторону Chrono Syndrome),
но про серийник рассказать попробую.
Подбирать его достаточно гиблое занятие, иногда удается сделать проще rolleyes.gif

Есть такая замечательная софтина, называется Olly Debugger. Я, конечно же,
не претендую на то, что это высшй класс, но лично меня не раз выручала.
Особенно в игрушках. Так вот! По своей сути эта штука является дизассемблером. Причем в ней есть очень и очень грамотный момент: по количеству и качеству параметров она распознает вызовы WinAPI-функций wub.gif При такой поддержке хватает минимальных знаний ассемблера, чтобы найти тот самый заветный jnc или jnz ну и т.д. spiteful.gif
Для тех, кто не знает: jnc, jnz - это команды условного перехода. Действуют по принципу if ... then...goto. Как говорится, "Когда пошел бы я налево, весь мир бы был другим" rolleyes.gif Иногда(но далеко не всегда!) этого хватает yes.gif Переключить выполнение сценария программы по типу:
"Если серийник гадский, то все хорошо" shum_lol.gif
Но это, ребята, ПРОСТЕЙШИЙ случай. Если кто разбирается в криптографии,
он может рассказать про взлом серийников точнее nunu.gif
Иногда серийник может являться ключом к расшифровке части программного кода или ряда библиотек, и тогда надо долго анализировать кодирующую/декодирующую часть программы. В том же дизассемблере spiteful.gif


--------------------
Смерть - не конец, жизнь - не начало...
Go to the top of the pageAdd Nick
 
+Quote Post

Сообщений в этой теме
- Chrono Syndrome   Dark side of Programming   24 Dec 2006, 19:50
- - Bourn   вопросик прога делает это программно через хук? то...   24 Dec 2006, 20:52
- - Chrono Syndrome   Цитатавопросик прога делает это программно через х...   24 Dec 2006, 21:44
- - Vikky   эх, когда деревья были большими, а колбаса вкусной...   25 Dec 2006, 16:10
- - gamecreator   и каково же обьяснение этому? почему так происходи...   25 Dec 2006, 16:18
|- - Vikky   Цитата(gamecreator @ 25 Dec 2006, 17:18)и как...   25 Dec 2006, 16:27
- - Chrono Syndrome   Итак, я думаю настало время приподать вам Урок №2 ...   25 Dec 2006, 17:14
- - izrukvruki   Я бы поставил, но пока не могу, т.к. недавно плюсо...   25 Dec 2006, 17:39
- - gamecreator   ручками. берешь и перебираешь все варианты правда ...   25 Dec 2006, 17:48
- - Chrono Syndrome   ЦитатаХотелось бы узнать если программа провсит вв...   25 Dec 2006, 18:41
- - Avaddon   Я по пакостям не специалист(дружеский кивок в стор...   26 Dec 2006, 02:54
|- - gamecreator   Цитата(Avaddon @ 26 Dec 2006, 02:54)Если кто ...   26 Dec 2006, 11:35
- - Bourn   главное чтоб серийник не генерился по алгоритму за...   26 Dec 2006, 08:26
- - Chrono Syndrome   Цитата1)сколька прога эта будет весить? 6 656 байт...   26 Dec 2006, 10:06
- - Bourn   2 Chrono Syndrome У VC размер 2,5кб 2 gamecreator ...   26 Dec 2006, 17:20
- - izrukvruki   А как работают программки генерации серийников   26 Dec 2006, 17:52
- - Bourn   нет определенных инструкций по их работе но они м...   26 Dec 2006, 19:11
- - Chrono Syndrome   ЦитатаУ VC размер 2,5кб Да ? Ну, бывает ...   27 Dec 2006, 10:29
- - Chrono Syndrome   Вне занятий: Пока писала 3ий урок, впомнила один п...   27 Dec 2006, 15:58
|- - Irh   Цитата(Chrono Syndrome @ 27 Dec 2006, 16:58)В...   29 Dec 2006, 11:02
- - Paladin   ЦитатаПопробуйте запустить, вас ждут незабываемые ...   28 Dec 2006, 20:06
- - Chrono Syndrome   Procedure Lesson3() На прошлом занятии я рассказал...   28 Dec 2006, 21:18
- - Bourn   2 Paladin 2006 запусти эту прогу , сразу говорю он...   28 Dec 2006, 23:36
- - Chrono Syndrome   ЦитатаВообще достаточно непонятно, почему в Window...   29 Dec 2006, 11:09
- - Paladin   Цитата2 Paladin 2006 запусти эту прогу , сразу гов...   29 Dec 2006, 12:10
|- - Bourn   Цитата(Paladin 2006 @ 29 Dec 2006, 12:10)А мо...   30 Dec 2006, 00:43
- - Chrono Syndrome   Alternative Joiner (дополнение к 3ему уроку): У оп...   29 Dec 2006, 12:45
- - Chrono Syndrome   Убить Винду одной процедурой... КодRunProgram...   29 Dec 2006, 13:16
- - Chrono Syndrome   Пьяная, пьяная мишь... © КодDefine X, Y, X1, Y1, ...   29 Dec 2006, 13:57
- - Paladin   Токо не включайте два раза подряд. А то она упадет...   29 Dec 2006, 14:02
- - Berserker   Только такие приколы не всегда проходят. Паладин, ...   30 Dec 2006, 14:35
- - sergroj   Цитата(Chrono Syndrome @ 27 Dec 2006, 19:58)В...   30 Dec 2006, 15:55
- - Рогатый Змий   А как джаве?   30 Dec 2006, 16:09
- - Chrono Syndrome   Mix обоих мышиных приколов: КодGlobal FSwap = -1,...   31 Dec 2006, 11:53
- - Chrono Syndrome   Развлекаемся с клавой... Небольшая, но прикольная ...   11 Jan 2007, 20:14
- - gamecreator   вообще-то она повторяет нажатие буквы каждые 15 се...   11 Jan 2007, 20:32
- - Chrono Syndrome   Цитатавообще-то она повторяет нажатие буквы каждые...   11 Jan 2007, 20:58
- - gamecreator   а че такое #A, #Z, #Seconds? как раз только одной ...   11 Jan 2007, 22:21
- - Ennin   но так же забавнее   12 Jan 2007, 00:25
- - gamecreator   хы. а потом прога вылетит   12 Jan 2007, 01:27
- - Chrono Syndrome   Цитатаа че такое #A, #Z, #Seconds? Константы. Цит...   12 Jan 2007, 17:13
- - Chrono Syndrome   2gamecreator Так, все, кажеться до меня дошло, что...   12 Jan 2007, 17:39
- - gamecreator   да. и рано или поздно память закончится и прога вы...   14 Jan 2007, 09:54
- - Bourn   2 gamecreator а допустим в процедуре (покажу на пр...   14 Jan 2007, 12:16
- - gamecreator   ну я так понял что это цикл в одной функции.   14 Jan 2007, 12:21
- - Bourn   это и есть цикл в одной ф-и, вроде...   14 Jan 2007, 15:31
- - gamecreator   так обьявление переменной внутри цикла   14 Jan 2007, 16:57
- - Bourn   какая разница что ты запишешь объявление переменно...   14 Jan 2007, 18:44
- - gamecreator   никакой. но если обьявить переменную в функции и з...   14 Jan 2007, 18:54
- - Chrono Syndrome   Цитатаникакой. но если обьявить переменную в функц...   14 Jan 2007, 19:09
- - gamecreator   потому что в 1-м и 2-м случаях переменная обьявитс...   14 Jan 2007, 19:40
- - Bourn   с чего ты взял что она будет удаляться? или ты опр...   14 Jan 2007, 19:45
- - gamecreator   ну обычно память под локальные переменные освобожд...   14 Jan 2007, 20:12
- - Darth_Beleg   Память под локальные (автоматические) переменные в...   15 Jan 2007, 23:36
- - Chrono Syndrome   В PureBASIC ситуация обстоит немного по-другому: п...   16 Jan 2007, 11:28
- - Darth_Beleg   Чем меньше область видимости переменной - тем мень...   17 Jan 2007, 08:21
- - sergroj   Только на самом деле переменная вообще создастся н...   07 Feb 2007, 16:59
- - Chrono Syndrome   ЦитатаА если так: Тоже самое.   08 Feb 2007, 16:02
- - sergroj   Криво. В двух модулях переменные с одинаковым имен...   09 Feb 2007, 00:39
|- - Chrono Syndrome   ЦитатаКриво. Меня устраивает. Цитата(sergroj ...   09 Feb 2007, 12:09
- - Chrono Syndrome   ...Прочитала на днях описание семейства вирусов ...   23 Aug 2009, 20:03
- - gamecreator   вот и преимущество FAT   23 Aug 2009, 21:55
|- - nLc   Цитата(gamecreator @ 23 Aug 2009, 21:55)вот и...   25 Aug 2009, 17:41
- - Guevara-chan   Ну вот, кажется время пришло: http://www.eset.eu/e...   03 Jan 2011, 15:46
- - tolich   Он на Мурр-Барсике (Purr-Barsik)?   03 Jan 2011, 15:51
|- - Guevara-chan   Цитата(tolich @ 03 Jan 2011, 15:51) Он на...   03 Jan 2011, 16:02
- - Guevara-chan   http://www.sunbeltsoftware.com/About/Secur...easin...   04 Jan 2011, 14:19
- - gamecreator   судя по описанию по самой первой ссылке - вирус фи...   04 Jan 2011, 15:09
- - Guevara-chan   Именно поэтому я дала еще 4 - для уточнения.   04 Jan 2011, 16:14
- - gamecreator   по третьей - все равно фигня. вирус легко обнаружи...   04 Jan 2011, 16:31
|- - Guevara-chan   Цитата(gamecreator @ 04 Jan 2011, 16:31) ...   04 Jan 2011, 17:00
- - gamecreator   мне больше импонирует принцип действия твоего fxcl...   04 Jan 2011, 19:07
|- - Guevara-chan   Цитата(gamecreator @ 04 Jan 2011, 19:07) ...   04 Jan 2011, 20:18
- - gamecreator   не в том дело, его действие обратимо. т.е. можно в...   04 Jan 2011, 23:25
- - Guevara-chan   Очередная веха хакерской карьеры - таки напилила с...   07 Jan 2011, 14:38
- - packa   Что то не понял, Guevara-chan сделала самый настоя...   07 Jan 2011, 15:37
- - FBX   ЦитатаDefine *Win = GetForegroundWindow_() ...   07 Jan 2011, 15:44
- - gamecreator   легче поставить хук на нажатие клавиши   07 Jan 2011, 17:40
- - Berserker   Не надо обзывать кулхацкерство хакерством.   07 Jan 2011, 18:09
- - Guevara-chan   Цитата и что, работает? Не должно ? ЦитатаЧто то ...   08 Jan 2011, 16:24
|- - gamecreator   Цитата(Guevara-chan @ 08 Jan 2011, 16...   08 Jan 2011, 16:55
- - etoprostoya   Игродел не любит антивирусы, если что. И в данном ...   08 Jan 2011, 17:48
- - Guevara-chan   Цитатачто твои извращения с проверкой нажатых клав...   08 Jan 2011, 18:06
|- - gamecreator   Цитата(Guevara-chan @ 08 Jan 2011, 18...   08 Jan 2011, 18:29
- - FBX   ЦитатаНе должно ? да написал как-то похожий код д...   09 Jan 2011, 00:45
- - Guevara-chan   Цитатаэто ж когда? Вот именно тогда: тебе просто п...   09 Jan 2011, 17:44
- - gamecreator   что такое payload?   09 Jan 2011, 17:57
- - packa   Платить за загрузку   09 Jan 2011, 18:30
- - tolich   http://en.wikipedia.org/wiki/Payload_%28software%2...   09 Jan 2011, 18:41
- - Guevara-chan   ЦитатаПлатить за загрузку Ну вроде того. Сейчас ра...   09 Jan 2011, 20:19
- - FBX   ЦитатаНичем не могу помочь. я не прошу помочь, я т...   09 Jan 2011, 20:53
- - gamecreator   ммм... надо антивирус писать   09 Jan 2011, 21:29
|- - Guevara-chan   Цитата(gamecreator @ 09 Jan 2011, 21:29) ...   09 Jan 2011, 21:43
|- - gamecreator   у тебя просто талант писать нечитаемый код. а где...   09 Jan 2011, 22:00
|- - Guevara-chan   Цитатау тебя просто талант писать нечитаемый код. ...   09 Jan 2011, 22:05
|- - gamecreator   Цитата(Guevara-chan @ 09 Jan 2011, 22...   09 Jan 2011, 22:07
- - FBX   Вот стесняюсь спросить... а зачем вообще выкладыва...   10 Jan 2011, 00:13
- - gamecreator   характер такой наверное. делать людям пакости.   10 Jan 2011, 00:17
|- - Guevara-chan   Цитата(gamecreator @ 10 Jan 2011, 00:17) ...   10 Jan 2011, 12:07
- - etoprostoya   Che Guevara - Chaotic Good. Стоит поменять пол...   10 Jan 2011, 13:26
2 страниц V   1 2 >


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 12 April 2026 - 12:42
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика