[Семінар] [Захист Позаду пристрої: мобільних додатків безпеки] [Кріс Wysopal] [Гарвардський університет] [Це CS50.] [CS50.TV] Добрий день. Мене звуть Кріс Wysopal. Я технічний директор і співзасновник Veracode. Veracode є компанія безпеки додатків. Ми перевіряємо всі види різних додатків, і що я збираюся поговорити сьогодні є безпека мобільних додатків. Мій фон я робив дослідження безпеки протягом дуже довгого часу, ймовірно, про тих пір, поки нікому. Я почав в середині 90-х років, і це був час, що було досить цікаво, тому що у нас була заміна парадигми в середині 90-х. Всі комп'ютері раптово кожного був підключений до Інтернету, і тоді ми повинні були зачатки веб-додатків, і ось що я зосередився на багато тоді. Це цікаво. Тепер у нас є ще одна зміна парадигми відбувається з комп'ютерів, який є зрушення в мобільних додатках. Я відчуваю, що це свого роду такий же час, то це було наприкінці 90-х коли ми розслідували веб-додатків і виявлення дефектів, як Помилки управління сесія і ін'єкції SQL який дійсно раніше не було, і раптом вони були всюди у веб-додатках, і тепер багато часу я проводжу дивиться на мобільних додатків і, дивлячись на те, що відбувається там, у дикій природі. Мобільні додатки дійсно буде домінуючим обчислювальна платформа, так що ми дійсно потрібно витрачати багато часу, якщо ви перебуваєте в індустрії безпеки упором на веб-додатків. Були 29 млрд. мобільних додатків, завантажених в 2011 році. Це за прогнозами, буде 76 мільярдів додатків до 2014 року. Там в 686 мільйонів пристроїв, які збираються придбати цього року, так що це, де люди збираються робити  більшість їх клієнта обчислень в майбутньому. Я розмовляв з віце-президентом в Fidelity Investments пару місяців тому, і він сказав, що вони тільки що бачили більше трафіку робити фінансові операції з їх клієнтської бази на їх мобільному додатку, ніж на їх сайті, так загальне використання Інтернету в минулому був перевіряючи котирування акцій, керуючий портфелем, і ми насправді бачимо, що в 2012 році перемикача над бути більш домінуючим на мобільній платформі. Звичайно, якщо там збирається бути будь-якої злочинної діяльності, будь-яку шкідливу активність, він збирається почати бути зосереджені на мобільній платформі з плином часу, як люди переключитися на що. Якщо ви подивитеся на мобільній платформі, дивитися на ризиках платформі корисно розбити його на різних шарах, так само, як ви могли б зробити його на настільному комп'ютері, і ви думаєте про різних верствах, програмного забезпечення, операційної системи, Мережевий рівень, металовироби шар, і, звичайно, є уразливості на всіх тих шарів. Те ж саме відбувається на мобільний. Але мобільний, здається, що деякі з цих шарів перебувають у гіршому становищі. З одного боку, мережевий рівень є більш проблематичним на мобільний тому що багато людей мають у своєму офісі або будинку дротового зв'язку або у них є безпечні з'єднання Wi-Fi, і з великою кількістю мобільних пристроїв ви, очевидно, за межами дому або за межами офісу багато, і якщо ви використовуєте Wi-Fi є ви могли б використовувати небезпечний Wi-Fi з'єднання, щось, що це громадська Wi-Fi з'єднання, тому, коли ми думаємо про мобільних додатків ми повинні взяти до уваги що мережеве середовище є більш ризикованим для тих додатків, коли Wi-Fi використовується. І коли я входжу в більш мобільних ризиків додатків ви побачите, чому це важливіше. Існують ризики на апаратному рівні на мобільних пристроях. Це та область, з поточних досліджень. Люди називають ці широкосмугові нападу або основної смуги атаки де ви атакуєте прошивки, який слухає по радіо. Це дійсно страшно атаки, тому що користувач не потрібно нічого робити. Ви можете натиснути багато пристроїв у зоні РФ відразу, і здається, що всякий раз, коли це дослідження бульбашки він швидко отримує класифіковані, де люди напасти в навколо і сказати: "Ось, кажуть нам про те, що, і, будь ласка, перестати говорити про це." Там якась дослідження відбувається в широкосмугового області, але це, здається, дуже Hush Hush. Я думаю, що це більше національна держава типу дослідження, що відбувається. Площа активного дослідження, тим не менш, операційна система шар, і знову ж, це інша, ніж в настільному обчислювальному світі тому що в мобільному просторі у вас є ці команди людей, званих джейлбрейкери, і джейлбрейкери відрізняються від звичайних дослідників уразливості. Вони намагаються знайти уразливості в операційній системі, але причина, що вони намагаються знайти уразливості полягає не в увірватися в машині чужий і скомпрометувати його. Це увірватися в їх власному комп'ютері. Вони хочуть, щоб увірватися в їх власному мобільному телефоні, змінити операційну систему власних мобільних автора так що вони можуть запускати додатки за своїм вибором і змінити стан речей з повними правами адміністратора, і вони не хочуть, щоб розповісти постачальника про це. Вони не схожі на дослідник безпеки, який є білий дослідник капелюх безпеки яка буде робити з достовірних джерел і розповісти постачальника про це. Вони хочуть зробити це дослідження, і вони хочуть насправді опублікувати його в експлойт або руткит або код джейлбрейк, і вони хочуть зробити це стратегічно, як відразу після кораблі постачальників нової операційної системи. У вас є ця ворожі відносини з вразливостей в ОС, на мобільний, який я думаю, є досить цікавим, і одне місце, ми бачимо його це робить його таким чином, що є хороша опублікований шкідливий код там на наявність вразливостей на рівні ядра, і ми бачили ті, насправді використовуватися вирусописателей. Це трохи по-іншому, ніж світ ПК. А потім остаточний шар верхній шар, шар додатків. Це те, що я збираюся говорити про сьогодні. Існують інші верстви, і інші верстви грати в неї, але я в основному буду говорити про те, що відбувається на рівні додатків де код виконується в пісочниці. Він не має права адміністратора. Він повинен використовувати API-інтерфейси пристрої, але все ж, багато шкідливої ​​активності і багато ризику може статися в цьому шарі тому що це шар, де вся інформація. Додатки можуть отримати доступ всю інформацію на пристрої якщо у них є права доступу, і вони можуть отримати доступ до різних датчики на пристрої, Датчик GPS, мікрофон, камера, що там у вас. Навіть якщо ми говоримо тільки про на рівні додатків у нас є багато ризиків там. Інша справа, що по-іншому про мобільному середовищі буде все операційна система гравці, будь то BlackBerry або Android або IOS або Windows Mobile, всі вони мають дрібнозернистого модель дозволів, і це один із способів, який вони побудували в операційну систему ідея, що це не так ризиковано, як ви думаєте. Навіть якщо ви всі свої контакти на є, всі ваші особисті дані, у вас є ваші фотографії, у вас є своє місце розташування на є, ви зберігаєте ваш банківський штифт для автоматичного входу на там, що це безпечно, тому що додатки повинні мати певні дозволи, щоб дістатися до деяких частин інформації на пристрої, і користувачем має бути представлений ці дозволи і сказати добре. Проблема з ним у тому користувач завжди говорить все в порядку. Як людина, безпеки, я знаю, ви можете запропонувати користувачеві, сказати щось дійсно погане станеться, ви хочете, щоб це сталося? І якщо вони в поспіху або є щось дійсно заманливо, з іншого боку, що, як гра буде встановлений, що вони так довго чекали, вони збираються натисніть порядку. Ось чому я кажу про моє слайді тут просто дайте мені кинути птахів на свиней вже, і ви можете побачити на слайді тут є приклади коробці BlackBerry дозволу. Він каже: "Будь ласка, встановіть права доступу BlackBerry Travel додатків після натискання кнопки внизу ", і в основному користувач просто буде сказати встановити дозволу і зберегти. Ось Android підкажіть де він показує речі, і це насправді ставить те, що виглядає майже як попередження. У цього є свого роду вихід знак там, кажучи, мережа зв'язку, телефонного дзвінка, але користувач збирається натисніть встановити, правильно? І тоді один Яблуко повністю нешкідливі. Це не дає будь-якої попередження. Це просто Apple, хотіли б використовувати ваше поточне місце розташування. Звичайно, ви будете натисніть порядку. Існує цей дрібнозернистий модель доступу, і додатки повинні мати файл маніфесту, де вони оголосити дозволів їм потрібно, і які будуть отримувати відображатися для користувача, і користувач повинен буде сказати, що я ці права. Але давайте будемо чесними. Користувачі, просто хочу, щоб завжди кажу все в порядку. Давайте кинемо швидкий погляд на дозволах, ці програми, які просять і деякі з дозволів, які існують. Ця компанія преторіанською провели опитування в минулому році з 53000 додатків, проаналізованих в Android Market і 3 учасники ринках, так що це все Android-. А середній додаток просили 3 дозволи. Деякі програми просив 117 дозволів, так що, очевидно це дуже дрібнозернистий і занадто складним для користувача, щоб зрозуміти якщо вони подані з цим додатком, яка повинна ці 117 дозволів. Це як користувача ліцензійної угоди кінцевого, це довго 45 сторінок. Може бути, скоро вони будуть мати можливість, де це, як роздрукувати дозволу і напишіть мені листа. Але якщо ви подивитеся на деякі з кращих цікавих дозволів 24% з додатків, які вони скачали з 53000 запитувана інформація GPS з пристрою. 8% читають контактів. 4% відправлено SMS і 3% отримали SMS. 2% записаний звук. 1% обробляються вихідні дзвінки. Я не знаю. Я не думаю, 4% з додатків в магазині додатків дійсно потрібно відправити СМС повідомлення, так що я думаю, що це натяк, що щось несприятливе відбувається. 8% з додатків потрібно читати ваш список контактів. Це, напевно, не треба. Один з інших цікавих речей про дозволів є якщо ви посилання в поділюваних бібліотек в додаток тих, успадковують дозволи додатки, так що якщо ваш додаток потребує список контактів або потребує розташування GPS функціонувати і ви пов'язуєте в рекламній бібліотеці, наприклад, що оголошення Бібліотека також зможуть отримати доступ до контактів а також мати доступ до розташування GPS, і розробник програми нічого не знає про код, який працює в рекламному бібліотеки. Вони просто пов'язуючи, що, тому що вони хочуть перетворити в гроші свої додатки. Це де-і я буду говорити про деякі прикладах це з додаток під назвою Пандора, де розробник програми може мимоволі бути витоку інформації від своїх користувачів, оскільки бібліотек вони пов'язані дюйма Геодезія ландшафт там, дивлячись на всіх різних додатків , Які були повідомляли в новинах, як шкідливі або робити щось користувачі не хотів а потім перевіряти багато додатків-ми робимо багато статичного бінарного аналізу на мобільних додатків, тому ми оглянули їх і подивився на код самої- ми придумали, що ми називаємо наш список 10 небезпечних форм поведінки в додатках. І це розбита на 2 секції, шкідливого коду, так що ці погані речі, що додатки можуть робити, що , Швидше за все, буде те, що зловмисникові конкретно поставити в застосуванні, але це трохи розмито. Це може бути щось, що розробник вважає це добре, але це закінчує тим, що сприймається як шкідливий користувачем. А потім у другому розділі, що ми називаємо кодування уразливості, і це речі, де розробник основному робить помилки або просто не розуміє, як безпечно написати додаток,  і це покласти користувачеві додатки в небезпеці. Я збираюся пройти через це докладно і навести кілька прикладів. Для довідки, я хотів миритися OWASP 10 мобільних кращих список. Мова йде про 10 питань, які група в OWASP, Проект Open Web Application Security, вони мають робочу групу працює на мобільному 10 кращих списку. У них є дуже знаменитий 10 веб кращих список, які є топ-10 ризиковані речі, які ви можете мати на веб-додатку. Вони роблять те ж саме для мобільного, і їх список виглядає трохи інакше, ніж у нас. 6 з 10 є однаковими. У них є 4, які відрізняються. Я думаю, що у них є трохи інший взяти на Ризик в мобільних додатках, де багато їх питань дійсно, як додаток взаємодіє з внутрішнього сервера або те, що відбувається на внутрішньому сервері, не так додатків, які мають ризиковану поведінку, які тільки прямі клієнтські програми. Ті в червоний тут відмінності між 2 списків. І деякі з моїх дослідницької групи фактично участь у цьому проекті, таким чином, ми побачимо, що відбудеться протягом довгого часу, але я думаю, що винесення тут ми дійсно не знаємо, що кращі 10 списків в мобільних додатках, тому що вони дійсно тільки навколо на 2 або 3 років, і не було достатньо часу, щоб дійсно досліджувати операційні системи і те, що вони здатні, і не було достатньо часу для шкідливого спільноти, якщо хочете, щоб провели достатньо часу намагаються атакувати користувачів через мобільні додатки, так що я очікую ці списки, щоб змінити небагато. Але зараз, це топ-10 речей, щоб хвилюватися о. Ви можете запитати, на мобільному стороні, де робить шкідливого мобільного коду як це отримати на пристрій? Штату Північна Кароліна має проект під назвою Генний Мобільна вірусологія де вони збирають стільки мобільного шкідливого як вони можуть і аналізу його, і вони розбиті вектори ін'єкцій, які використовує мобільні віруси, і 86% використовують техніку, звану перепакування, і це тільки на Android платформі ви можете реально зробити це перепакування. Причина Android-код побудований з байт-код Java називається Dalvik, яка легко decompilable. Що поганий хлопець може зробити, це прийняти Android додаток, декомпілювати його, вставити шкідливий код, перекомпілювати його, , А потім покласти його в магазині додатків, яка надається в якості нова версія програми, або просто, може бути, зміна назви програми. Якби це було свого роду гру, змінити ім'я трохи, і таким чином це перепакування, як 86% шкідливих програм для мобільних отримує розподілені. Там інша техніка називається оновлення, яке є дуже схожий на перепакування, але ви насправді не ставлять шкідливий код дюйма Що ви робите це ви поклали в невеликий механізм оновлення. Ви декомпілювати, ви поклали в механізм оновлення, і ви перекомпілювати його, а потім, коли додаток працює, воно тягне вниз шкідливого ПЗ на пристрої. Безумовно більшість це ті 2 методи. Існує не дуже багато Завантажити Drive майданчиках або попутних завантажень мобільні телефони, які можуть бути як фішингу. Ей, перевірити цей дійсно класний сайт, або вам потрібно зайти на цей сайт і заповніть цю форму тримати продовжуючи робити щось. Ті фішинг-атак. Те ж саме може відбутися на мобільній платформі, де вони вказують на мобільний додаток для завантаження, сказати "Привіт, це Банк Америки». "Ми бачимо, що ви за допомогою цього додатка." "Ви повинні завантажити цей інший додаток." Теоретично, це може спрацювати. Може бути, це просто не використовується досить, щоб визначити, чи є це успішним чи ні, але вони виявили, що менше 1% часу, що техніка використовується. Велику частину часу це дійсно упакувати код. Там інша категорія називається автономний де хтось просто будує нове програмне. Вони створити додаток, яке спрямоване на те, щоб бути чимось. Це не перепакування щось ще, і що має шкідливий код. Це використовується 14% часу. Тепер я хочу поговорити про те, що шкідливий код робиш? Одним з перших шкідливих програм там ви могли б розглянути шпигунів. Це в основному шпигує за користувачем. Він збирає електронні листи, SMS повідомлення. Виявляється на мікрофоні. Це збирає контактну книгу, і він посилає його комусь ще. Цей тип програм-шпигунів існує на ПК, так що має сенс для людей, щоб спробувати зробити це на мобільних пристроях. Одним з перших прикладів цього була програма під назвою Secret SMS Replicator. Це було в Android Marketplace пару років тому, і ідея була, якщо ви мали доступ до чиєїсь Android телефон що ви хотіли, щоб шпигувати за, так що, можливо, це ваш чоловік або Ваша друга половинка, і ви хочете, щоб шпигувати за їх текстовими повідомленнями, ви могли б завантажити цю програму і встановити його і налаштувати його відправити текстове повідомлення SMS до вас з копією кожного SMS текстових повідомлень вони отримали. Це, очевидно, в порушеннях App Store з точки зору обслуговування, і це було видалено з Android Marketplace протягом 18 годин вона бути там, таким чином, дуже невелика кількість людей перебувають у групі ризику через це. Тепер, я думаю, що якщо програма називалася щось, може бути, трохи менше провокаційним як Secret SMS Replicator він, ймовірно, працював би набагато краще. Але це було частково очевидно. Одна з речей, які ми можемо зробити, щоб визначити, додатки мають таку поведінку, що ми не хочемо полягає у перевірці коду. Насправді це дуже легко зробити на Android, тому що ми можемо декомпілювати додатків. На прошивкою можна використовувати дізассемблер як IDA Pro дивитися на те, APIs додаток дзвонить і що він робить. Ми написали наш власний двійковий статичний аналізатор для нашого коду і ми робимо це, і так, що ви можете зробити, це, можна сказати, робить пристрій робити нічого, що в основному шпигує за мною чи відстеження мене? І у мене є деякі приклади тут, на мобільний. Це перший приклад в тому, як отримати доступ до UUID по телефону. Насправді це те, що Apple, щойно заборонили для нових додатків, але старі програми, які ви, можливо, працює на вашому телефоні ще можете зробити це, і так, що унікальний ідентифікатор може бути використаний, щоб відстежувати вас в багатьох різних додатків. На Android, У мене є приклад тут отримати координати пристрою. Ви можете бачити, що якщо що API виклик є, що додаток відстежує, і ви можете переконатися в тому, що стає прекрасним розташуванням або приблизне місцезнаходження. А потім на дні тут, у мене є приклад того, як на BlackBerry додаток може отримати доступ до повідомлень електронної пошти в поштовій скриньці. Це вид речей, які ви можете перевірити, щоб побачити якщо додаток робить ці речі. Друга велика категорія шкідливого поведінки, і це, мабуть, найбільша категорія зараз, є несанкціонованим набір, несанкціоноване Преміум SMS текстові повідомлення або несанкціонованих платежів. Інша справа, що унікально про телефон є пристрій підключається до білінгової увагу, і коли заходи здійснюються по телефону це може створити звинувачення. Ви можете придбати речі по телефону, і при відправці Преміум SMS текстове повідомлення насправді ви давати гроші власнику рахунку телефонного номера на іншій стороні. Вони були створені, щоб отримати котирування акцій або отримати щоденний гороскоп або інші речі, але вони можуть бути створені замовити товар, відправивши SMS текст. Люди дають гроші в Червоний Хрест, відправивши текстове повідомлення. Ви можете дати $ 10, що шлях. Нападники, що вони зробили це вони створили рахунки в закордонних країнах, і вони вставляти в шкідливих програм що телефон буде відправити текстове повідомлення преміум SMS, кажуть, кілька разів на день, і в кінці місяця ви розумієте, що ви витратили десятки або, можливо, навіть сотні доларів, і вони йдуть з грошима. Це стало настільки поганим, що це було саме перше, що Android Торговий майданчик або Google місце-це був Android Marketplace в той час, і це тепер Google Play-перше, що Google почав перевірки. Коли Google почав поширення додатків Android в їх магазин додатків вони сказали, що не збиралися перевірити ні за що. Ми будемо тягти додатки, як тільки ми були повідомлені, вони зламали наші умови надання послуг, але ми не збираємося, щоб перевірити на що завгодно. Ну, приблизно рік тому це стало настільки поганим з цим преміум SMS текстових повідомлень шкідливих програм що це найперше, що вони почали перевірки. Якщо додаток може відправляти СМС повідомлення вони додатково вручну ретельно, що застосування. Вони шукають API, які вимагають цього, і тепер з тих пір Google розширила, але це було перше, що вони почали шукати. Деякі інші програми, які зробили деякі текстових повідомлень, це Android-Qicsomos, я припускаю, що це називається. Був цей поточну подію на мобільний, де це CarrierIQ вийшов як шпигунське поставити на пристрої перевізниками, так що люди хотіли б знати, якщо їх телефон був вразливий до цього, і це було безкоштовний додаток, яке відчували що. Ну, звичайно, те, що цей додаток дійсно був він послав Преміум SMS текстові повідомлення, так, перевіряючи, щоб побачити, якщо ви заражені шпигунським ПО Ви завантажили шкідливого ПЗ на вашому пристрої. Ми бачили те ж саме відбудеться в останній Super Bowl. Був фіктивний версія футбольний матч Madden що послав Преміум SMS текстових повідомлень. Це насправді намагалися створити мережу бот занадто на пристрої. Тут у мене є кілька прикладів. Цікаво, що Apple, був дуже розумний, і вони не дозволяють додаткам відправити СМС повідомлення на всіх. Ні додаток не може зробити це. Це відмінний спосіб позбутися від цілого класу уразливості, а на Android ви можете зробити це, і, звичайно, на BlackBerry ви теж можете це зробити. Цікаво, що на BlackBerry все, що вам потрібно, це дозволу інтернет відправити текстове повідомлення SMS. Інша річ дійсно, що ми шукаємо коли ми дивимося, щоб побачити, якщо щось є шкідливим є, для будь-якого типу несанкціоноване мережевої активності, як дивитися на мережевої активності додаток, як передбачається, повинні мати свою функціональність, і дивитися на цього іншого мережевої активності. Можливо, додаток, щоб працювати, повинен отримати дані по HTTP, але якщо він робить речі по електронній пошті або SMS або Bluetooth або щось на зразок цього тепер, коли додаток потенційно може бути шкідливою, так що це ще одна річ, ви можете перевірити на. І на цьому слайді тут у мене є деякі приклади цього. Ще одна цікава річ, яку ми бачили з шкідливими відбулося ще в 2009 році, і це сталося у великий шлях. Я не знаю, якщо це сталося так багато з тих пір, але це було додаток що уособлення іншої програми. Був набір додатків, і це було названо напад 09Droid, і хтось вирішив, що там було багато дрібних, регіональних, середнього банків що не мають он-лайн банківських додатків, так, що вони зробили саме вони побудували близько 50 онлайн-банкінгу додатків що всі вони зробили, було взяти ім'я користувача та пароль і перенаправити вас на сайті. І тому, вони розмістили ці всі вгору в Google Marketplace, в Android Marketplace, і коли хтось шукав, щоб побачити, якщо їх банк було додаток вони знайдуть фіктивні додаток, в якому зібрані свої повноваження, а потім перенаправляється їх на свій сайт. Таким чином, що це насправді став-Додатка були там протягом декількох тижнів, і було тисячі і тисячі завантажень. Як це з'явилося на світ був хтось виникли проблеми з одним з додатків, і вони називали свій банк, і вони назвали підтримки клієнтів лінію свого банку і сказав, "У мене виникли проблеми з мобільним банківського додатки." "Чи можете ви мені допомогти?" І вони сказали: "У нас немає мобільного банківського додатки." Це почалося розслідування. Цей банк називається Google, а потім Google подивився і сказав, "Нічого собі, той же автор написав 50 банківських додатків», і взяв їх усіх. Але, звичайно, це може статися знову. Там в список всіх різних банків тут що були частиною цієї афери. Інша річ, додаток може зробити присутній користувальницький інтерфейс з іншої програми. У той час як він працює вона може вискочити Facebook UI. Це говорить, що ви повинні поставити на ваше ім'я користувача та пароль, щоб продовжити або покласти будь-яке ім'я користувача і інтерфейс пароль для сайту що, можливо, користувач використовує тільки, щоб спробувати обдурити користувача в покласти свої повноваження дюйма Це дійсно прямо паралельно з електронної пошти фішинг-атак де хтось посилає вам повідомлення по електронній пошті і дає вам в основному підроблені користувальницький інтерфейс для веб-сайту що у вас є доступ. Інша річ ми шукаємо в шкідливого коду є модифікація системи. Ви можете подивитися на всіх API викликів, які вимагають повноважень адміністратора правильно виконувати. Зміна веб-проксі пристрою буде те, що додаток не повинні бути в змозі зробити. Але якщо програма має код в там, щоб зробити це Ви знаєте, що це, ймовірно, шкідливий додаток або дуже високо ймовірно, буде шкідливий додаток, і так, що станеться те, що додаток буде мати якийсь спосіб ескалації привілеїв. Це мало б деякі привілеїв експлуатувати у додатку, а потім, як тільки це привілеї він буде робити ці модифікації системи. Ви можете знайти шкідливі програми, які має привілеїв в ньому навіть не знаючи, як працює привілеїв експлуатувати станеться, і це хороший і простий спосіб дивитися на наявність шкідливих програм. DroidDream був, ймовірно, найвідоміший шматок Android шкідливих програм. Я думаю, що постраждало близько 250 000 користувачів протягом декількох днів , Перш ніж він був знайдений. Вони упакувати 50 фіктивних додатків, помістити їх в Android магазин додатків, і, по суті це було раніше Android код джейлбрейка підвищити привілеї а потім встановити команду і управляти і перетворити всіх жертв в бот мережі, але ви могли б виявити це якщо ви сканували додаток і просто шукаєте API виклики, що шуканий корінь дозвіл правильно виконати. А є приклад тут у мене є, які змінює проксі, і це насправді доступний тільки на Android. Ви можете бачити, я даю вам багато прикладів на Android бо саме тут найбільш активним шкідливим кодом екосистема тому що це дуже легко для зловмисника, щоб отримати шкідливий код в Android Marketplace. Це не так легко зробити, що в Apple App Store тому що Яблуко вимагає від розробників, щоб ідентифікувати себе і підписати код. Вони насправді перевірити, хто ви є, і Apple, насправді вдивлятися додатків. Ми не бачимо багато істинного шкідливих програм, коли пристрій стає скомпрометованої. Я буду говорити про деякі прикладах, де це дійсно конфіденційності, що стає під загрозу, і ось що насправді відбувається на пристрої Apple. Інша річ, щоб подивитися на наявність шкідливого коду, ризиковано код в пристроях є логічні або бомби з годинниковим механізмом, і бомби з годинниковим механізмом, ймовірно, набагато простіше шукати, ніж логічні бомби. Але з часом бомб, що ви можете зробити, це ви можете подивитися на місць в коді, де тестується час або абсолютний час шукається до певна функціональність в додатку відбувається. І це може бути зроблено, щоб приховати, що активність від користувача, так це відбувається пізно ввечері. DroidDream зробив всю свою діяльність в період з 11 години вечора до 8 ранку за місцевим часом щоб спробувати зробити це в той час як користувач може не використовувати свої пристрої. Інша причина зробити це, якщо люди використовують поведінковий аналіз додатки, запуску програми в ізольованому середовищі, щоб бачити те, що поведінка додатка є, вони можуть використовувати логіку погодинної зробити діяльність коли додаток не в пісочниці. Наприклад, магазин додатків, як Apple, запускає додаток, але вони, ймовірно, не запускати всі програми, скажімо, 30 днів перш ніж схвалити його, так що ви можете помістити Логіка у вашому додатку, який сказав, гаразд, тільки робити погано після 30 днів минуло, або через 30 днів після дати публікації заявки, і що може допомогти шкідливий код шкуру від людей перевіряючих для нього. Якщо антивірусні компанії працюють речі в пісочницях або додаток самі магазини це може допомогти приховати це від цієї інспекції. Тепер, зворотний бік, що це легко знайти за допомогою статичного аналізу, так насправді перевірки код, який ви можете подивитися на всіх місцях, де додаток перевіряє час і перевірити, що шлях. А от у мене є кілька прикладів на цих 3-х різних платформ якраз можуть бути перевірені на на додаток виробника так що ви знаєте, що шукати, якщо ви огляду додаток статично. Я щойно пройшов через цілу купу різних шкідливих дій що ми бачили в дикій природі, але які з них є найбільш поширеними? У тому ж дослідженні від штату Північна Кароліна Мобільна Genome Project опублікував деякі дані, і були в основному 4 зони що вони бачили там, де було багато активності. 37% з додатків зробив привілеїв, тому їм довелося деякий тип джейлбрейка коду там де вони намагалися підвищити привілеї так, щоб вони могли у команди API працює в якості операційної системи. 45% з додатків там зробив преміум SMS, так що це величезний відсоток, який намагається безпосередньо монетизувати. 93% зробили пульт дистанційного керування, так що вони намагалися створити бот мережа, мобільний бот мережу. І 45% збирають інформацію ідентифікації як номери телефонів, UUID,, GPS місце розташування, облікові записи користувачів, і це додає до більш ніж 100, тому що більшість шкідливих програм намагається зробити деякі з цих речей. Я збираюся перемкнутися на другу половину і говорити про вразливостей коду. Це друга половина ризикованими видами діяльності. Це де істотно розробник робить помилки. Законним розробник, який пише законну додаток робить помилки або не знає про ризики, пов'язані з мобільної платформи. Вони просто не знають, як зробити безпечне мобільний додаток, а іноді розробник не піклується про приміщенні користувача ризику. Іноді частина їх бізнес-моделі може бути збору особистої інформації користувача. Це свого роду іншої категорії, і саме тому деякі з цей шкідливий проти законних починає кровоточити над бо є різниця думок між тим, що користувач хоче і що користувач вважає ризикованим і те, що розробник програми вважає ризикованим. Звичайно, це не дані розробник програми в більшості випадків. І, нарешті, ще один спосіб це відбувається, розробник може зв'язати в Колективна бібліотека, яка має уразливості або цей ризикованої поведінки в ньому непомітно для них. Перша категорія чутливий витоку даних, і це, коли додаток збирає інформацію місце розташування, інформацію адресної книги, інформацією власника, як і посилає, що вимикання пристрою. І як тільки це від пристрою, ми не знаємо, що відбувається з цією інформацією. Це можна було б зберігати небезпечно розробником програми. Ми бачили розробники додатків отримати під загрозу, і дані, які вони зберігання отримує прийняті. Це сталося кілька місяців тому, щоб розробник вниз у Флориді де величезна кількість-це було Ipad UUID, і імена пристроїв просочилися тому, що хтось, я думаю, що це було анонімним, стверджував, зробити це, увірвалися в серверах цього розробника і вкрав мільйони Ipad UUID, і імена комп'ютерів. Не самий ризикований інформація, але те, що якби це було зберігання імен користувачів і паролів і домашні адреси? Там багато додатків, які зберігають таку інформацію. Ризик є. Інша річ, яка може статися, це якщо розробник не дбає для забезпечення каналу передачі даних, і це ще один великий уразливості Я збираюся говорити про, що дані відправляються у відкритому вигляді. Якщо користувач знаходиться в мережі загального користування Wi-Fi або хтось нюхає Інтернет десь по шляху, що дані викриття. Один дуже відомий випадок цього витоку інформації відбулося з Pandora, і це те, що ми досліджували в Veracode. Ми чули, що була-Я думаю, що це був Федеральна торгова комісія Розслідування відбувається з Пандори. Ми сказали: «Що там відбувається? Давайте почнемо копирсатися в додатку Pandora." І те, що ми визначили було застосування Пандора зібрані Ваш стать і вік і це також доступні ваше місце розташування GPS, а також застосування Pandora зробив це для того, що вони сказали, були законні підстави. Музика, яку вони грали-Pandora є потокової музики додаток- музика, яку вони грали лише ліцензована в Сполучених Штатах, таким чином, вони повинні були перевірити, щоб виконувати свої ліцензійні угоди, які вони мали за музику, що користувач був у Сполучених Штатах. Вони також хотіли дотримуватися Parental Advisory навколо мови для дорослих в музиці, і так що це добровільна програма, але вони хотіли, щоб відповідати, що а не грати явні лірику дітей 13 років і молодше. У них були законні підстави для збору цих даних. Їх додаток було дозволу, щоб зробити це. Користувачі думав, що це було законно. Але що сталося? Вони пов'язані в 3 або 4 різних бібліотеках оголошень. Тепер всі раптом всіх цих рекламних бібліотек отримують доступ до цієї ж інформації. Бібліотеки оголошення, якщо ви подивитеся на код у рекламних бібліотек що вони роблять, в кожному оголошенні бібліотека говорить "Хіба моє додаток дозвіл на отримання GPS місце розташування?" "О, це? Добре, скажіть мені розташування GPS." Кожен бібліотека оголошення робить це, і якщо програма не має дозволу GPS він не буде мати можливість отримати його, але якщо це відбудеться, це буде отримати його. Це де бізнес-модель з реклами бібліотек виступає проти приватного життя користувача. І там було дослідження, що там буде говорити, якщо ви знаєте, вік людини, і ви знаєте їх розташування де вони сплять ночами, тому що у вас є їх координати GPS в той час як вони, можливо, спите, ви точно знаєте, хто ця людина тому що ви можете визначити, які членом цієї сім'ї є те, що людина. Дійсно це визначення для рекламодавців точно, хто ви є, і, схоже, це було законно. Я просто хочу, щоб мій потокової музики, і це єдиний спосіб отримати його. Ну, ми схильні цього. Ми написали це в декількох повідомлень в блозі, і виявилося, що хтось із журналу Rolling Stone прочитати одну з наших блогах і написав свій власний блог в Rolling Stone про це, і вже наступного дня Пандора думав, що це була хороша ідея для видалення рекламних бібліотеки з їх застосування. Наскільки я знаю, що вони-вони тільки повинні рекомендуватися. Я думаю, що вони тільки Freemium тип додаток, який зробив це. Всі інші Freemium додатки мають таку ж поведінку, так що ви повинні думати про те, які дані ви даєте ці Freemium додатки, тому що це все збирається рекламодавців. Преторіанською також провів дослідження про поділюваних бібліотек і сказав: "Давайте подивимося на те, що динамічні бібліотеки топ колективні бібліотеки," і це було дані. Вони проаналізували 53 000 додатків, а число 1 загальна бібліотека була Admob. Це було насправді в 38% додатків там, так 38% заявок, які ви використовуєте , Ймовірно, збираючи вашу особисту інформацію і відправивши його на рекламних мереж. Apache і Android були 8% і 6%, а потім ці решта вниз, на дно, Оголошення Google, Flurry, Моб Місто і тисячолітнього ЗМІ, всі ці рекламні компанії, а потім, що цікаво, 4% пов'язано в бібліотеці Facebook ймовірно, зробити аутентифікацію через Facebook так що додаток може ідентифікувати Facebook. Але це також означає корпорацію Facebook контролює код який працює в 4% Android мобільних додатків там, і вони мають доступ до всіх даних, що, що програма має дозвіл на отримання в. Facebook суті намагається продати місце для реклами. Це їх бізнес-модель. Якщо ви подивитеся на всю цю екосистему з цих дозволів і колективні бібліотеки ви починаєте бачити, що у вас є багато ризиків у нібито легітимного програми. Те ж схожі, що трапилося з Пандори сталося з додатком під назвою Шлях, і Шлях думали, що вони будучи попереджувальні, доброзичливі розробники. Вони просто намагалися дати вам велику зручність для користувачів, і виявилося, що без запиту користувача або інформацію користувачеві, нічого- і це сталося на мобільний і на Android, Пандора додаток було на мобільний і Android- що застосування Шлях схопив всю вашу адресну книгу і завантажувати його на дорозі, коли ви просто встановлюється і запуску програми, і вони не розповісти вам про це. Вони думали, що це було дійсно корисно для вас , Щоб мати можливість поділитися з усіма людьми у вашій адресній книзі що ви використовуєте додаток Path. Ну, очевидно Шлях думав, що це було відмінним для своєї компанії. Чи не настільки відмінний для користувача. Ви повинні думати, що це одна справа, якщо можливо, підліток використовує цей додаток і їх десятки друзів знаходяться там, але що, якщо це генеральний директор компанії, яка встановлює шлях а потім раптом їх усією адресної книги там? Ви збираєтеся отримати багато потенційно цінного контактну інформацію для багатьох людей. Репортер з New York Times, ви можете бути в змозі отримати номер телефону для колишніх президентів з їх адресної книги, так очевидно, багато конфіденційної інформації отримує передаються щось на зразок цього. Був такий великий клапоть про це, що шлях вибачився. Вони змінили свій додаток, і це навіть вплинуло Apple. Яблуко сказав: "Ми збираємося, щоб змусити продавців додаток запитувати користувачів якщо вони збираються зібрати всю свою адресну книгу ". Схоже, що відбувається тут коли є одна велика порушення конфіденційності, і це робить пресу ми бачимо зміни там. Але, звичайно, є інші речі там. Додаток LinkedIn збирає записів календаря, Але Apple не робить користувач буде запропоновано про це. Записи календаря може мати конфіденційну інформацію в них теж. Де ви збираєтеся провести межу? Це дійсно почасти розвивається місце де насправді немає достатньо високого рівня там для користувачів, щоб зрозуміти, коли їх інформація буде в небезпеці і коли вони збираються знаю, що це везуть. Ми написали додаток на Veracode назвою Прощайте, і, по суті це дозволило вам вказати додаток в каталозі ITunes і дивитися на всіх додатків, які були на зборі свій повний адресну книгу. І як ви можете бачити в цьому списку тут, Angry Birds, AIM, AroundMe. Чому Angry Birds щоб адресна книга? Я не знаю, але це робить якось. Це те, що багато, багато додатків зробити. Ви можете перевірити код для цього. Там у чітко визначені API-інтерфейси для IPhone, Android і BlackBerry щоб отримати в адресній книзі. Ви дійсно можете легко перевірити для цього, і це те, що ми зробили в нашому додатку Прощайте. Наступна категорія, небезпечний Чутлива зберігання даних, це те, де розробники взяти щось на зразок штифта або номер рахунку або пароль і зберігайте його у відкритому вигляді на пристрої. Що ще гірше, вони можуть зберігати це в районі, по телефону які глобально доступний, як і SD-карти. Ви бачите це частіше на Android, тому що Android дозволяє для SD-карти. Пристрої IPhone немає. Але ми навіть бачили це сталося в додатку Citigroup. Їх онлайн-банкінгу додаток зберігається номери рахунків небезпечним, просто у відкритому вигляді, так що якщо ви втратили ваш прилад, по суті ви втратили ваш банківський рахунок. Ось чому я особисто не робити ставку на мій мобільний. Я думаю, що це занадто ризиковано прямо зараз, щоб зробити ці види діяльності. Skype зробив те ж саме. Skype, звичайно, має залишок на рахунку, ім'я користувача та пароль що доступ до цієї баланс. Вони зберігали всю цю інформацію у відкритому вигляді на мобільному пристрої. У мене є кілька прикладів тут створення файлів , Які не мають права доступу або запису на диск а не мають будь-яку шифрування трапитися за це. Наступний область, небезпечний Чутлива Передача даних, Я натякнув на це кілька разів, і з-за громадського Wi-Fi це те, що додатки абсолютно необхідно зробити, і це, ймовірно, що ми бачимо піти не так найбільше. Я б сказав,-насправді, я думаю, у мене є фактичні дані, але це близько до половини мобільних додатків загвинтити робить SSL. Вони просто не використовувати API-інтерфейси правильно. Я маю на увазі, все, що вам треба зробити, це слідувати інструкціям і використовувати API-інтерфейси, але вони такі речі, як не перевірити, чи є недійсним свідоцтво на іншому кінці, не перевірити, якщо інший кінець намагається зробити протокол атак на застарілі версії. Розробники, вони хочуть, щоб їх прапорець, чи не так? Їхня вимога використовувати це, щоб продати. Вони використовували це, щоб продати. Вимога не використовувати це, щоб продати надійно, і ось чому всі додатки, що використовують SSL для захисту даних як це передається вимкнути пристрій дійсно повинні бути перевірені щоб переконатися, що був реалізований правильно. А от у мене є кілька прикладів, де можна побачити додаток Можливо, використовується HTTP замість HTTPS. У деяких випадках додатки повернеться до HTTP якщо HTTPS не працює. У мене є ще один виклик тут, на Android, де вони відключена перевірку сертифіката, так атака людина-в-середині може трапитися. Недійсний сертифікат буде прийнятий. Усі ці випадки, коли зловмисники збираються, щоб мати можливість потрапити на те ж саме Wi-Fi з'єднання, як користувача і доступ до всіх даних який відправляється через Інтернет. І, нарешті, остання категорія у мене є ось жорстко пароль і ключі. Ми фактично бачимо багато розробників використовувати той же стиль кодування що вони зробили, коли вони будували додатків веб-сервера, так вони будують серверний додаток Java, і вони кодуються ключ. Ну, коли ви створюєте серверний додаток, так, кодуються ключ є не дуже хороша ідея. Це робить його важко змінити. Але це не так погано на стороні сервера, тому що, хто має доступ до стороні сервера? Тільки адміністратори. Але якщо взяти той же код, і ви вилив його на мобільному додатку Тепер кожен, хто має, що мобільний додаток має доступ до цього жорстко ключа, і ми дійсно бачимо це багато разів, і у мене є деякі статистичні дані про те, як часто ми бачимо це сталося. Це насправді було в прикладі коду, MasterCard, опублікованій про те, як використовувати свої послуги. У прикладі коду показав, як ви б просто взяти пароль і покласти його в жорстко рядок прямо там, і ми знаємо, як розробники люблять копіювати і вставляти фрагменти коду коли вони намагаються щось зробити, так що ви скопіювати і вставити фрагмент коду що вони дали як приклад коду, і у вас є небезпечний додатки. А тут у нас є кілька прикладів. Це перший є одним ми бачимо багато, де вони жорстко право даних в URL, який отримує відправлені. Іноді ми бачимо рядок пароль = пароль. Це досить легко виявити, або рядок пароля на BlackBerry і Android. Це насправді досить легко перевірити, бо майже завжди імена розробників змінної, тримає пароль деяка зміна пароля. Я згадав, що ми робимо статичний аналіз в Veracode, тому ми проаналізували декілька сотень Android і IOS додатків. Ми створили повні моделі них, і ми в змозі сканувати їх для різних вразливостей, особливо вразливостей які я говорив, і в мене є деякі дані тут. 68,5% з програми, ми дивилися на порушив криптографічний код, що для нас, ми не можемо виявити, якщо ви зробили свій власний процедуру шифрування, не те що це гарна ідея, але це насправді використовує опубліковані API, що на платформі, але робить їх таким чином що крипто будуть уразливі, 68.5. І це для людей, які посилають нам свої заявки фактично, тому що вони думають, що це гарна ідея, щоб зробити тестування безпеки. Це вже люди, які, ймовірно, думав надійно, так що, ймовірно, навіть гірше. Я не говорив про контрольної лінії введення сировини. Це те, що ми перевіряємо, але це не так ризиковано проблемою. Витік інформації, це де конфіденційні дані відправкою пристрій. Ми виявили, що в 40% додатків. Час і держава, ті питання, типу стан гонки, як правило, досить жорсткі, щоб експлуатувати, так що я не говорив про це, але ми дивилися на нього. 23% були проблеми SQL Injection. Багато людей не знають, що багато додатків використовувати невелику мало даних SQL на їх задній частині для зберігання даних. Ну, якщо дані, які ви захоплення по мережі має рядки атаки ін'єкції SQL в ньому хтось може поставити під загрозу пристрій через це, і тому я думаю, що ми знаходимо близько 40% веб-додатків мають цієї проблеми, яка є величезною проблемою епідемії. Ми знаходимо його 23% часу в мобільних додатках і це, ймовірно, тому, що багато інших веб-додатки використовують SQL, ніж з мобільного. А потім ми все ще бачимо деякі міжсайтовий скриптинг, питання авторизації, а потім Управління обліковими даними, ось де у вас є свій жорстко пароль. У 5% додатків ми бачимо, що. А потім у нас є деякі дані про прошивкою. 81% були проблеми обробки помилок. Це більш серйозна проблема якості коду, але 67% з них криптографічні проблеми, тому не так погано, як Android. Може бути, API-інтерфейси є трохи легше, назви коди трохи краще на МО. Але все одно дуже високий відсоток. У нас було 54% ​​з витоку інформації, близько 30% з помилками управління буфером. Це місця, де є потенційно може бути пошкодження пам'яті. Виявляється, це не так вже й велика проблема для експлуатації на прошивкою тому весь код повинен бути підписаний, так що важко зловмисникові виконати довільний код на МО. Якість код, проходження каталогів, але потім повноваження управління тут, в 14,6%, так гірше, ніж на Android. У нас є люди, правильно не за допомогою пароля. А потім цифрові помилки і переповнення буфера, ті більш буде питання якості коду на IOS. Що це було для моєї презентації. Я не знаю, якщо ми поза часом чи ні. Я не знаю, чи є які-небудь питання. [Чоловік] швидкий питання навколо фрагментації і Android Market. Яблуко, принаймні володіє виправлень. Вони роблять хорошу роботу з отримання його там в той час як в меншій мірі, в Android просторі. Ви майже повинні зробити джейлбрейк вашого телефону щоб бути в курсі з поточною версією Android. Так, це величезна проблема і тому, якщо ви думаєте про- [Чоловік] Чому ви не можете повторити? О, точно, так що питання було щодо фрагментації операційної системи на платформі Андроїд? Як це впливає на ризикованість цих пристроїв? І насправді це величезна проблема, тому що те, що відбувається, старші пристрої, коли хтось приходить з джейлбрейком для цього пристрою, по суті, це підвищення привілеїв, і, поки що операційна система не оновлюється будь-яка шкідлива програма може використовувати цю уразливість, щоб повністю скомпрометувати пристрій, і що ми бачимо на Android є, щоб отримати нову операційну систему Google має згасити операційну систему, а потім до виробника устаткування повинен налаштувати його, а потім перевізник повинен налаштувати його і доставити його. У вас є в основному 3 рухомих частин тут, і це, виявляється, що носії не хвилює, і виробники обладнання не хвилює, і Google не підштовхуючи їх досить нічого робити, тому по суті більше половини пристроїв там є операційні системи, які мають ці привілеїв уразливості в них, і тому, якщо ви отримуєте шкідливих програм на вашому Android пристрої це набагато серйозніша проблема. Добре, спасибі вам велике. [Оплески] [CS50.TV]