Сейчас на форуме: Rio (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Какую летиратуру почитать
Посл.ответ Сообщение

Ранг: 1.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 июня 2008 15:47
· Личное сообщение · #1

Какую летиратуру почитать, чтобы научиться взлому программ




Ранг: 279.1 (наставник)
Активность: 0.160
Статус: Участник
wizard

Создано: 12 июня 2008 15:56
· Личное сообщение · #2

Начни вот с этой -> http://exelab.ru/kid.php

-----
Что один человек сделал , другой всегда сломать может...




Ранг: 8.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 12 июня 2008 18:11 · Поправил: pool
· Личное сообщение · #3

А я бы не читал такое, только за зря потеряешь время. Для начала надо знать твой уровень программирования, и вообще, что ты знаешь по компам. Т.к. для каждого подход разный. Тут тебе щас насоветуют гору литературу для новичков (поищи в этом разделе, подобные вопросы поднимались, тут другое не советуют, то ли не могут, то ли не знают сами, но мне кажется, что просто лень время тратить, т.к. много новичков - завязывают быстро с этой идеей), большинство из которой - просто хлам, который понятен знающим людям, но знающие такое читать не будут, т.к. им оно ненадо.



Ранг: 441.3 (мудрец), 297thx
Активность: 0.410.04
Статус: Участник

Создано: 12 июня 2008 18:25
· Личное сообщение · #4

pool
Ни фига себе ты умник. Тебе советуют - а ты ещё и не доволен. Ну ка посоветуй ему что-нибудь умное кроме как создавать новые темы по любым вопросам, кто-нибудь может быть да и ответит, вместо того чтобы самому разобраться. Это и есть твой подход?
Или может быть ты посоветуешь человеку, который первый раз решил заняться реверсом, почитать статьи про снятие ExeCryptor или AsProtect для начала?



Ранг: 1.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 июня 2008 18:49
· Личное сообщение · #5

Насчет уровня програмирования.Читаю руководство по С++ для начинающих. Или не то надо читать?




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 12 июня 2008 19:28
· Личное сообщение · #6

то, что в первом посте дали - обязательно
Такую книжечку купи: www.bookvoed.ru/view_images.php?code=291934&tip=1
--> Оглавление <-- http://www.books.ru/contents?id=442648
потом на васме - крекинг с нуля
а потом сюда в статьи просто смотри что для начинающих...
И практикуй разные крекми от фантома например, для начала

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




Ранг: 9.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 12 июня 2008 20:08
· Личное сообщение · #7

Желательно все читать, только чтобы тебе интересно было, мастерство приходит с опытом
ziipa2008 writes:
Читаю руководство по С++ для начинающих.

для взлома программ это не совсем то, переходи постепенно на Ассемблер, ты с ним чаше будеш иметь дело (даже постоянно )



Ранг: 8.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 12 июня 2008 20:18 · Поправил: pool
· Личное сообщение · #8

tihiy_grom пишет:
Ни фига себе ты умник. Тебе советуют - а ты ещё и не доволен.
-а пользы от таких советов? А Вам бы я посоветовал - по-меньше ставить себя выше остальных, да и внятней читать написанное и писать ответы. Скажи - на кой чёрт человеку, который возможно даже и программирование незнает - советовать сразу в крак лезть???
Isaev пишет:
то, что в первом посте дали - обязательно
- заходим по ссылке и видим
Нужно достать основные крэкерские инструменты, такие как отладчик SoftICE, дизассемблер WinDASM

и что из этого, потом появиться туева куча вопросов, как айсом пользоваться и т.п., хотя для r3 олли вполне хватает, и не только для реверса? - я ошибаюсь?
ziipa2008 - лучше C++ подучи (понадобиться в жизни, когда решишь другой язык поучить), потом подучи Asm для DOS (чтоб понять работу команд, не зацикливаясь на работе с интерфейсом), потом подучи Asm для Windows (чтоб понять работу с API). Для работы лучше заимей VMWare, RadASM, MASM - очень поможет в освоении ассемблера.
Isaev пишет:
потом на васме - крекинг с нуля
- это лучше осиливать, имея за спиной багаж знаний по ассму, легче и понятней.
P.S: а мне на такую книжку денег жалко



Ранг: 441.3 (мудрец), 297thx
Активность: 0.410.04
Статус: Участник

Создано: 12 июня 2008 20:26
· Личное сообщение · #9

pool
Ты сам-то как думаешь, зачем люди учатся в школах, университетах? чтобы чему-то научиться наверное. Только тебе надо понять, что в школе учитель - это человек, а тут - это статьи, туторы и примеры



Ранг: 9.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 12 июня 2008 20:31
· Личное сообщение · #10

А про WinAPI не кто недодумался Одна из нужных вешей в этом деле
Я бы посоветовал сразу на асм, корошие книжка есть "Дневниеи чайника. Всякие витки" . Там как в букваре все написано. Ссылка во первом посту



Ранг: 1.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 июня 2008 20:32
· Личное сообщение · #11

Все понял всем спосиба.Буду изучать



Ранг: 1.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 июня 2008 20:51
· Личное сообщение · #12

А какую книшку посаветуете для изучения ассемблера новичкам



Ранг: 7.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 июня 2008 23:58
· Личное сообщение · #13

ziipa2008, отличные статьи и книжки по ассемблеру пишет Калашников: [url=kalashnikoff.ru]kalashnikoff.ru[/url].




Ранг: 279.1 (наставник)
Активность: 0.160
Статус: Участник
wizard

Создано: 13 июня 2008 00:08
· Личное сообщение · #14

pool пишет:
P.S: а мне на такую книжку денег жалко


Если еще нет никаких знаний ,то для начала нормальная книжка.Половина книги рассматривает ASM (реальный режим)

-----
Что один человек сделал , другой всегда сломать может...




Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 13 июня 2008 00:58
· Личное сообщение · #15

pool пишет:
А я бы не читал такое, только за зря потеряешь время.

Видимо ты и не читал, а скорее всего, даже и не просматривал рекомендации из этого раздела, раз так сразу заявляешь.
Согласен, уровень знаний человека важен, но если спрашивают именно здесь, как правило, это означает, что по программированию знания близки к нулю.
pool пишет:
Скажи - на кой чёрт человеку, который возможно даже и программирование незнает - советовать сразу в крак лезть???

Вот. Именно из-за этого автору топика и посоветовали начать с раздела kid. Там первая ссылка на мои статьи. В них вводная часть освещает все достойные материалы известные мне по теме "Ассемблер с нуля".

pool пишет:
лучше C++ подучи (понадобиться в жизни, когда решишь другой язык поучить), потом подучи Asm для DOS (чтоб понять работу команд, не зацикливаясь на работе с интерфейсом), потом подучи Asm для Windows (чтоб понять работу с API)

ziipa2008, не слушай такие советы =).
Чем больше я занимаюсь программированием, тем больше убеждаюсь, что основы этого искусства проще всего изложить на примерах Ассемблера!
Работа с простыми и сложными данными, константы всех видов, указатели... да вообще все жизненно необходимые технические подробности для кодера куда как быстрее воспринимаются именно через Асм.
А базовые принципы алгоритмастроения вроде "разделяй и властвуй" не зависят от языка на котором будет кодироваться алгоритм.
ООП, несметное количество макросов, псевдо-функции и любая глубокая абстракция языков высокого уровня мозгу начинающего почти наверняка лишь навредят.

Это, впрочем не означает, что Си изучать не надо. Как раз наоборот. Я бы сказал, что чистый Си будет следующей ступенью развития в кодерском мастерстве, далее С++...
Но параллельно нельзя забывать и про алгоритмы. Тут хочешь не хочешь а нужна математика. Если она тебе не нравится, лучше и не начинать.
Для крякера всё это необязательно, достаточно кодерских знаний Асма, но есть ли смысл тратить несколько лет своей жизни на дело, где ты скоро упрёшься в "глухую стену" и дальше жизнь развернёт тебя совсем в другую сторону?
Без "алгоритмки" оно так и будет.

-----
Всем привет, я вернулся




Ранг: 8.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 13 июня 2008 02:54
· Личное сообщение · #16

Bitfry пишет:
Видимо ты и не читал, а скорее всего, даже и не просматривал рекомендации из этого раздела, раз так сразу заявляешь.
- примеры можно приводить? А то про айс я уже высказал свой довод, а что касается твоих "дневников чайника", то они не слишком чайниковские (я про 0 часть, извини - времени нету глянуть остальные), дай почитать их какому-нибудь человеку (нулевому), и посмотри, через какое время он врубится в чтиво - это и будет показателем доступности изложения(хотя пусть ziipa2008 читает и тут отписывает, как ему понятен материал или что-то не ясно). А хиев и иже с ним - я, сорри, но не переношу, мне гуи по-душе больше.
По поводу совета учить C++ - это я для того написал, что в жизни разные ситуации происходят, и в случае чего, он сможет $ заработать своими знаниями когда надоест оглядываться, а не только работать - зная, что его ждёт кепка сухарей.
ziipa2008 - если будешь учить ассемблер, вначале изучи комп, врубись откуда 0 и 1 берётся, и откуда а потом почитай уже чтиво 0. (и английский технический учи усиленно)



Ранг: 8.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 13 июня 2008 09:32 · Поправил: BadM00nz
· Личное сообщение · #17

pool пишет:
хиев и иже с ним - я, сорри, но не переношу, мне гуи по-душе больше.

разве hiew это полностью CLI приложение?

pool пишет:
врубись откуда 0 и 1 берётся

Как вы это понимаете? (в личку)

Помоему pool вы только сбивает человека, хотя кто-то говорил что спор рождает истину.
ziipa2008
От себя могу сказать что в дальнейшем без знания языка высокого уровня все дело остановится, хотя это не значит ,что надо бросать реверс и кидаться учить тот же самый С или С++. Я думаю нужно сделать так что бы два этих дела взаимо дополняли себя. + как написал Bitfry без знания основных алгоритмов реверс превращается в глупое и многократное нажатие клавиши F8... но опять же изучение всего материала должно происходить постепенно и равномерно, переплетаясь между собой (в идеале) + не мало важен факт само мотивации
P.S. Из отладчиков лучше использовать OllyDbg



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 13 июня 2008 15:46
· Личное сообщение · #18

pool пишет:
дай почитать их какому-нибудь человеку (нулевому), и посмотри, через какое время он врубится в чтиво - это и будет показателем доступности изложения

Перед самой первой публикацией чтивы 0 я "испытывал" всё на тогдашних полных чайниках, кое кто из них до сих пор с нами и это уже радует. Статьи были полностью переписаны после первых же результатов испытаний, не один раз вносил исправления и до сих пор вношу. Кстати, много корректуры пока что только на сайте bitfry.narod.ru, когда закончу виток1 закину архив на Краклаб.

pool пишет:
А хиев и иже с ним - я, сорри, но не переношу, мне гуи по-душе больше.

Да, я заметил, большинству читателей неудобно работать в консольных программах, кто-то просто мало знакомы с консольным интерфейсом, например, многие не знают, как установить в консоли свои цвета, размер шрифта, как копировать символьные скрины и т.п.
Но я не смог придумать достойную замену Hiew'у.
Была идея сразу в Ольке транслировать примеры программ, но пришлось давать слишком много объяснений перед самым банальным первым примером... Много-много страниц текста, люди засыпают =).
Версию "знакомтесь - компилятор MASM" пришлось почти сразу выкинуть в мусарку... А жаль, столько времени потратил. =(

Если есть идея как познакомить читателя с машинной командой и без компиляции писать простейшие примеры сразу в GUI, я буду признателен. Ведь когда-нибудь соберусь писать книжку для детишек, а для них консоль уже будет что-то вроде магнитофона =(.

pool пишет:
хотя пусть ziipa2008 читает и тут отписывает, как ему понятен материал или что-то не ясно

Не-е, такие обсуждения естественнее проходят в личной переписке. Тут на форуме публично любой скажет, что всё, дескать, слишком просто для моего продвинутого мозга =).

pool пишет:
врубись откуда 0 и 1 берётся

Практика показывает, что люди с техническим складом ума (а другим здесь и делать нечего) из фразы
"Процессору подаются электрические сигналы, которые мы представляем как закодированные цифры"

сразу же представляют картину вроде:
0 – нет сигнала,
1 – есть сигнал
или:
0 – выключатель в положении выкл,
1 – в положении вкл.

Объяснять принципиальную схему блоков логических и арифметических операций, мне кажется полезнее уже после того как эти операции будут испробованы в программах на практике... Хотя кому как. Тут, пожалуй, каждый для себя решает брать паяльник в руку или обойтись абстрактным представлением неких переключателей.

-----
Всем привет, я вернулся




Ранг: 1.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 13 июня 2008 16:37
· Личное сообщение · #19

ziipa2008, не слушай такие советы =).
Чем больше я занимаюсь программированием, тем больше убеждаюсь, что основы этого искусства проще всего изложить на примерах Ассемблера!
Работа с простыми и сложными данными, константы всех видов, указатели... да вообще все жизненно необходимые технические подробности для кодера куда как быстрее воспринимаются именно через Асм.
А базовые принципы алгоритмастроения вроде "разделяй и властвуй" не зависят от языка на котором будет кодироваться алгоритм.
ООП, несметное количество макросов, псевдо-функции и любая глубокая абстракция языков высокого уровня мозгу начинающего почти наверняка лишь навредят.

Это, впрочем не означает, что Си изучать не надо. Как раз наоборот. Я бы сказал, что чистый Си будет следующей ступенью развития в кодерском мастерстве, далее С++...
Но параллельно нельзя забывать и про алгоритмы. Тут хочешь не хочешь а нужна математика. Если она тебе не нравится, лучше и не начинать.
Для крякера всё это необязательно, достаточно кодерских знаний Асма, но есть ли смысл тратить несколько лет своей жизни на дело, где ты скоро упрёшься в "глухую стену" и дальше жизнь развернёт тебя совсем в другую сторону?
Без "алгоритмки" оно так и будет. ziipa2008 - если будешь учить ассемблер, вначале изучи комп, врубись откуда 0 и 1 берётся, и откуда а потом почитай уже чтиво 0. (и английский технический учи усиленно) Приму к сведенью спосиба.




Ранг: 355.4 (мудрец), 55thx
Активность: 0.320
Статус: Uploader
5KRT

Создано: 14 июня 2008 16:47
· Личное сообщение · #20

По поводу книги "Реверсинг и защита программ от взлома" - книга дает некоторое представление о реверсинге, затрагивает все по немногу. Если деньги есть и опыта нет, то стоит купить.

Лучше побольше попрограммировать на любом языке, а потом только учится взламывать программы. На счет руководств для начинающих - "Введение в крэкинг с нуля, используя OllyDbg"+"статьи с краклаба" и разумеется практика.

-----
Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes




Ранг: 213.5 (наставник)
Активность: 0.120
Статус: Участник
забанен

Создано: 16 июня 2008 03:42
· Личное сообщение · #21

pool
Просто Bitfry не занимаеццо самопиаром, и наезжать на его труды нех, я вот тоже не читал ниразу
Но помню много сюда народу приходило – типа помогите не компилиццо пример Калашникова или там еще кого-то, и вот находиццо чел которому не влом запостить ссылку на сайт Bitfry
И что-то я не помню чтобы кто-то хоть раз сходивший туда, вернулся с какими-нибудь не понятками(или тупыми вопросами), единственное возврящаюццо сказать спасибо
да и вообще тут походу половина лаба знает ASM по его учениям, а насчет прог так надо уметь пользоваццо всеми(вернее теми которые продолжают развиваццо, имеют саппрот итд)
Так что криминальное чтиво от Bitfry проверено временем и имеет 100% результат!

-----
ЗЫ: истЕна где-то рядом, Welcome@Google.com





Ранг: 279.1 (наставник)
Активность: 0.160
Статус: Участник
wizard

Создано: 16 июня 2008 14:57
· Личное сообщение · #22

pool пишет:
английский технический учи усиленно


Классный совет новичку ,а еще посоветуй высшую математику и криптографию

-----
Что один человек сделал , другой всегда сломать может...





Ранг: 107.6 (ветеран)
Активность: 0.110
Статус: Участник

Создано: 18 июня 2008 00:56
· Личное сообщение · #23

Ух ты, в какой флуд все вылилось..
2ziipa2008
Для взлома тебе понадобится знание асма (иначе ты не крякер - ты а-ля киддис). Для этого:
1) Дневники чайника от Битфрая. Хотя бы виток0, хотя я бы советовал читать все - потом поймешь зачем.. Не пытайся понять все за раз.. Просто время от времени по мере изучения возвращайся к ним.
2) Любая книжка по асму. Читать после дневников чайника
3) Уроки Iczelion'а с wasm.ru
А также google.com - твой верный союзник..
Порядок такой - читаешь с http://exelab.ru/kid.php, как ломать прогу - и пытаешься взломать. Пытаешься до тех пор, пока не получится. Когда получится, с полученным вдохновением отправляешься на bitfry.narod.ru и читаешь чтиву0, применяя полученные знания на практике.
Только потом, если чувствуешь, что запал есть и ты ХОЧЕШЬ продолжать заниматься всем этим, покупаешь книжку по асму. Уроки Iczelion'а можешь посмотреть, но вряд ли тебе сразу они понравятся - хотя ИМХО - это еще один шедевр.

2pool
1) если тебе что-то не понятно в чтивах - на сайте четко написано - задавайте вопросы.. Лично я, неплохо владея многими языками программирования, понял давно простую вещь: для изучения любого языка нужна стартовая площадка. Так вот чтивы - лучшая такая площадка по АСМу, от которой можно оттолкнуться уже к более серьезной литературе.
2) Если тебе милее гуи, то ты попал не по адресу. Крякера, как и любого хакера, отличает стремление узнать что ТАМ, за гранью.. А взлом без понимания - это киддинг.
3)pool пишет:
английский технический учи усиленно

чушь.

2Модераторы
Закрывайте уже тему)

-----
программистом не рождаются - им умирают





Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 18 июня 2008 17:10
· Личное сообщение · #24

Пожалуй, реально закрою. Если автору понадобится-пусть стучит, открою обратно.


 eXeL@B —› Вопросы новичков —› Какую летиратуру почитать
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати