11.07.2015 Views

ПРИНТЕРЫ СЕГОДНЯ - Xakep Online

ПРИНТЕРЫ СЕГОДНЯ - Xakep Online

ПРИНТЕРЫ СЕГОДНЯ - Xakep Online

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

74 ВзломХАКЕР 04 /171/ 2013• .NET-тулзы: .Net Reflector, ILSpy...• IDA Pro• RAIN• Windows Phone App Analyzer• XAPSpy• XapSpyAnalysisВсе инструменты, которые могут быть полезны в процессеанализа защищенности WP-приложений, можно условно разделитьна две большие группы: общие инструменты для анализа.NET-приложений и Windows Phone ориентированные. Мыостановимся на инструментах из второй группы:• RAIN от Boyan Balkanski — это инструмент для анализа и редактированияXAP (Silverlight / Windows Phone приложений)и .NET-сборок (dll/exe).• Windows Phone App Analyzer, разработанный Дэвидом Руком(David Rook aka security ninja), предназначен для статическогоанализа Windows Phone приложений, и для этогопрограмма может использовать различные библиотекидля анализа .NET-кода, типа FoxPro.• XAPSpy от Behrang Fouladi из SensePost — это инструментдля динамического анализа. Программа трассирует все вызовыфункций и выводит в консоль имя функции и ее параметры.Также для графического отображения результатовработы данного инструмента Дэвид Рук написал расширениеXapSpyAnalysis, которое позволяет представлять информациюв более удобном виде.Все рассмотренные инструменты работают только с .NETкодом.Инструментов мало, и большинство из них нацеленына статический анализ, но одного статического анализа при качественноманализе недостаточно. Отсутствие инструментовдля динамического анализа WP-приложения связано с тем,что IDE позволяет отладку только при наличии исходных кодови на WP-устройствах отсутствует программируемый отладочныйинтерфейс, также препятствие представляет сложностьанализа управляемого кода. Но мы решили не вешать нос и задействоватьстатическую инструментацию байт-кода.НАШЕ ДЕТИЩЕ TANGERINETangerine — это тулза для анализа Windows Phone приложений.Она основана на XAPSpy и позволяет делать три вещи.Во-первых, автоматизировать всю рутинную работу с XAPфайлами:распаковку, подписывание, упаковку, разворачиваниена девайсе или эмуляторе. Во-вторых, Tangerine позволяетпроводить базовый статический анализ кода. После открытияприложения Tangerine выводит информацию из манифестаприложения: общую информацию, список возможностей и такдалее. Также производится декомпиляция исходного кода,можно посмотреть структуру кода. Более того, Tangerine проводитанализ кода методов и указывает на методы, в которыхиспользуется потенциально опасный API: работа с файловойсистемой, работа с сетью и работа с криптографией.И наконец, Tangerine позволяет проводить динамическийанализ кода. Это достигается двумя способами. Ты можешьлогировать весь стек вызовов, с именами функций, параметровWindows Phoneна рынке устройствINFOДанное исследованиевпервые было представленона Black Hat AbuDhabi 2012.Windows Phone — сравнительноновая мобильнаяоперационнаясистема от Microsoft, котораяпозиционируетсякак сдвиг относительностарой Windows Mobile.Windows Phone Store(бывший Marketplace)насчитывает более125 000 различныхприложений: от клиентовсоцсетей до мобильногобанкинга. И количествоприложений постоянноувеличивается.и их значениями. Также ты можешь исполнять свой собственныйкод. Все эти вещи настраиваются, ты можешь указать, какиеконкретно методы надо анализировать.Теперь посмотрим, как работает Tangerine. Во-первых, динамическийанализ осуществляется при помощи инструментацииCIL-кода. Во-вторых, логирование работает при помощиконсоли эмулятора. С ее помощью можно увидеть всю информацию,которую приложение выводит в консоль.Итак, у тебя есть приложение, которое ты хочешь проанализировать.Ты открываешь его в тулзе, добавляешь хуки на интересующиеметоды: логирование вызовов, выполнение нужногокода и так далее. Затем Tangerine переподписывает проинструментированныесборки, упаковывает в новый XAP-файл и разворачиваетна эмуляторе или девайсе. Затем ты работаешьс приложением и видишь вывод вызовов методов и как приложениеработает с учетом добавленного в него кода.Конечно, у Tangerine есть ограничения. Некоторые из нихбыли сделаны намеренно (например, Tangerine не работаетс системными библиотеками). Некоторые ограничения могутбыть преодолены в дальнейшем, а некоторые нет. В частности,невозможно анализировать Windows Phone 8 приложения, взятыеиз магазина или с устройства, поскольку сборки содержатMDIL или нативный код (в случае телефона). Таким образом,если ты захочешь проанализировать WP8-приложение, ты долженбудешь взять приложение до того, как оно попало в магазин.Но это тоже временная проблема, и мы работаем над ееразрешением в данный момент.В КАЧЕСТВЕ ЗАКЛЮЧЕНИЯИтак, мы достаточно подробно рассмотрели модель безопасностиWindows Phone 7/8, поговорили о приложениях, а такжео том, как и с помощью чего анализируется безопасность мобильныхприложений. В Windows Phone 8 появились новые векторыатак (app-to-app взаимодействие, баги в нативном коде),однако важно помнить, что большую часть багов составляютне специфичные для платформ уязвимости, а «логические»баги, присутствующие в любой программе.WP- vs. Android- vs. iOS-уязвимостиWP-приложение на устройстве

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!