Исследуйте потоки передачи управления разбираемой программы. Выявите точку входа. Ей, например, является функция main в C и C++, начало неименованного структурного блока первого уровня, завершающегося ключевым словом END с точкой, в pascal.Начиная от точки входа, проследите все маршруты вызовов функций, процедур, методов классов. Составьте укрупненную диаграмму потоков управления.
Для упрощения данного процесса можно использовать различные средства реверс-инженеринга.Более подробно проанализируйте исходный код структурных элементов разбираемой программы. Составьте диаграммы потоков управления или блок-схемы алгоритмов, реализуемых отдельными функциями и методами.
Осуществите анализ потоков данных разбираемой программы. Выявите структуры, используемые для хранения информации и ее передачи между функциональными элементами приложения. Выявите фрагменты кода, в которых осуществляется преобразование данных из одной формы в другую. Составьте перечень мест программы, в которых производится получение информации из внешней среды, а также ее вывод куда-либо. При проведении анализа подобного рода также помогут средства реинжиринга и case-средства (например, для построения диаграммы наследования и диаграммы зависимостей).
ЛУЧШАЯ БЕСПЛАТНАЯ программа для дизайна интерьера, Ремонт 2020, Сделай САМ планировку квартиры.
Разберите программу, составив полное представление о принципах ее функционирования. На основе знаний о потоках передачи управления между структурными элементами, а также внутри них, знаний о потоках и типах преобразований данных, выявите основные алгоритмы работы.Разделите алгоритмы обработки данных и управления интерфейсом. Среди алгоритмов обработки выделите типовые, классифицируйте их. Выявите алгоритмы, основанные на взаимодействии различных компонентов (например, поиск может использоваться как самостоятельно, так и в составе сортировки). При необходимости составьте блок-схемы различной степени детализации, иллюстрирующие работу программы.
Редакторы EXE
Редакторы EXE файлов можно условно разделить на три категории. Это шестнадцатеричные редакторы, отладчики и дизассемблеры. Первая категория инструментов предназначена для редактирования любых файлов на уровне HEX-кодов. HEX-редакторами можно править и PE файлы.
Некоторые программы предназначены специально для ручного редактирования исполняемых файлов и также пригодны для использования. Отладчики предоставляют несколько углубленный анализ и возможности редактирования PE файлов. Код программы тут представлен в виде кодов языка Ассемблера, и без навыков программирования тут не обойтись.
Отладчик дает возможность отследить выполнение различных функций и использование переменных. Дизассемблер, в свою очередь, отличается от отладчиков тем, что пытается предоставить программисту исходный код на одном из языков высокого уровня, так чтобы код был более читаемым и понятным. Дизассемблер IDA Pro, например, максимально точно определяет исходные конструкции функций и процедур, и дает максимально приближенные к оригиналу исходные коды. Такие программы называют также декомпиляторами.
Способов отредактировать EXE файл программы довольно много, но каждый из них требует специальных навыков в программировании.
Как разобрать программу
Если у Вас есть карта в формате IMG, и Вы хотите работать с ней, да и просто просматривать ее в MapSource или в BaseCamp, то чтобы установить необходимую карту в эти программы, надо вначале разобрать ее на несколько мелких файлов. В этом нам помогут утилиты GmapTool и cGPSmapper. cGPSmapper достаточно установить Free, не будет работать только роутинг (маршрутизация), остальные функции будут работать в полном объеме. Скачиваем, распаковываем, устанавливаем GmapTool. Установка очень простая, в несколько кликов.Запускаем GmapTool. Вначале переходим во вкладку «Опции», производим несколько простых настроек — Выбираем русский язык и прописываем полный путь к cGPSmapperу.Затем во вкладке «Добавить файл», выбираем и добавляем файл с нашей картой.Переходим во вкладку «Разобрать».
1. Прописываем выходную папку. Для этого создаем ее. Обязательное требование — папка должна быть пуста.
2. Прокруткой выбираем «Создать из *img набор файлов для MapSource»
3. Выбираем имя сборки — это имя карты, с которым она будет фигурировать в MapSource или BaseCamp.
4. В завершении кликаем «Разобрать все».
Запускается процесс разборки карты Garmin. Если все прошло без ошибок, появится сообщение о том, что mapset.img создан и готов к употреблению.Теперь заходим в папку, которую создали в самом начале, в нашем случае это C:maps. Здесь нам нужен файл install.bat. Стартуем его для того, чтобы внести данные в реестр Windows.Жмем два раза на любую клавишу, в результате получаем уcтановленную карту и в MapSource, так и в BaseCamp. Переходим, например в MapSource — «Вид» — «Переключиться на продукт» — «Mount» (название набора в нашем случае), и видим нашу карту в таком виде, как на первой картинке этого поста.Файлы для скачивания:
GmapTool 0.8.159b (1.6 MiB, 2322 downloads)
Cgpsmapper0096FreeSetup (5.4 MiB, 1729 downloads)
Велокомпьютер Garmin Edge 500Как разлочить карту Garmin?Как получить скриншот с GPS Garmin?Установка векторных карт в Garmin, с помощью SendMapУстановка векторных карт в Garmin, с помощью MapSourceИзготовление растровых карт с помощью Google EarthПрограмма Советские военные картыТреки GPS
SmartDeblur
SmartDeblur — полностью бесплатное приложение, которым можно пользоваться сколько угодно раз, и во многих отношениях оно дружелюбнее, чем Focus Magic. С другой стороны, его работа не отличается стабильностью (программа зависала несколько, пока я ее тестировал, особенно при загрузке слишком тяжелых изображений), а результаты, которые выдает программа, могут быть разными.
Есть несколько полезных возможностей в SmartDeblur – наличие zoom-опции, а также опции Fit To Window (Подстроить под размер окна). Также можно сравнивать результаты с оригиналом, нажав на «Show Original». Предобзор доступен для всего изображения. Программа содержит образец на котором можно научиться увеличивать резкость, чтобы прочесть размытый текст.
Испытав инструмент на своих собственных фотографиях, я обнаружил, что он не работает так же хорошо как Focus Magic. Но мне удалось получить хорошие результаты с картинкой, содержащей текст.
- Плюсы: Абсолютно бесплатное, обладающее дружелюбным интерфейсом, очень полезное для прочтения на фотографии размытого текста.
- Минусы: Не очень стабильное, не так уж хорошо работает с реальными фотографиями (но испытайте приложение сами, чтобы вынести свой вердикт).
Пытаясь восстановить потерянные детали, вы почувствуете, будто работаете с CSI, но не ожидайте ничего выдающегося.
Focus Magic
Focus Magic — это нечто большее, чем просто программа увеличения резкости. Согласно заявлениям с их сайта, используются «продвинутые криминалистические деконволюционные технологии, которые буквально, как рукой, снимают размытие». В теории, приложение справляется с расфокусированными изображениями и размытыми видео, восстанавливая потерянные детали. Но действительно ли это работает?
Программа Focus Magic далеко не автоматический инструмент. И это огромный минус, поскольку бесплатная пробная версия позволяет выполнить только 10 операций. После этого нужно будет приобрести полную лицензию, которая стоит 45 долларов. После загрузки изображения вам сперва необходимо решить, будете ли фокусировать, убирать размытие при движении, дефокусировать или очищать изображение от мусора. Потом начинается долгий процесс подстройки параметров.
Поскольку возможно увидеть привью лишь для небольшой области изображения, уходит множество попыток, чтобы достичь хорошего эффекта для всей фотографии.
- Плюсы: Выглядит как профессиональный инструмент, с помощью которого действительно можно достичь хороших результатов.
- Минусы: Работа требует множества попыток, но их у пользователя бесплатной версией только 10. К тому же, отсутствует опция изменения масштаба (зума), что доставляет неудобства.
С помощью приложения можно вернуть резкость изображениям, если у вас есть терпение и деньги.
Blurity
Приложение Blurityв отличие от своих конкурентов обладает несколькими особенностями: очень подробным руководством и самодостаточностью. Под самодостаточностью я понимаю способность программы взять на себя тяжелую работу по настройке, если того пожелаете. Если знаете, что делаете, можете получить доступ к продвинутым настройкам, но это совсем необязательно.
После прохождения обучения, можно приступать к обработке. Для этого необходимо поместить красный квадрат на область с сильной размытостью и нажать на кнопку Process. В большинстве случаев на этом всё. Если результаты вас не удовлетворяют, можно переместить квадрат в другую область и попытаться снова. Приложение выполняет свою работу хорошо, ему удалось превратить некоторые размытые фотографии во вполне достойные.
Как видите, минусом являются водяные знаки, которые накладываются на все фотографии, которые вы обрабатываете, используя бесплатную версию приложения. Если вам действительно нравится программа и хотите избавиться от водяных знаков, лицензия будет стоить вам 39$.
- Плюсы: Легкость в использовании, хорошие результаты обработки, с текстом – хуже.
- Минусы: На все обработанные фото накладываются водяные знаки. Лицензия стоит 39$.
Выводы
Хотите – верьте, хотите – нет, но я потратил полдня, исследуя данную тему. Попытавшись повысить резкость у множества размытых фото и видео, я осознал одну вещь – лучше сразу снимать хороший материал. Но если по какой-то причине «план А» не сработал, то вышеперечисленные приложения способны выжать кое-что из вашего материала, но это на самом деле зависит от того, чего вы стремитесь достичь.
Общие сведения
Большинство программ для ОС Android, как и большая часть самой операционной системы, написаны на языке программирования Java. А это значит, что посмотрев в исходный код программ Android, мы, скорее всего, увидим Java код с использованием Android SDK (которая включает в себя инструменты платформы Android). Повторюсь: чтобы понимать исходный код приложений, нужно иметь базовые знания Java и принципы работы Android.
Как узнать исходный код приложений Android?
Для начала скачайте приложение, исходный код которого Вас заинтересовал. Затем зайдите в Play Market и скачайте утилиту под названием Show Java. Именно она будет заниматься декомпилированием. Установили? Отлично, а теперь перейдем к самому интересному – извлечению исходного кода Android программы.
Запускаем Show Java.
Выберите нужное приложение из установленных, или найдите его на SD карте. Теперь нужно выбрать декомпилятор. Я обычно выбираю CRF. Если возникнут проблемы – пробуйте JaDX.
Начнется декомпиляция программы. Это может занять некоторое время. Чем больше приложение – тем дольше декомпилятор будет доставать исходные коды. Пока вы ждете результата, почитайте о перспективных языках программирования.
По завершению процесса вы получите список пакетов с исходниками Android приложения. Конечно, это не 100% копия кода, которую писали разработчики этого приложения. Но основная логика сохраняется, разобрать не сложно. Что делать с исходниками? Что угодно.
Смотрите, разбирайте, возможно Вам будут интересны некоторые “фичи” или особенности реализации функционала программы.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Как разобрать программу?
- — программа для просмотра исходного кода;
- — возможно, средства реверс-инженерии и case-средства.
Как очистить компьютер от ненужных файлов? Разбираем программы
Главная страница » Софт / Программы
Каждый пользователь, который имеет свой персональный компьютер после длительного пользования может заметить то, что его работа замедляется и тормозит, то есть программы, файлы, игры и другие системы плохо загружаются и работают, это связанно с тем, что на диске накопилось очень много мусора и ненужных файлов, которые периодически нужно удалять и чистить, если этого не делать личный компьютер может вообще перестать загружаться и в таком случаи придется переустанавливать операционную систему.
Для того, чтобы очистить компьютер существует огромное количество программ, самыми популярными и продуктивными являются «Norton Utilities», «WinUtilities», «TuneUp Utilities», они достаточно быстро и хорошо очищают его, но для людей, которые не имеют хорошего опыта в работе с ними они могут показаться слишком сложными, работа с ними займет огромное количество времени и сил. Для более простого и быстрого способа очищения можно воспользоваться такой программой, как «Ace Utilities», для того, чтобы сделать очистку с помощью данной программы нужно выполнить такие шаги:
Как очистить компьютер от ненужных файлов?
— самым первым делом данную программу нужно скачать и установить, делается это все очень быстро и легко, нужно ввести в поисковике скачать «Ace Utilities» и начать скачивание, после его окончания нужно заняться установкой, а именно согласиться со всеми пунктами и предложениями;
— как только программа будет запущена можно приступать к самой чистке компьютера, в само начале на мониторе выскочит окно в котором нужно будет создать точку восстановления, это нужно для того, чтобы в случаи какого-либо сбоя можно было без проблем восстановить все систему, но как показывает практика такого еще не случалось, после этого нужно нажать команду «далее», плавающий круг будет говорить о том, что точка создана, после этого нужно будет нажать команду «готово»;
— сразу после восстановления появится главное окно, в левом боковом меню нужно будет нажать «очистка» после нее в правом боковом углу «очистка всех ненужных файлов»;
— после этого откроется новое окно в котором нужно будет выбрать символ бинокля, который находится в левом верхнем углу, после его нажатия начнется сканирование всех ненужных файлов, во время сканирования может создаться впечатление того, что компьютер завис и не отвечает на запросы, но это не так, так работает сканирование, главное, дождаться его окончания, по времени такой процесс может занять несколько минут, все будет зависеть от мощности компьютера и от его производительности;
— после удачного сканирования, когда программа нашла все ненужные файлы понадобится выбрать команду «удалить все», не стоит бояться и сомневаться в том, удалять их или нет, так как эти файлы действительно остаточный мусор, который остался от старых загрузок, как только удаление пройдет успешно окно самостоятельно закроется;
— на данном этапе начинается очищение реестра, это то место, в котором имеются все загрузки операционной системы и всех программ, которые были установлены, в данной графе нужно выбрать «очистка системного реестра», после этого надо выбрать опцию «сканирование» по времени это может затянуться на долго, от пяти до пятнадцати минут;
— как только сканирование подойдет к концу и высветятся все ненужный файлы потребуется нажать графу «Remove All», после этого компьютер будет окончательно чист и быстр.
Именно данные операции помогут очистить любой персональный компьютер от ненужных файлов, главное все шаги выполнять с большой точностью и тщательностью. Выше описаны шаги очистки с помощью одной определенной программы, которая по мнению многих является самой простой и незаурядной, но можно воспользоваться и любой другой, которая вам может показаться лучшей и удобной. Если вы все-таки не разбираетесь в данных вопросах самостоятельно, то лучше и не начинать, так как можно усугубить проблему, в таком случаи лучшим вариантом будет обращение к знакомым или товарищам, а еще лучше к профессионалам, которые точно смогут помочь в решении данной проблемы, стоимость таких услуг совершенно небольшая, так что больших финансовых потерь вы не понесете, зато избавите себя от лишних хлопот и нервов. Не нужно забывать о таком простом процессе, как чистка компьютера от ненужных и лишних файлов, накопление плохо скажется на работе в целом, а после огромной загрузки диска вообще может перестать работать, поэтому если вы что-либо загружаете на персональный компьютер, а потом удаляете это, то не забывайте чистить и операционную систему, а не только удалять ярлыки и значки, которые всегда поверхностные и не занимают много памяти, а она очень важна и нужна для компьютера и чем ее больше, тем лучше он будет работать, а главное намного быстрее.
Источник: info-lite.ru
Мама, я хакер: пробуем вскрыть приложение на Flutter
Hacker — человек, наслаждающийся доскональным пониманием внутреннего устройства систем, компьютеров и компьютерных сетей, в частности.
Привет! Предлагаю заглянуть под капот фреймворка и разобрать процесс компиляции и, заодно, выявить потенциальные проблемы при реверс-инжиниринге приложения Flutter на платформе Android.
Мама! Ну сколько раз тебе говорить, я не нахер, я — ХАКЕР!
В достаточно далёком, по меркам IT-технологий, 1989 году, я стал счастливым обладателем своего первого персонального компьютера «Ассистент», с неплохими характеристиками для домашнего ПК на тот момент – Intel совместимым процессором 8086 на 5МГц и памятью 128Кбайт. А еще был железный (в прямом смысле слова) матричный принтер фирмы Robotron, который, зараза, неправильно печатал одну из букв в русской раскладке. В общем, волею судьбы, первым моим опытом реверс-инжиниринга стал разбор кода работы BIOS при выводе на печать и создание на ассемблере небольшого перехватчика прерывания, который подменял букву на нужную. В результате, в памяти хорошо запомнился восторг того юного начинающего хакера-пионера, и я безразмерно благодарен своим родителям, которые, отказавшись от своих «хотелок» тогда, приобрели мне не самый дешёвый компьютер по тем временам, поддержав мой интерес к вычислительной технике.
С тех пор, периодически занимался этой темой, правда, в основном, не профессионально. Это были или лично интересные для меня задачи, например исследования вирусов, защит ПО от взлома, или нечастые смежные задачи по работе. Занимался реверс-инжинирингом приложений под DOS/RT-11/Windows/Linux, в том числе приложений для .NET Framework, серверных приложений на Java, прошивок встраиваемых систем с различными процессорными архитектурами. В настоящее время, реверсом практически не занимаюсь, но, поскольку IT-фортуна свела меня с Flutter, решил вспомнить «молодость» и попробовать «на зубок» мобильные приложения, созданные с помощью этого замечательного фреймворка.
В общем, достаточно лирики. Итак, кому интересна магия превращения исходного кода на Dart в приложение Android и насколько сложно «взломать» его, с точки зрения хакера-любителя, добро пожаловать под кат.
Объект исследования
В качестве объекта для эксперимента, был написан небольшой пример, задача которого банальна — проверить корректность ввода пароля. Сам пароль хранится в исходном коде как константа (конечно, никогда так не делайте). При вводе пароля производится сравнение и выводится приветствие или, в противном случае, соответствующее предупреждение. Исходники этого нано-приложения расположены здесь.
Сейчас мы отступим от кодекса честного хакера и перейдем на темную сторону взломщиков crackers (по RFC 1983). Для примера используем хорошо известный приём «взлома», это замена условного оператора сравнения на противоположный по смыслу, т. е. если изначально в условии стоит «не равно» подменяем его на «равно». Во многих системах это осуществляется просто заменой одного байта машинного кода или промежуточного кода (например, для IL .NET Framework) в скомпилированном исполняемом файле, который запускает пользователь. При этом одна из самых главных задач – найти это место в скомпилированном файле.
Поскольку у меня был некоторый опыт именно с исследованием Android приложений, в качестве примера возьмем эту платформу, конечно, большинство шагов преобразования исходного кода и сам принцип компиляции также применим и к iOS приложениям.
Итак, наша цель — без модификации исходного кода, имея на руках только скомпилированный apk файл приложения Android, понять, как работает код, найти место сравнения и заменить условный оператор, после этой манипуляции подойдет любой пароль, который вводит пользователь (конечно, кроме корректного).
Перепонтовался
Перед началом работы над статьей, изначально ставил цель разобраться именно с реверс-инжинирингом кода, т. е. без исходных кодов, разобраться с принципом работы исследуемого «объекта» и внести соответствующие коррекции для изменения поведения.
Не знаю хорошо это или плохо, в общем — у меня это не получилось. Поэтому, если у кого был вопрос — сложнее ли взломать «обычное» Android приложение или Flutter? — При прочих равных условиях и исходя из своего скромного опыта, Flutter сегодня существенно труднее поддается реверс-инжинирингу. И если для обычных приложений на Android, накоплен достаточный опыт, и мы имеем различные инструменты – например, можем получить Java код из dex/jar файлов приложения, или Smali код, то для Flutter все «грустно», ввиду отсутствия инструментов и практик. Пока фреймворк не так популярен, хотя, в случае роста популярности, возможно появятся и инструменты, и более конкретные кейсы. Поэтому, простите меня профессиональные хакеры, далее речь пойдет только о процессе компиляции и замене машинного кода приложения в заранее известном месте.
Инструменты
Прежде чем мы приступим к исследованию файла Android приложения на Flutter, опишу инструменты, которые использовались в процессе.
- apktool – популярный инструмент для реверс-инжиниринга приложений под платформу Android
- keytool – утилита управления сертификатами и ключами
- jarsigner – утилита подписи Java архивов
- adb – стандартный инструмент для работы с подключенными к компьютеру Android устройствами
- hopper – дизассемблер для MacOS и Linux
- расширение для VSCode позволяющие редактировать файлы в шестнадцатеричном режиме
Все действия производились на MacOS.
Debug void main(List args) < if (args.isNotEmpty) < String value = args[0]; if (value == _secret) < print(«You are in!!»); >else < print(«Please, enter again»); >> >
Команда отображающая при запуске информацию о IL, CFG и коде ассемблера
dart —print-flow-graph —print-flow-graph-filter=main —disassemble main.dart
Пример участка скомпилированного кода, выполняющий операцию сравнения
;; t0 , t0, t1) 0x10ac21e90 488b542408 movq rdx,[rsp+0x8] 0x10ac21e95 498b5f4f movq rbx,[pp+0x4f] 0x10ac21e99 4d8b6757 movq r12,[pp+0x57] 0x10ac21e9d 41ff54240f call [r12+0xf] 0x10ac21ea2 59 pop rcx 0x10ac21ea3 59 pop rcx 0x10ac21ea4 50 push rax ;; t1
Акт последний — модификация APK
Закончим наш эксперимент заменой соответствующего байта условного оператора в скомпилированном apk файле. Это операция состоит из нескольких этапов:
- Разборка apk файла
- Модификация libapp.so с заменой байта
- Сборка модифицированного apk
- Подпись apk
- Установка на смартфон и проверка
Разбираем исходный файл используя инструмент apktool
apktool d -r -s app-release.apk
Эта команда распакует в каталоге app-release компоненты нашей релизной сборки. Поскольку сейчас интересует именно архитектура arm64 возьмем libapp.so из каталога lib/arm64-v8a и с помощью шестнадцатеричного редактора заменим байт в файле.
Замена байта по смещению 0x1FFCA7 на 0х37
После модификации libapp.so переcобираем apk
apktool b app-release
Поскольку мы изменили содержимое файлов архива APK, при установке этого файла сработает защита проверки подписи. Чтобы обойти это, нам необходимо подписать файл своей подписью. Можно использовать существующий ключ или создать новое хранилище ключей командой
keytool -genkeypair -v -keystore example.keystore -alias example -keyalg RSA -keysize 2048 -validity 10000
Подписываем файл apksigner sign —ks example.keystore —ks-key-alias example app-release.apk
Устанавливаем на устройство adb install app-release.apk
Запускаем наше приложение, и. теперь подходит любой пароль! Мы изменили поведение приложения без использования исходных файлов.
Резюме
Хотя полностью провести реверс-инжиниринг мне не удалось, по результатам работы над статьей можно сделать вывод – исследование без исходных кодов внутренней работы приложения на Flutter выполнить сложнее чем «обычного» приложения под Android. Что касается именно «взлома», конечно декомпиляция является не единственным инструментом для достижения целей взломщиков – у них есть целый арсенал как прокси-серверов, инструменты для SQL-unpinning, инъекций кода, я уже не говорю про социальную инженерию. Поэтому, изначально, можно предполагать, что при необходимости и целесообразности весь код приложения может быть просмотрен и изучен, а также проведена его соответствующая модификация в различных целях. Поэтому важна целостная картина безопасности инфраструктуры и бизнес-контекста, в котором работает мобильное приложение. Но, это совершенно отдельная тема, которая пересекается с этой статьей только в части реверс-инжиниринга.
Что касается именно Flutter, хранение чувствительной информации на устройстве желательно избегать, но в случае необходимости можно использовать пакет flutter_secure_storage или использовать обфускацию при сборке, которая может установить дополнительную преграду при изучении и осмыслении скомпилированного кода, используя имена классов и функций.
Источник: habr.com
Тема: Разборка программного обеспечения
Разборка программного обеспечения
С помощью каких дополнительных программ можно разобрать установочный файл exe например для своих каких то целей..т.д?
11.06.2013, 20:20 #2
Продвинутый пользователь
Регистрация 15.11.2007 Сообщений 4,369
Положительные оценки/Отрицательные оценки |
Получено: 612 / 101 Дано: 41 / 0 |
Вес репутации 65
С помощью каких дополнительных программ можно разобрать установочный файл exe например для своих каких то целей..т.д?
Типа, на запчасти, что ли?
«Если молния в лоб угодит
Значит просто подставлен был лоб.»
11.06.2013, 20:21 #3
Вперед! Регистрация 04.11.2011 Возраст 29 Сообщений 20
Положительные оценки/Отрицательные оценки |
Получено: 0 / 0 Дано: 0 / 0 |
Вес репутации 0
Типа, на запчасти, что ли?
Да, чтобы например модифицировать ее. Опыт программирование небольшой имеется
11.06.2013, 20:25 #4
Продвинутый пользователь
Регистрация 17.11.2006 Возраст 56 Сообщений 8,091
Положительные оценки/Отрицательные оценки |
Получено: 6,102 / 27 Дано: 6,421 / 18 |
Вес репутации 75
Надо знать чем он упакован наверное.
Я не храплю! Мне снятся мотоциклы!
11.06.2013, 20:30 #5
Вперед! Регистрация 04.11.2011 Возраст 29 Сообщений 20
Положительные оценки/Отрицательные оценки |
Получено: 0 / 0 Дано: 0 / 0 |
Вес репутации 0
Надо знать чем он упакован наверное.
Ну да есть такое, а как это узнать может кто подскажит?Чем как привило могут запаковать?
11.06.2013, 20:36 #6
Пользователь
Регистрация 10.10.2010 Сообщений 376
Положительные оценки/Отрицательные оценки |
Получено: 296 / 14 Дано: 1 / 0 |
Вес репутации 47
ТЫ хочешь увидеть исходный код программы?
11.06.2013, 20:57 #7
Вперед! Регистрация 04.11.2011 Возраст 29 Сообщений 20
Положительные оценки/Отрицательные оценки |
Получено: 0 / 0 Дано: 0 / 0 |
Вес репутации 0
ТЫ хочешь увидеть исходный код программы?
Да, все верно. Мне нужен программный код для модификации программы а также возможно внедрение так скажем не хорошего кода:)
11.06.2013, 20:58 #8
Продвинутый пользователь
Регистрация 14.05.2011 Сообщений 1,168
Положительные оценки/Отрицательные оценки |
Получено: 2,504 / 31 Дано: 743 / 8 |
Вес репутации 50
Есть много готовых пакетов, которые позволяют создавать свои инсталляторы. Но никто не мешает сделать свой инсталлятор, поэтому очень большая вероятность, что инсталлятор самопальный.
Начинать нужно с простых средств, например PE Explorer, посмотреть ресурсы, как правило в секции ресурсов есть ветка Version в которой можно посмотреть полезную информацию и остальные ресурсы.
Самые известные инсталляторы как правило афишируют чем именно создан инсталлятор, поэтому можно просто посмотреть информацию о процессе после запуска Process Explorer -ом. ( http://technet.microsoft.com/en-us/s. rnals/bb896653 )
Если инсталлятор самопальный, то универсального решения нет — нужен опыт. Возможно даже придется ручками парсить EXE-шник с помощью IDA, мониторить файловую систему и реестр в процессе установки с помощью Процесс Монитор-а (есть там же на sysintenals) ну и в зависимости от результатов дальше плясать с бубном.
Если нужно делать правки в компилированном коде, то однозначно IDA + опыт. Если исполняемый файл запакован криптором или каким-нибудь хитрым полиморфным пакером, то это вообще задача мягко скажем не простая, легче купить исходники у разработчика за большое количество нулей. Но пока совет один — посмотреть запаковано ли само приложение, и если не запаковано, то парсить IDA и искать что с этим можно сделать. Нужно очень неплохо разбираться в x86-асме. Если за плечами нет опыта разбора бинарников, лучше отдать задачу на фрилансе опытным реверсерам, но стоят эти услуги дорого.
11.06.2013, 21:16 #9
Дебагинг — изменение — компиляция — выбрасывание файла. Особенно если опереться на выражение «небольшой опыт программирования имеется».
11.06.2013, 21:18 #10
Вперед! Регистрация 04.11.2011 Возраст 29 Сообщений 20
Положительные оценки/Отрицательные оценки |
Получено: 0 / 0 Дано: 0 / 0 |
Вес репутации 0
Есть много готовых пакетов, которые позволяют создавать свои инсталляторы. Но никто не мешает сделать свой инсталлятор, поэтому очень большая вероятность, что инсталлятор самопальный.
Начинать нужно с простых средств, например PE Explorer, посмотреть ресурсы, как правило в секции ресурсов есть ветка Version в которой можно посмотреть полезную информацию и остальные ресурсы.
Самые известные инсталляторы как правило афишируют чем именно создан инсталлятор, поэтому можно просто посмотреть информацию о процессе после запуска Process Explorer -ом. ( http://technet.microsoft.com/en-us/s. rnals/bb896653 )
Если инсталлятор самопальный, то универсального решения нет — нужен опыт. Возможно даже придется ручками парсить EXE-шник с помощью IDA, мониторить файловую систему и реестр в процессе установки с помощью Процесс Монитор-а (есть там же на sysintenals) ну и в зависимости от результатов дальше плясать с бубном.
Если нужно делать правки в компилированном коде, то однозначно IDA + опыт. Если исполняемый файл запакован криптором или каким-нибудь хитрым полиморфным пакером, то это вообще задача мягко скажем не простая, легче купить исходники у разработчика за большое количество нулей. Но пока совет один — посмотреть запаковано ли само приложение, и если не запаковано, то парсить IDA и искать что с этим можно сделать. Нужно очень неплохо разбираться в x86-асме. Если за плечами нет опыта разбора бинарников, лучше отдать задачу на фрилансе опытным реверсерам, но стоят эти услуги дорого.
Ясно, спасибо большое. Если кто то еще чем помочь сможет пожалуйста отписывайтесь буду рад любому совету:)
Источник: dalas.ru