Проект "Черный Ангел": система взлома логики исследуемой программы на базе АИ

Тема в разделе "WASM.HEAP", создана пользователем wanderer, 15 окт 2005.

  1. wanderer

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    Суть проекта, на базе AI создается система, взлома логики исследуемой программы. Это коротко. Но суть(не вся). На самом деле всё намного сложнее ... у меня есть прототип AI который в состояни анализировать логику работы программы. По анализу исходного кода(представленного в asm). Результат работы некоторый промежуточный логический язык анализ которого позволяет описать алгоритмию проги ... Теперь я разрабатываю модуль который сможет взять любой исполняемый файл проанализировать его и дать результат ... вот тут и проблема ... для чистого файла,я еще как то допищу ... а вот только чистых файлов(непакованных и т.д) у нас практически нет ... я не обладаю высокой клалификацией в области взлома ... поэтому если кого то заинтересовала идея и захочет помочь пишите или стучите в аську (348419065)... В чем проявится помощь ... Нужно помочь добить этот модуль .... я думаю что инструмент построенный на такой логики будет будет полезен всем ...

    Жду коминтариев и предложений ...
     
  2. captain cobalt

    captain cobalt New Member

    Публикаций:
    0
    Регистрация:
    21 дек 2003
    Сообщения:
    222
    Адрес:
    /ru/perm
    Чем отличается запакованный файл от чистого с точки зрения анализа?



    Почему нельзя автоматически проанализировать процесс распаковки?
     
  3. Artemy

    Artemy New Member

    Публикаций:
    0
    Регистрация:
    18 май 2005
    Сообщения:
    48
    Адрес:
    Russia
    из любопытства: что за ИИ вы смогли написать (хотя бы частично) для взлома программ, если не обладаете достаточной, по вашим словам, квалификацией в этой области? что подразумевается под анализом логики?

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



    интересует следующий вопрос: какую инфу формирует ваш ИИ по тексту (как я понял) исследуемой проги?
     
  4. wanderer

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    а я и не говорил нигде что я написал для взлома ... если вы были внимательней, то заметили бы что я как раз хочу в этом вопросе помощи! Вы правильно уловили идею ...появления такой системы полностью лишит актуальность защищаты ... анализ логии где входным файлом я акцентировал на этом внимание есть файл с asm кодом ... есть исследование блоков кода и попытка анализа его содержания на основание информации каторой обладает система ... к примеру ... взял код архиватора .. передал системе ... на основе его изучения были выделены участки которые отвечаюттолько за интерфейсную часть и участки которые реализуют рабочий цикл программ .. теперь я усложнилл задачу и пытаюсь выудить алгориитм рабочей части... для простоты используется промежуточный язык описание логики понятный человеку и системе... выходная информация этот некоторым образом описанный рабочий цикл программы ... или тех частей которые мне были интересны



    постораюсь уточнить что я хочу ... использую AI разработать систему которая будет самообучающей и способной самостоятельно раскрыватьь логику работы программы и при необходимости её модернизировать! За этим стоит сложная теория и математика но это возможно! Так почему не мы? решение той проблемы которая стоит передо мной имеет два решения первое самое эффективноеи самое сложное ... решение которого я пока невижу ... создать анализатор исполнения программы на уровне пошагового исполнения ... тодишь система какбы в уме представляет как работала бы эта программ если бы её проосто запустили ... второре решение просто созlать гибкое решение на основание того опыта и тех спецификаций которыми обладают guru ... в любом из двух путей мне нужна помощь! ведь неможет быть чтоб некого незаинтересовало ... или не у кого небыло бы похожей идеи :)) хотиа в любом случае рад буду услышатьь любое мнение ...

    P.S: Мы видим этот мир глазами которые создали сами!
     
  5. Stiver

    Stiver Партизан дзена

    Публикаций:
    0
    Регистрация:
    18 дек 2004
    Сообщения:
    812
    Адрес:
    Germany
    wanderer





    Если я правильно понял, о чем идет речь, то этот вариант эквивалентен проблеме остановки, то есть решения не имеет, можно не стараться.
     
  6. Nothing

    Nothing New Member

    Публикаций:
    0
    Регистрация:
    4 авг 2003
    Сообщения:
    139
    Адрес:
    Russia
    wanderer

    ...появления такой системы полностью лишит актуальность защищаты ...

    Ну, не надо бросаться такими громкими словами. Или вы утверждаете, что ИИ "обгонит" мозги авторов защит? Так авторы защит применят ваш же ИИ против вас самих и все...

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

    Теоретически это возможно (в некоторых пределах), но это потребует огромного труда! Причем не 2-3 человек, потому фирмы бьются над похожими проблемами (распознавание естественной речи например) десятилетиями и тысячами людей по всему миру. Увы, результаты пока очень скромные...

    ... создать анализатор исполнения программы на уровне пошагового исполнения ...

    То есть эмулятор процессора создать? Так бы сразу и говорили. Это вполне реально. И ломать на нем защиты действительно можно (но не все). Только причем здесь ИИ? Логику работы программы по процессорному коду можно "понять" лишь на самом низком уровне - спустившись к машине Тьюринга. А на "высоком" уровне - нельзя принципиально. Это все равно что декомпилировать программу в исходный код, который к тому же еще и откомментирован будет писавшим ее программистом!
     
  7. wanderer

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    Могу заметить, что результаты применения AI не такие уж и скромные ... К примеру очень много добились специалисты IBM ... Ими реализована система которая получая как входные данные описание задания на некотором языке а результат исполняемый файл. Можно сказать а почему же они её не использует ... мы живем в капиталистическом мире где достижение науки отходит на второрй план .. первое это деньги ... Так же в честь их достижений можно отнести победу их шахматной программы над человеком ... Кроме всего я не коем образом не пытался уменьшить значимость человеческих мозгов ... но в большинстве операций поточного типа он во много раз иступает компьютеру ... остаеся логика и гибкость решений ... но современные экспертные программы по своим решениям соревнуются с экспертами вышшего уровня ... как по эффективности принятых решения так и по их гидкости ... при скорости реакции на несколько порядков превосходящих человеческих ... вам пора простутся ... большинство современного вооружения построена на чипах управления которые реализуют замкнутые или частично замкнутые алгоритмы поведения ... тоже своего рода AI. Далее количество людей не опреаделяет эффективность получения решения ... достаточно и одного или одной идеи ... а остальные для статистики ... и не надо путать задачи ... распознование речи практически невозможно свести к замкнутой задаче ... а тут задача замкнута по своей природе:) ... и последнее это имелось ввиду действидельно создать эмулятор но не только процессора ... нужно помнитьчто большинство програм исполняются в некоторой среде окружения ... теперь об возможности декомпиляции ... математически это вполне решаемая задача ... есть сложности при её эксперементальной реализации ... но она вполне реализуема ... далее я сразу указал что система анализирует и выход выдает в некотрорм промежуточном логическом языке ... а вот на сколько у человека хватит ума чтоб проанализироватьь этоо ... тут вопросы не ко мне :) и самое главное ... этот виртуальный процессор используется самим AI для раскрытия поведения программы ... в общем об этом можно написать много ... НО как я указал выше мне нужна и некоторая помощь ... к примеру система получает исполнительный файл на иследование если реализовать первый вариант(а я вроде указал чтоо это действительно очень сложный процесс) тот всё ок ... она сама разберет логика распаковки и так далее ... при втором вариатне она начнет действоть как и человек .... определить паковон или непаковон файл если не пааковон дезанседлироовать далее анализ .. если паковон ... то ряд действий системы для его превроршения в чистый файл ..далее дезансеблирование и анализ



    Что на счет анализа логики на низком уровне .. тоо вы явно усложнили задачу ... но даже если тоолько принимать во внимание машинный код то вполне возможно понять логику ... я не говорил декомпелировань и получить тот же файл.. я говорю получить представление об механизме или полледовательности проохождения данных для получения нужного результата ... что уже для програмиста 80% дела .. остальное черновой кодинг ... а то что вы имете ввиду явно можно ассоциироватьт с наружение авторских прав ... и в большинстве случаех действительно невозможно.
     
  8. wanderer

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    и еще чтоб применить что то нужно сперва это создать ... людей которые считают себя пупами земли 98% ... а 2% явно недостаточно для интенсивного развития данной темы также я вроде сказал "Мы видим этот мир глазами которые создали сами!" ... а этот уже из области психологие человеческого восприятия ... Отсюда следует что если считаешь что это не возможно то лутче воспрями это как шутку ... я не собираюсь не с кем спорить и кому то что то доказывать ... если нет у кого то на полки того или иного это еще не озночает что этого нет вообще ... каждый при суждение исходит из того багажа знаний которым владеет ... И не все суждения истины ... в том и есть истина наших ошибок ... принятие ложных суждений за истину.
     
  9. Dr.Golova

    Dr.Golova New Member

    Публикаций:
    0
    Регистрация:
    7 сен 2002
    Сообщения:
    348
    Практика показала что быстрее разобраться вручную с асмом, чем с листингом такой системы. Но везде есть исключения, однажды с листингом я разобрался быстрее чем с неизвестным доселе мне ассемблером, так что у таких систем есть будующее, хоть и не слишком радужноее ;)
     
  10. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    wanderer







    Попробуй оценить свои силы объективно. Какая пропасть между тобой и всем техническим отделом IBM?
     
  11. wanderer

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    а можно конкретно ... кто то может помочь ... даже ради эксперимента ... ?
     
  12. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    wanderer



    Знаешь на что похожа твоя просьба? Это примерно вот что:



    - Колян, слушай, я тут по телику про космонавтов посмотрел. Прикольно. Слушай, давай на выходных на Марс слетаем?
     
  13. wanderer

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    выше было сказано ... не веришь восприми как шутку ... хотиа я вижу что энтузиастов нет ... :)) а потом говориат что мол технологически AI это отстой ... Вопрос ко вем ко тут рассуждал сколько из вас специалистов в AI? Я ведь не утверждаю что являюсь профи в области взлома ... и вас наверно нервирует неточные рассуждения по вопросам которые ВЫ считае что являетесь профи? Уверен что именно так ... Так вот боьшинство суждений базируются на общем человечном невозможно ... хотиа я готов выслушать твердую критику базирующюю на твердых знаниях и опыте а не на возможном представление дел ... Как говорится если что хочешь сделать так делай сам ... К сожалению именно так обсоят дела ...
     
  14. Nothing

    Nothing New Member

    Публикаций:
    0
    Регистрация:
    4 авг 2003
    Сообщения:
    139
    Адрес:
    Russia
    а можно конкретно ... кто то может помочь ... даже ради эксперимента ... ?

    Так я не понял, в чем конкретно помощь-то нужна и что это за эксперимент такой?

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

    В этом что-ли помочь? Файлы распаковывать и описывать этот процесс для внесения в базу знаний ИИ?



    Я пока мало что понял из Вашего сумбурного пояснения. То ли Вы пишите быстро и поэтому получается много ошибок (читать тяжело), то ли просто нечетко выражаете свои мысли.
     
  15. Dimson

    Dimson New Member

    Публикаций:
    0
    Регистрация:
    7 июл 2005
    Сообщения:
    59
    Адрес:
    Russia
    Как я понял, имеется в виду некий виртуальный процессор, который будет "выполнять" (псевдовыполнять) программу, отслеживая логику её работы. Тут есть ряд трудностей основная из которых заключается в том, что далеко не всякую программу можно таким образом проэмулировать. Точнее сделать это конечно-же теоретически возможно, но для этого необходимо создать исследуемой программе "привычную" среду исполнения, т.е. по-сути дела эмулировать работу компьютера в целом, включая обращение к API, аппаратным ресурсам и т.д. Вот пример: протектор проверяет наличие лицензии при нажатии пользоваетелем определенной клавиши на клаваиатуре n-е количество раз.(Пример, конечно не фонтан, но это первое, что пришло в голову :)) Каким образом Ваш модуль сможет это отследить?

    Проэмулировать пользователя? :) Поэтому задача является далеко не такой простой, как может показаться на первый взгляд.
     
  16. Solo

    Solo New Member

    Публикаций:
    0
    Регистрация:
    11 июл 2003
    Сообщения:
    131
    wanderer

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

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



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

    Покажете нам результат. Вот тогда все бросятся обучать эту систему хоть распаковке, хоть анти-ИИ-трюкам :)



    В общем - не вижу преград для Вашей дальнейшей самостоятельной работы на темой...
     
  17. rgo

    rgo New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2005
    Сообщения:
    87
    а может, кто-нить мне дураку объяснить на простеньком примере, без всяких пакеров и проч. антихакер приёмов, _что_ такая программа, в _идеале_ должна мне выдать? То есть если просто перевести exe в листинг на каком-нибудь символическом языке -- то это же будет просто декомпилятор... Декомпилятор, тоже конечно логику пытается просечь, но локально -- то есть вычислить цикл, или функцию, или switch, например. Я не сильно умудрён в ревёрсинге. Хотя ковыряюсь с IDA периодически, но редко, не подолгу (в смысле времени это много не занимает. хотя долга тоже нету :)) и не против пакеров. Может я просто не вижу чего-то?
     
  18. wanderer

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    Solo

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

    wanderer New Member

    Публикаций:
    0
    Регистрация:
    15 окт 2005
    Сообщения:
    8
    Dimson

    и не кто и не говорит что это просто ... при анализе программа выделяет потоки и ветления ... далее идет анализ блоков и объединение ассоциативной информации ... выше я помойму уже выше указывал что рассмотрение пограммы без её окружениея является ошибкой ... и что иногда само окружение может подсказать ответы ... программа не эмулирует пользователя её основная задача "смотреть сквозь" ... далее само эмулирование нужно для построение некоторой промежуточной модели самой программы(которая отрожает знание системы о программе).



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