Telegram Web Link
Я завела канал, а представиться забыла:) Кто-то знает меня и так, кто-то учился у меня, кто-то просто мой друг/сват/брат. Но все же для тех, кто видит меня в первый раз в жизни и вообще, что тут происходит.
Меня зовут Ольга, я копаюсь в коде и лезу туда, куда не просят. Мое экспертное мнение основывается на неточно, наверно и может быть. Не верьте мне на слово. Все, что я ни напишу, превращается в троян, и будет использовано против Вас. Алоха.
paradiSEcurity pinned «Меня зовут Ольга, я копаюсь в коде и лезу туда, куда не просят. Мое экспертное мнение основывается на неточно, наверно и может быть. Не верьте мне на слово. Все, что я ни напишу, превращается в троян, и будет использовано против Вас. Алоха.»
Статистика уязвимостей Android vs. iOs
Недавно я перешла с Apple Watch Series 3 на Samsung Galaxy Watch. И сейчас расскажу вам свои впечатления.
С Apple Watch я проходила где-то около года и единственное для чего я их использовала (барабанная дробь) - время посмотреть, музыку попереключать, ну и уведомления почитать. Пульс так у меня на них вообще был 30 ударов в минуту. Я один раз посмотрела и на этом мои эксперименты закончились.
Решила перейти на Samsung Watch, так как они больше похожи на стандартные часы, Apple Watch все же не устраивали меня формой. Думала, что будут выполнять те же функции, но оказалось больше. У самсунга есть сопутствующее приложение Samsung Health и часы отлично взаимодействуют с ним. Туда пишется вся статистика, самостоятельно посчитался даже необходимый калораж для ежедневного потребления исходя из моей накопленной активности (каким образом это было сделано, я без понятия, но если судить по сторонним сервисам - посчитано достаточно точно, а это при том что я не вбивала свой рост, вес и уровень активности ручками). Помимо этого еще и отслеживается динамика сна, что тоже очень важно, так как у меня периодически возникают с ним проблемы. Еще и программы есть встроенные, которые позволяют держать тело в тонусе, потратив в день минут двадцать на упражнения. В общем, может тоже самое и было в Apple Watch, но так уж вышло, что Samsung Heath в сопряжении с Samsung Watch оказался куда более юзерфрендли, сам все загрузил, сам все показал, сам все стал отслеживать.
А теперь послушайте как звучит безель при повороте. Очень приятный отзыв. Ммм
Всем доброе утро! Вчера я рассказывала вам, как используются взломанные учетки в инстаграм, а сегодня вы можете почитать о том, как инстаграм взламывают и получаются доступ к его API. Так что утро начинается не с кофе, а с отличной статьи одного хорошего человека:)
Привет, планировала сегодня выпустить длинную статью про внутрянку андроида, но как-то не задалось. И потому решила переключить тему на более лайтовую.

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

Недавно просто рассуждали с друзьями на эту тему. Так в чем же проблема?

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

И многие ли из вас знают как устроены предустановленные приложения? А как работает SystemUI? Что вообще представляет из себя андроид под капотом? Эти вопросы повисли в пространстве и мало кто действительно пытается копнуть чуть глубже. А жаль.
Все знают, что для того чтобы устроиться в крупную it компанию (да даже если не в крупную), нужно пройти страшное и ужасное it-собеседование, где будут ̶в̶а̶с̶ ̶у̶н̶и̶ж̶а̶т̶ь̶ алгоритмы, структуры данных, вопросы по платформе и тд. Многих возмущает именно секция с алгоритмами, мол, зачем вы спрашиваете меня как развернуть LinkedList ведь в реальных задачах я никогда с этим не столкнусь! Зачем вы спрашиваете меня эти непонятные сортировки, когда уже есть готовые функции для этого! Зачем вы задаете мне эти глупые олимпиадные задачки для задротов по алгоритмам! Для чего, почему, зачем, какого черта!!?

Когда я только начинала программировать, я тоже не понимала этого. Но теперь, когда прошло много времени и я научилась со всем этим жить и работать, пришло и понимание. Вы должны знать алгоритмы и структуры данных, потому что это заложено в нашей профессии. Со временем, проведенным за программированием, вы начнете замечать, что у вас просто меняется способ мышления и все эти страшные алгоритмические задачки перестают казаться вам такими уж сложными. Вы поймете, где и как применять паттерны. Ваш код станет структурированным, простым и понятным.

Вопросы, которые задаются на типичных собеседованиях просто позволяют прощупать вашу базу, потому что собеседующим нужно как-то понять, что вы из их “тусовки” и что вы сможете понимать и работать над задачами, которые вам предоставят в данной компании. Это упорядочивание знаний.

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

За время существования канала меня уже много раз спрашивали о том, как я попала в сферу it, как устроиться программистом, что нужно знать, как готовиться, поэтому я решила собрать все материалы в кучу и предоставить их вам. В основном я буду опираться на Яндекс, так как именно от них у меня накопилось больше всего статей и все таки это большая компания со сложными собеседованиями, которые можно поставить в пример, но по сути, если вы усвоите всю нижеприведенную информацию, проблем с устройством на работу в сфере it у вас быть не должно. Грубо говоря, можете пройти в Яндекс = можете пройти везде.

Так что если вы хотите укрепить свои знания, начать понимать алгоритмы, то изучите данные материалы:

Полезные статьи:
Введение в анализ сложности алгоритмов
Алгоритмы и структуры данных — шпаргалка

Направляю также на небольшой яндекс контест
Там есть 4 задачки, которые очень похожи на задачи с яндекс секций, первая уже решена (чтобы можно было ознакомиться с самой системой).
Контест бесконечный - сроков для решения нет. Можно возвращаться к тренировке в любое время.

Примеры задач так же из яндекса:
12 алгоритмических задач отборочного раунда и их разборы
Какие алгоритмические задачи нужно уметь решать

Немного потренироваться в решении схожих задач, помогут внешние ресурсы:
1. Codeforces
2. Interviewbit
3. Leetcode
4. Hackerrank
5. Topcoder

Теория:
Алгоритмы1
Алгоритмы2
Алгоритм «Палех»
Видео-лекции Стэнфорда - очень доступные и интересные, у них есть курс на Coursera
В наиболее сжатом виде основы
Алгоритмы и структуры данных поиска
Что не так с судоку?
Как часто вы задумываетесь о безопасности установленных приложений? Казалось бы — это же всего лишь небольшая программа, установленная на вашем смартфоне, абсолютно безобидная, и она совершенно точно не может убить кого-то.

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

Вы знаете, большинство людей до сих пор думают что хакеры смотрят на летящие зеленые цифры в мониторе. А еще они думают, что это брутальные аутисты, которые взламывают банки попивая смузи на Бали. И я абсолютно серьезна. Как-то, когда как раз выстрелил биткоин, я встретилась со своей давней знакомой, она, к слову, врач, умная девочка. Она знает, что я программист и работаю в защите и она на полном серьезе спросила меня: как я понимаю эти летящие цифры? И объяснить ей даже что такое for в принципе на данном этапе просто нереально, поэтому я просто перевела тему. Думаю, сейчас люди уже больше понимают, что такое программирование, чем буквально года два назад, потому что оно заполоняет все сферы с бешеной скоростью.

Но вернемся к тому разговору. Меня обрадовало, что она стала консультироваться у меня по поводу информационной безопасности. Конечно, она не знает что это конкретно такое, но она задавала довольно интересные вопросы. Почему у меня начинает нагреваться и тупить смартфон, когда я разгадываю судоку, пока еду в метро? Это же всего лишь судоку, даже она понимает, что телефон не должен сходить с ума во время такой незатейливой игры.

Вы здесь вроде умные ребята, как вы думаете, почему примитивное судоку с топорным UI грело ей телефон так, что пальцы можно было обжечь?

Вот именно, судоку то майнило. И самое забавное, вполне законно. Это как раз о том, что следует внимательнее читать пользовательское соглашение. При установке этой игрушки автор спрашивал, хочет ли пользователь смотреть рекламу или позволит майнить на своем устройстве. А кто вообще будет скроллить этот скучный текст, а еще ведь и прочесть его надо, и люди просто тыкают “Да-да-да”, отстань, ведь они хотят скорее добраться до контента. Не важно какими путями. И эта тенденция не устарела и ай-яй-яй-разработчики будут эксплуатировать ее еще долгое время. Всем добра:)
#shkryaba
Я спрашивала вас, интересно ли вам узнать, как работает Android более подробно. И, наконец, добила статью с описанием работы одного из самых главных компонентов системы - SystemUI.
Уже давно лежат тезисы для статьи как сделать приложение безопаснее. Но все не могу собраться с мыслями и написать полноценный текст. После последней публикации меня уже несколько раз попросили дать рекомендации, потому закидываю это сюда. Я обязательно в будущем разберу все это более подробнее, но пока так:)

1. Стратегия запутывания (запутать код с кодом на китайском языке к примеру). Это делается с помощью proguard
2. Предотвращение захвата экрана приложения. А еще можно определять всяки впны и прокси типа

System.getProperty("http.proxyHost");
System.getProperty("http.proxyPort");

3. Не позволять приложению работать с Hook
4. Запретить отладку (тут все просто, нужно чтобы процесс отслеживался родительским процессом. то есть если родительский процесс всегда должен отслеживать дочерний процесс. Присоединение процесса происходит единожды, если же нет - то значит кто-то дебажит) ну и debuggable = false конечно же нужно поставить и android.os.Debug.isDebuggerConnected() проверить
5. Проверить порт. По умолчанию ида к примеру юзает один и тот же порт. Так что мы можем посмотреть использование tcp порта устройства
6. TracerPid проверить
7. Защита подписи приложения
8. NDK как интрумент не только повышения производительности, но и улучшения безопасности
Lifecycle of Android vs iOS
2025/07/08 12:03:39
Back to Top
HTML Embed Code: