Easy Hack
Хакерские секреты простых вещей
Часто, разворачивая сервер для своего ресурса или настраивая другое ПО, мы оставляем большинство опций в конфигурационных файлах по умолчанию. Потом проект обрастает функционалом, и конфиги все реже удостаиваются внимания, превращаясь в бомбы замедленного действия, которые злоумышленник может успешно использовать. Поэтому сегодня мы рассмотрим параметры безопасности популярного серверного ПО, настройку которых лучше не откладывать в долгий ящик.
Анализ свеженьких уязвимостей
Язык Objective-C входит в открытый набор компиляторов GNU GCC, однако использовать этот язык для программирования под платформу PC бессмысленно, и в поставке GCC он выполняет исключительно декоративные функции. Зато под платформу Mac он основной язык программирования. В этой статье мы рассмотрим несколько кодерских приемов для OS X с помощью Objective-C и сопутствующих библиотек.
В мире Linux мы привыкли видеть исключительно клоны. Debian, Ubuntu, Red Hat, SUSE — все это разные дистрибутивы, принципиального отличия в которых нет. Половина популярных Linux-дистрибутивов — это форки Debian или Ubuntu, другие — форки древнего Slackware с измененным менеджером пакетов и красивыми конфигураторами. От былого разнообразия не осталось и следа, но, может быть, мы просто плохо ищем?
Двухсторонний биндинг данных прочно закрепился в современной фронтенд-разработке. Он позволяет избавиться от оверхеда работы с DOM’ом, сконцентрироваться на логике приложения и посильнее изолировать шаблоны от этой самой логики. Но, несмотря на все удобства, и эта технология имеет свои проблемы, ограничения и, самое главное, особенности реализации в рамках конкретных фреймворков.
Пользовательский интерфейс на Java прошел весьма тернистый путь становления и развития. Долгое время его обвиняли в медленной работе, жадности к ресурсам системы, ограниченной функциональности. Появление .NET с более быстрыми графическими компонентами еще больше пошатнуло позиции Java. Но нет худа без добра — все эта движуха только подстегивала разработчиков Java к развитию и улучшению графических библиотек. Посмотрим, что из этого получилось.
Винлокеры и криптолокеры настолько мощно достали мировую общественность, что мы решили не оставаться в стороне и немного пофантазировать на тему: а что было бы, если бы злохакеры писали их на сишарпе?
Как-то пару лет назад у нас в журнале была статья под названием «Чемоданчик хакера», в которой мы делали обзор девайсов для обыденных жизненных ситуаций — взлома Wi-Fi, перехвата клавиатурного ввода и тому подобных. Но время шло, технологии не стояли на месте, появлялись новые задачи, новые устройства. Им-то мы сегодня и уделим внимание.
Когда работаешь над приложением или веб-сервисом, часто бывает нужно быстро набросать внешний вид будущего интерфейса, чтобы не показывать «на пальцах» свои идеи коллегам и заказчикам. В этой статье я рассмотрю инструменты, с помощью которых можно быстро создавать макеты пользовательских интерфейсов, позволяющие передать замысел автора о функциональности, не затрагивая вопросы графического дизайна.
Проблема сетевой безопасности — штука очень серьезная, и, пренебрегая даже одним из базовых правил, ты рискуешь потерять все. Эту аксиому всегда надо держать в голове. Как бы ты ни укреплял строение, какие бы бастионы ты ни возводил, но, не построив прочного фундамента, нельзя двигаться дальше. Сетевая безопасность и есть тот фундамент. А как все может пойти без одного кирпичика, ты увидишь в сегодняшнем рассказе.
MySQL давно куплена Ораклом и не очень-то спешит эволюционировать, а половина самых активных разработчиков разбежалась по различным форкам, и теперь главный движняк MySQL-сообщества находится именно там. Мы уже когда-то писали небольшой поверхностный обзор потомков MySQL, а сегодня хотелось бы более детально познакомить тебя с одним из них и рассказать, чем именно он так крут.
Сегодня нередко у одного пользователя сразу несколько устройств. Это, несомненно, удобно, но вызывает и проблемы, которые решаются синхронизацией данных или размещением данных в облаке. Именно поэтому веб-клиенты электронной почты снова становятся востребованными.
Многие из нас грезят об утечке в публичный доступ новой версии IDA, так как 6.1 уже немного устарела. Но некоторые не стали сидеть на месте и начали разрабатывать свой инструмент, помогающий в повседневной работе.
Я уже не однажды касался вопросов безопасности в AWS в том или ином контексте. На этот раз я решил рассказать про основные механизмы безопасности, а также про типовые грабли, на которые наступают счастливые админы и разработчики. Попробуем обобщить и систематизировать требования и необходимые процедуры по обеспечению надежной защиты сервисов, которые мы хотим развернуть в облаке Amazon’a.
Уязвимости и проблемы в коде часто возникают не только из-за ошибок при его написании, но и из-за неправильного тестирования. Для того чтобы отлавливать XSS и SQLi, не нужно быть «хакером» или экспертом по ИБ — достаточно использовать модульные тесты (unit tests). Сегодня мы поговорим о том, как правильно это делать.
Я думаю, что в наши дни одна из самых ценных вещей — это время. Как ни странно, современные устройства, призванные ускорить нашу жизнь, по факту отнимают еще больше времени. К счастью, многие из задач, решаемых с помощью смартфона, можно автоматизировать, серьезно облегчив свое существование.
Восьмилетний путь от системного администратора до начальника отдела разработки программного обеспечения окончательно убедил меня отправиться в свободное плавание. Мне надоело решать однообразные проблемы одной компании, мне хотелось получить право выбирать задачи и клиентов. Свой опыт, непоколебимое желание обрести независимость и стремление идти вперед я попытался конвертировать в собственное дело. Что из этого вышло, читай ниже.
Про ботнеты можно говорить долго и упорно. За последние десять лет их появилось столько, что для обзора, наверное, не хватит и всех страниц целого журнала «Хакер». Но даже из всего этого многообразия можно выделить ботнеты, которые выбиваются из общей массы по ряду признаков.
Непросвещенному человеку кажется, что проблемы индейцев-апачей не волнуют шерифов, то есть рядовых пользователей интернета. А касаются они исключительно владельцев сайтов на базе Apache. На самом деле вся эта малварь с удовольствием натягивает обычных посетителей сайтов, заливая им трояны, которые затем воруют их денежки и пароли. Считаю, что такого врага нужно узнать в лицо, ведь примерно каждый третий сайт, который ты посещаешь, работает как раз на Apache.
Стоит только вбить в Google какой-нибудь вопрос о создании сайтов, как ты тут же получишь тонны ссылок на блоги школьников, которые наискосок прочитали мануал по HTML десятилетней давности и решили поделиться своими знаниями со всем миром. На большинство подобных сайтов надо вешать баннер: «Код, приведенный на этом ресурсе, вымышленный, любые случаи его работоспособности случайны». Но никто так не делает, и тысячи программистов с легкой руки копируют в свои проекты код из ненадежных источников, а потом через некоторое время сталкиваются с разными проблемками, связанными с несоответствием сайта стандартам. Если твой сайт по-разному выглядит в разных браузерах, Firebug выдает десятки ошибок, а поисковики несправедливо игнорируют, эта статья для тебя.
Безопасное хранение паролей и их синхронизация между устройствами — задача непростая. Около года назад Apple представила миру iCloud Keychain, свое централизованного хранилище паролей в OS X и iOS. Давай попробуем разобраться, где и как хранятся пароли пользователей, какие потенциальные риски это несет и имеет ли Apple техническую возможность получить доступ к расшифрованным данным, хранящимся на ее серверах. Компания утверждает, что такой доступ невозможен, но, чтобы это подтвердить или опровергнуть, необходимо разобраться, как работает iCloud Keychain.
SharePoint — корпоративная система хранения документации от Microsoft с возможностями CMS, сильно завязанная на Active Directory. В интернете можно нагуглить общие описания ее уязвимостей, но из-за закрытых деталей багов (да и продукта в целом) рабочих публичных эксплойтов практически нет. Хотя, конечно, это не означает, что взломать SharePoint невозможно.
Если бы в качестве введения я начал расписывать достоинства облачных хранилищ данных, ты бы подумал, что меня только что разморозили после двадцатилетнего анабиоза или что я серьезно злоупотребляю снотворными :). Поэтому скажу кратко, по-программистски: когда передо мной встала задача сделать программу, которая могла бы без привязки к API конкретного сервиса работать с файлами на множестве хранилищ (речь шла о бэкапе), оказалось, что это не так просто. Обо всех тонкостях и подводных камнях проделанной работы я решил тебе рассказать в этой статье.
Один из законов Мерфи гласит: «В каждой нетривиальной программе есть хоть один баг». В компьютерных играх тоже полно багов. И они веселее и зрелищнее любых других.
У OS X прекрасный интерфейс, но его ориентированность на мышь вызывает множество вопросов у тех, кто привык работать с клавиатуры. В январском номере мы изучали лаунчеры, помогающие запускать программы и выполнять разные команды с клавиатуры. Теперь настала пора для другого класса программ — «менеджеров окон».
Несмотря на то что в мире придумано много способов аутентификации и контроля доступа, именно пароль самый распространенный и одновременно наиболее уязвимый. Множество интернет-порталов и сервисов в целях безопасности запрещают пользователям создавать простые пароли, что, с одной стороны, хорошо, а с другой — просто неудобно. Если же умножить данный факт на десяток подобных сайтов, то мы получим настоящую головную боль. Для устранения пробела между человеческим фактором и безопасностью данных на помощь приходят менеджеры паролей, которые берут на себя организацию паролей пользователя. Однако при таком подходе получается, что безопасность пользователя зависит только от одного — от мастер-пароля.
Корпоративная АТС на базе Asterisk предоставляет широкие возможности по обеспечению переговоров в IP-сетях, позволяет более эффективно управлять организацией и существенно экономить на звонках. Но из-за слабой защищенности или неправильной настройки VoIP-сервис может стать причиной серьезных финансовых потерь. В этой статье мы рассмотрим, как этого не допустить.
В работе почти каждого человека непременно есть цифры, от которых зависит всё. Посещаемость сайта, время отклика или количество коммитов — что угодно! И если поместить эти цифры на самое видное место, они сразу становятся либо отличным способом оперативно принимать решения, либо просто наглядным инструментом мотивации. А самый лучший способ сделать это — это собственный дешборд, информационное табло, которое можно повесить на самом видном месте в офисе.
Многим пентестерам знакома проблема, когда при проведении аудита безопасности пейлоады перехватываются антивирусными программами. И хотя практически всегда можно обойти антивирусную защиту клиента, на создание и развертку нужных для этого решений уходит слишком много времени. Нам хотелось иметь такую же возможность при проведении своих пентестов, чтобы можно было продемонстрировать нашим клиентам более реалистичные сценарии проникновения. Так и зародился проект Veil-Evasion.
Прошивки смартфонов многих производителей — это зачастую нечто гораздо большее, чем просто Android. Тот же Galaxy S4 просто-таки нафарширован различными функциями. С другой стороны, часто дополнительная функциональность оказывается настолько удачной, что возникает желание немедленно обратиться в Google с просьбой включить ее в ванильный Android. К счастью, даже если Google не ответит, всегда найдется приложение, повторяющее нужную функцию достаточно точно.
Сегодня мобильный гаджет — это уже не роскошь и не игрушка гика, назначение которой известно только ему самому, а такая же обычная вещь, как телевизор или микроволновка. Большинство из нас владеют не только смартфоном, но и планшетом, ноутбуком, портативной игровой приставкой, а у многих есть умные HDMI-стики под управлением Android. Проблема всего этого многообразия только в том, что в мобильных ОС нет средств для синхронизации и удаленного взаимодействия множества устройств.
С детства мы слышали, что хорошие — это разведчики, они работают на наших. А плохие — это шпионы, это чужие — те парни в черных очках, в застегнутых на все пуговицы макинтошах и с пачкой долларов в кармане. Наступил двадцать первый век, и теперь вовсе не прорезиненные плащи называют макинтошами, хотя шпионы в них все равно заводятся… Встречай сегодня на арене: шпионское ПО от «доброй» и «злой» (как посмотреть, а?) сторон силы.
Думаю, каждый читатель журнала знает, какой важный ивент прошел в ноябре прошедшего года. Да, конечно же, я о конференции ZeroNights. На этом мероприятии была отдельная секция, где можно было что-нибудь поломать, например «Вдоль и поперек» от PentestIT и «Сломай меня» от «Лаборатории Касперского». Последнему посвящена эта статья.
Разработчики давно поняли: чтобы сделать программу по-настоящему гибкой и расширяемой, нужно добавить внутрь хороший скриптовый язык. Тем более что придумывать ничего не надо: есть Lua, который прекрасно интегрируется, чем и воспользовались создатели Wireshark, Nmap и даже малвари.
Сегодня речь пойдет о технологиях, ставших незаменимыми при разработке игр. Можно, конечно, написать движок с нуля самому, но это займет неоправданно много времени. Пока ты точишь его под конкретный проект, не факт, что к финалу разработки жанр, а то и целая отрасль индустрии не устареют. Поэтому рационально использовать готовый движок.
С момента выпуска стабильной версии FreeBSD 9.0 прошло меньше двух лет, а команда разработчиков уже готова представить следующий релиз своей ОС под красивым номером 10. Новая FreeBSD теперь компилируется с помощью Clang, поставляется в комплекте с DNS-сервером Unbound, имеет собственный гипервизор, аналогичный KVM, умеет работать со сжатыми томами ZFS и включает в себя еще несколько десятков интересных изменений.
Мобильные технологии развиваются так быстро, что мы уже не успеваем менять смартфоны. Вроде бы только купил новый девайс, а на рынке уже появились более продвинутые модели с большим количеством памяти, процессорных ядер и поддержкой NFC. И черт бы с ними, с ядрами, два, четыре, восемь, хоть шестнадцать. Новая версия ОС тормозит! Вот это настоящая проблема.
Как насчет того, чтобы проанализировать тысячи или, еще лучше, десятки тысяч iOS приложений, проверив их на типичные баги — вшитые в бинарник токены, ключи авторизации и прочие секреты? Эксперимент оказался интересным.