Comments 33
А разве «случайный» дебаг приложения не выявит пароль и последующую потерю gmail аккаунта?
+2
что вы имеете в виду? можно подробнее — как вы бы получили из такого приложения login/password аккаунта?
0
Я бы таким вряд ли бы занимался, но если бы возникла необходимость, то начал бы со слов «iphone app reverse engineering» в поисковике.
0
Я бы таким вряд ли бы занимался, но если бы возникла необходимость, то начал бы со слов «iphone app reverse engineering» в поисковике.
0
понятно. задача реверс-инжиниринга приложения из AppStore сама по себе нетривиальна.
такой способ отправки писем хорош для секций отзывов/пожеланий к приложению. даже если кому-то вдруг понадобится этот служебный email и он сможет получить его, то онаружится это довольно быстро, а лечится апдейтом приложения.
собственно, использование любых запароленных сервисов из iOS приложений подвергается той же опасности.
такой способ отправки писем хорош для секций отзывов/пожеланий к приложению. даже если кому-то вдруг понадобится этот служебный email и он сможет получить его, то онаружится это довольно быстро, а лечится апдейтом приложения.
собственно, использование любых запароленных сервисов из iOS приложений подвергается той же опасности.
0
Одно дело когда пароль вводится в приложении, а потом попадает в какой-нибудь криптоконтейнер. А другое дело захардкоденный пароль. Ради моего любопытства пожалуйста возьмите свой EmailSender.app распакуйте и поищите свой логин и пароль в чистом виде среди файлов. Если же вы выполните мою просьбу, то скажите результаты.
0
я вам и так скажу, что в чистом виде он там не найдется. я вам как раз говорю о захардкоженых паролях для сервисов, которые используют именно приложения, а не пользователи.
0
Взял ваши исходники, открыл проект, установил release, project->build. Далее нашел EmailSender.app, зашел внутрь.
$ grep "@gmail.com" EmailSender
Binary file EmailSender matches
Проверил вручную в Hex Viewer'e, нашел строки в чистом виде.
$ grep "@gmail.com" EmailSender
Binary file EmailSender matches
Проверил вручную в Hex Viewer'e, нашел строки в чистом виде.
+1
раз уж вы так увлеклись, попробуйте получить подобный результат с каким-нибудь приложением из AppStore (найти строчку "#include" в нем, например)
не сомневаюсь, что как-нибудь это можно сделать, но сам никогда этим не занимался.
получается, чтобы получить этот доступ к этому аккаунту нужно:
1) заинтересоваться вашим приложением
2) сообразить, как вы отсылаете email
3) получить файл приложения
4) декомпилировать его каким-либо способом
да, думаю, все это можно сделать. и использовать такой подход стоит там, где вам не страшно потерять этот служебный email, иначе говоря, где это никому и не нужно будет.
не сомневаюсь, что как-нибудь это можно сделать, но сам никогда этим не занимался.
получается, чтобы получить этот доступ к этому аккаунту нужно:
1) заинтересоваться вашим приложением
2) сообразить, как вы отсылаете email
3) получить файл приложения
4) декомпилировать его каким-либо способом
да, думаю, все это можно сделать. и использовать такой подход стоит там, где вам не страшно потерять этот служебный email, иначе говоря, где это никому и не нужно будет.
-1
'#include' я конечно не найду, т.к. исходников внутри нет. А вот захаркоденные строки вполне, если компилятор никак над блоком DATA в бинарнике специфически не работает(не сжимает, не шифрует).
По крайней мере мне так кажется, если есть кто компетентный в этом вопросе, то с радостью выслушаю комментарии. :)
По крайней мере мне так кажется, если есть кто компетентный в этом вопросе, то с радостью выслушаю комментарии. :)
0
apple шифрует бинарник. Но задача его дешифровки занимает пару минут и можно спокойно всё смотреть в hex редакторе
0
чем дешифруете? поделитесь опытом.
0
Фишка в том, что дешифровать особо не нужно. Берем джаилбрайкнутый девайс, запускаем офицально купленное приложение, подключаемся дебагером, в этот момент приложение уже расшифрованно, делаем дамп. Это в кратце. Гуглите встолону взлома приложений для ios.
0
куда гуглить — это очевидно. мне интересен ваш практический опыт. действительно ли за две минуты подобное делали.
0
Я изучал данный вопрос в противоположную сторону, т.е. защиту от взлома. Сам лично не ломал приложения. Но гугл говорит именно так. Это конечно в случае, когда в приложении нет никакой своей защиты.
0
Поиск по нешифрованым строкам, это первое что делает взломщик приложения. А имея необходимое ПО бинарник действительно открывается за пару минут. Поэтому минимальной шифрацией строк не стоит брезговать никогда. Особенно это относится к пользовательским данным, которые любят хранить в нешифрованном виде в UserDefaults, куда на джейленых девайсах может получить доступ любое приложение злоумышленника (или непонятно кем крякнутые птицы с вредноносным кодом).
0
Ради справедливости стоит заметить, что легко нашелся в чистом виде в неподписанном приложении, собранном для эмулятора.
Возможно ситуация поменяется к лучшему, если попробывать найти в подписанном приложении из AppStore.
Возможно ситуация поменяется к лучшему, если попробывать найти в подписанном приложении из AppStore.
0
И ещё:
1) если пароль попадает в чужие руки, то может попасть и важная почта(логины/пароли), адреса ваших пользователей(+ в спам) и тд
2) если «лечить» апдейтом, то пользователи получат негативный опыт, если они не успели обновиться
3) если один раз добыли из вашего пароль EmailSender.app, то ничто не мешает повторять каждый раз, а пользователи будут наслаждаться гонкой версий с новыми логинами/паролями
1) если пароль попадает в чужие руки, то может попасть и важная почта(логины/пароли), адреса ваших пользователей(+ в спам) и тд
2) если «лечить» апдейтом, то пользователи получат негативный опыт, если они не успели обновиться
3) если один раз добыли из вашего пароль EmailSender.app, то ничто не мешает повторять каждый раз, а пользователи будут наслаждаться гонкой версий с новыми логинами/паролями
0
1) где вы тут нашли важную почту, логины, пароли и адреса пользователей.
2) давайте для начала убедимся, что это нужно вообще лечить
3) см.2
2) давайте для начала убедимся, что это нужно вообще лечить
3) см.2
0
Пока диалог напоминает «Я не знаю как правильно делать, но вы делаете неправильно». :)
Кто-нибудь предложит «правильный» путь?
Кто-нибудь предложит «правильный» путь?
+1
Если вы обратите внимание, то первый комментарий в вопросительной форме. Я ничего не утверждал.
-1
Ну так ведь действительно – неправильно. Пароль, как писали выше, в чистом виде выдрать элементарнейшее занятие.
А насчет «я не знаю как правильно делать» давайте для начала копнем глубже:
> Проблема
> Хочу отправлять письмо из приложения под iOS без выхода из приложения (не использовать mailto URL) и без > открытия дополнительного экрана (не использовать MFMailComposeViewController).
предложите use case для этой задачи.
А насчет «я не знаю как правильно делать» давайте для начала копнем глубже:
> Проблема
> Хочу отправлять письмо из приложения под iOS без выхода из приложения (не использовать mailto URL) и без > открытия дополнительного экрана (не использовать MFMailComposeViewController).
предложите use case для этой задачи.
0
ну, «элементарнейшее» — это сильно сказано:)
user case:
сделать возможность отправлять отзывы/пожелания по приложению на определенный email.
при этом необходимо, чтобы пользователь не видел, что это за email. и для удобства нужно, чтобы из приложения пользователь не выходил, дополнительные экраны не появлялись.
user case:
сделать возможность отправлять отзывы/пожелания по приложению на определенный email.
при этом необходимо, чтобы пользователь не видел, что это за email. и для удобства нужно, чтобы из приложения пользователь не выходил, дополнительные экраны не появлялись.
0
Элементарно — рассылка email группе друзей.
0
UFO just landed and posted this here
Sign up to leave a comment.
Пишем письма из iOS приложения