Как стать автором
Обновить
108
0
Михаил Борисов @MichaelBorisov

Пользователь

Отправить сообщение

Банковский троян Hesperbot – детальный анализ

Время на прочтение9 мин
Количество просмотров22K
Мы уже писали про Hesperbot, эта угроза представляет из себя новое банковское вредоносное ПО и имеет модульную архитектуру. Злоумышленники использовали его для проведения атак на пользователей различных стран, включая Турцию, Чехию, Португалию и Великобританию. Основной целью атак было похищение конфиденциальных данных онлайн-банкинга пользователей и установка мобильного компонента вредоносного кода на устройства под управлением Symbian, Android, Blackberry. Киберпреступники использовали убедительную схему фишинга для заманивания пользователей на вредоносные ссылки, что делало их подход еще более практичным.



Компрометация пользователя происходит при переходе по вредоносной ссылке. Ниже показана схема, используемая злоумышленниками.


Рис. Схема компрометации пользователя.

Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии6

Сайты готовятся к блокировкам: IPv6, I2P

Время на прочтение1 мин
Количество просмотров84K
Я, как владелец АнтиЗапрета (сервиса по обходу сайтов, заблокированных Роскомнадзором, Роспотребнадзором и ФСКН), часто просматриваю, откуда этот сайт посещают пользователи. В последнее время, я стал замечать трафик с торрент-трекеров и варез-сайтов. На многих из них есть информация по обходу блокировок в случае, если сайт попадет в реестр или уже в нем находится. Некоторые из сайтов не просто предлагают пользователям использовать прокси, но и что-то делают на своей стороне, продвигая более совершенные и, зачастую, удобные для пользователей технологии в массы.

nnm-club.ru

Один из крупнейших трекеров страны уже давно был полностью (сайт и сам трекер) доступен по IPv6 (стоит сказать, что никто из уполномоченных добавлять сайты в реестр органов не может зайти на IPv6-only сайт, и в реестр попадают только IPv4-адреса), а теперь сделал зеркало в I2P: nnm-club.i2p. Зеркало работает в тестовом режиме, и, в общем-то, работает все. Сейчас трекер переехал на новый адрес nnm-club.me, а на старом висит инструкция по обходу блокировок и все сообщения с форума в теме по обходу блокировок, которые пишут пользователи.
Читать дальше →
Всего голосов 88: ↑83 и ↓5+78
Комментарии40

Ноль без палочки?

Время на прочтение15 мин
Количество просмотров26K
Опубликовано в журнале Хакер #171 (апрель 2013)

Со временем некоторые вредоносные программы становятся своеобразными брендами в среде киберандеграунда. Как правило, они имеют широкое распространение по сравнению с другими вредоносами и используют различные технологичные фишки. К таковым можно отнести семейства Sality, Conficker, Waledac, Zeus, TDL и множество других. Как бы ни боролись с такими угрозами антивирусные компании, как говорится — иногда они возвращаются. В логичности использования раскрученного имени злоумышленникам не откажешь. Разбирая функционал очередной «зверушки», невольно задаешь себе вопрос — а когда это все началось? И выясняется, что и ни год, и ни два назад. Об одном таком семействе и будет рассказано далее.
Читать дальше →
Всего голосов 55: ↑49 и ↓6+43
Комментарии5

perl скрипт производящий голосовой обзвон (оповещение) через usb модем huawei e1550

Время на прочтение17 мин
Количество просмотров42K
В свое время, так как я много времени проводил в командировках, мной была приобретена замечательная игрушка — usb модем Huawei e1550. Но времена лихой молодости прошли, и необходимость в использовании данного девайса по прямому назначению отпала. Так он и пылился у меня на полке в течении нескольких лет. И пылился бы и дальше, но возникла задача сделать систему оповещения. Тут я и вспомнил про модем. Рассмотрев поставленную задачу — был вынужден отказаться от SMS оповещения в пользу голосового дозвона по причине невозможности получить уведомление о прочтении SMS. Решения на базе Asterisk показались мне несколько громоздкими, и почитав доку по модему я решил написать звонилку самостоятельно.

Причина публикации.

Несмотря на обилие статей по работе с USSD и SMS запросами, я не нашел ни одной реализации голосовых вызовов на скриптовых языках (таких как Perl, PHP, Node.js). Надеюсь данная статья будет для Вас хорошим подспорьем.
Читать дальше →
Всего голосов 60: ↑56 и ↓4+52
Комментарии19

0day в расширении Any.DO

Время на прочтение2 мин
Количество просмотров22K

Введение


Мы очень часто слышим об уязвимостях в плагинах браузеров, особенно Java. Security отделы в компаниях в курсе этого, отключают java/flash и другие плагины у пользователей, мониторят апдейты, читают security-рассылки. Мы слышим о них настолько часто, что уже инициативные люди создали специальные сайты с отсчетом дней, когда не было бы опубликовано 0day эсксплойтов — java-0day.com


Расширения VS Плагины


Но есть еще и расширения, которые встраиваются в браузеры и взаимодействуют с данными. Их безопасность была поднята не так давно, и первые, довольно глубокие, исследования провел Krzysztof Kotowicz. Краткий пересказ его исследований и найденная 0day уязвимость (позволяющая получить доступ к данным на всех сайтах через XSS путем отправки специального письма на gmail), которую игнорирует вендор — под катом.
Читать дальше →
Всего голосов 57: ↑56 и ↓1+55
Комментарии12

Немножко анонимен

Время на прочтение5 мин
Количество просмотров231K
Обсуждение анонимности нужно начинать не со слов прокси/тор/впн, а с определения задачи: анонимно подключиться к чужому серверу по SSH это одно, анонимно поднять свой веб-сайт это другое, анонимно работать в инете это третье, etc. — и все эти задачи решаются по-разному. Эта статья о задаче «анонимно работать в интернете как пользователь».

В последнее время на хабре появилось много статей на тему обеспечения анонимности в интернете, но они все описывают подход «немножко анонимен». Быть «немножко анонимным» практически бессмысленно, но, судя по комментариям к этим статьям, многие этого не понимают.

Во-первых, нужно адекватно оценивать потенциального противника. Если вы хотите быть «анонимным», значит вы пытаетесь избежать возможности связывания вашей активности в интернете с вашим физическим расположением и/или настоящим именем. Обычные пользователи и так не имеют возможности вас отслеживать (технически, социальные методы когда по вашему нику на форуме легко гуглится ваш аккаунт в соц.сетях со всеми личными данными мы здесь не рассматриваем). Ваш провайдер/соседи могут иметь возможность прослушать большую часть вашего трафика, но, как правило, вы им не интересны (да, соседи могут украсть ваши пароли, но заниматься отслеживанием вашей активности или вашей деанонимизацией они не станут). Что же касается владельцев используемых вами ресурсов (веб-сайтов, прокси/vpn-серверов, etc.) то у них в распоряжении множество средств по отслеживаю вас (DNS-leaks, Flash/Java-плагины, баннерные сети, «отпечатки браузера», множество разных видов кук, etc.) плюс серьёзный коммерческий интерес к тому, чтобы надёжно вас отслеживать (для таргетирования рекламы, продажи данных, etc.). Ну а правительство и спец.службы могут получить доступ и к данным, которые на вас собирают веб-сайты, и к данным, которые собирают провайдеры. Таким образом получается, что те, кто имеют возможность и желание вас отслеживать — имеют доступ к большинству возможных каналов утечки.

Во-вторых, каналов утечки информации очень и очень много. И они очень разнообразны (от внезапно отключившегося VPN до получения реального IP через Flash/Java-плагины браузера или отправки серийника на свой сервер каким-нить приложением при попытке обновления). Более того, регулярно обнаруживаются (и создаются) новые. Поэтому попытка блокировать каждый из них в индивидуальном порядке, уникальными для каждого методами, просто не имеет смысла, всё-равно что-то где-то протечёт.

В-третьих, при «работе в интернете» используется не только браузер — большинство пользуются так же IM, торрентами, почтой, SSH, FTP, IRC… при этом часто информация передаваемая по этим каналам пересекается и позволяет их связать между собой (.torrent-файл скачанный с сайта под вашим аккаунтом грузится в torrent клиент, ссылка пришедшая в письме/IM/IRC открывается в браузере, etc.). Добавьте сюда то, что ваша ОС и приложения тоже регулярно лазят в инет по своим делам, передавая при этом кучу деанонимизирующей вас информации…

Из всего этого логически следует то, что пытаться добавить «немножко анонимности» путём использования браузера со встроенным Tor, или настройкой торрент-клиента на работу через SOCKS — нет смысла. Большинство вас не сможет отследить и без этих мер, а тех, кто имеет возможности и желание вас отследить эти меры не остановят (максимум — немного усложнят/замедлят их работу).
Читать дальше →
Всего голосов 121: ↑111 и ↓10+101
Комментарии175

Мошеннические методы монетизации в free-to-play играх

Время на прочтение11 мин
Количество просмотров136K
Примечание переводчика: После публикации статьи с автором связался коммерческий директор из King.com, создателя Candy Crush Saga, и прояснил несколько моментов, после чего автор добавил пару замечаний. Добавленные абзацы отмечены курсивом.

Принудительная монетизация


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

Согласно исследованиям, добавление даже одной промежуточной валюты между потребителем и реальными деньгами, например «игровых самоцветов» (премиальная валюта), делает потребителя гораздо менее подготовленными к оценке стоимости сделки. Лишние промежуточные предметы, я называю их «наслоения», делают для мозга оценку ситуации очень сложной, особенно под напряжением.

Этот дополнительный стресс часто подаётся в форме того, что Роджер Дики из Zynga называет «весёлыми мучениями». Приём заключается в том, чтобы поставить потребителя в очень неудобное или неприятное положение в игре, а потом предложить ему убрать эти «мучения» в обмен на деньги. Эти деньги всегда замаскированы в слоях принудительной монетизации, поскольку потребитель, столкнувшийся с «реальной» покупкой, скорее всего не поведётся на трюк.
Читать дальше →
Всего голосов 138: ↑131 и ↓7+124
Комментарии76

Смертные грехи Программиста

Время на прочтение3 мин
Количество просмотров55K
Я знаю, что мой глас так и останется гласом вопиющего в пустыне администратора. Кто я, собственно? Всего лишь администратор, жалкое подобие демиурга, которым является Программист. Он – создатель сущего, а мой удел всего лишь поддерживать его творения в работающем состоянии и молиться, чтобы паства, то есть, пользователи, не распяли меня, когда у них что-то не работает.

Но даже Программист грешен, если не соблюдает семь заповедей.

Не возомни паству пастырем


Программист любит верить в то, что запускающий его программу пользователь подобен администратору. Увы, увы, такого права ему чаще всего никто не давал, поэтому если Программист об этом не подумал, то птица скорби Симург возносит свои крылья над администратором.
Читать дальше →
Всего голосов 182: ↑137 и ↓45+92
Комментарии92

Об одной изящной конструкции

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров76K

Введение


Начну статью с того, что расскажу, как я познакомился с этой изящной конструкцией. Занимаясь олимпиадным программированием, мы с моим преподавателем решали много интересных задач. И вот однажды мне попалась следующая задача:

Распечатать в порядке возрастания все несократимые дроби, знаменатель которых не превосходит заданного числа $n, \, n \le 100$.

Когда я прочитал условие задачи до конца, она не показалась мне сложной (она таковой и не является). Первое, что пришло мне в голову — это просто перебрать все знаменатели от $2$ до $n$ и для каждого знаменателя перебрать числители от $1$ до знаменателя, при условии, что числитель и знаменатель взаимно просты. Ну, а затем остается отсортировать их по возрастанию.

Такое решение верное, и задача прошла все назначенные ей тесты. Однако мой преподаватель сказал, что задачу можно решить намного красивее. Так я и познакомился с замечательной конструкцией: деревом Штерна — Броко.
Читать дальше →
Всего голосов 178: ↑172 и ↓6+166
Комментарии36

Защита оборудования от импульсных перенапряжений и коммутационных помех

Время на прочтение11 мин
Количество просмотров149K
    На написание данного текста меня сподвигло ощущение незнания многими принципов работы, использования (или даже незнание о существовании) параллельной защиты от импульсных перенапряжений в сети, в том числе и вызванных разрядами молний
    Импульсные помехи в сети довольно распространены, они могут возникать во время грозы, при включении/выключении мощных нагрузок (поскольку сеть это RLC цепь, то в ней при этом возникают колебания, вызывающие выбросы напряжения) и многие другие факторы. В слаботочных, в том числе цифровых цепях, это еще более актуально, поскольку коммутационные помехи достаточно хорошо проникают через источники питания (больше всего защищенными являются Обратноходовые преобразователи — в них энергия трансформатора передается на нагрузку, когда первичная обмотка отключена от сети).
    В Европе уже давно де-факто практически обязательна установка модулей защиты от импульсных перенапряжений (далее буду, для простоты, называть грозозащитой или УЗИП), хотя сети у них получше наших, а грозовых областей меньше.
    Особо актуальна стало применение УЗИП последние 20 лет, когда ученые стали разрабатывать все больше вариантов полевых MOSFET транзисторов, которые очень боятся превышения обратного напряжения. А такие транзисторы используются практически во всех импульсных источниках питания до 1 кВА, в качестве ключей на первичной (сетевой) стороне.
    Другой аспект применения УЗИП — обеспечение ограничения напряжения между нейтральным и земляным проводником. Перенапряжение на нейтральном проводнике в сети может возникать, например, при переключении Автомата ввода резерва с разделенной нейтралью. Во время переключения, нейтальный проводник окажется «в воздухе» и на нем может быть что угодно.

Читать дальше →
Всего голосов 47: ↑46 и ↓1+45
Комментарии9

Хороший пользовательский интерфейс

Время на прочтение7 мин
Количество просмотров120K

Вольный перевод статьи Якуба Линовски — «A Good User Interface».

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

16 практических идей
Всего голосов 165: ↑150 и ↓15+135
Комментарии63

Снова «Морской бой». Считаем число возможных расположений кораблей

Время на прочтение6 мин
Количество просмотров34K
Раз уж неделя «Морского боя» на Хабре продолжается, добавлю и я свои два цента.
При попытке найти оптимальную стратегию для игры за компьютер довольно быстро приходим к такому приближению:

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

В самом деле. Если возможная конфигурация только одна, то мы заканчиваем игру за один ход, расстреливая его корабли по очереди (ведь конфигурация нам известна!) Если же конфигураций больше, то нам нужно уменьшить их число как можно сильнее, тем самым увеличив имеющееся у нас количество информации. Если мы попадём в корабль, то ничего не потеряем (ведь ход остаётся у нас!), а если промахнёмся — то число оставшихся комбинаций будет минимальным из возможных после этого хода.


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

На первый взгляд, задача кажется неподъёмной. Число конфигураций представляется порядка 1020 (на самом деле их несколько меньше — ближе к 1015), так что на полный перебор времени уйдёт слишком много. Перебирать раскраски поля и оставлять только допустимые — не лучше: всё равно нам каждую комбинацию придётся просмотреть.

Что же ещё попробовать? Любой олимпиадник тут же ответит — динамическое программирование. Но как его организовать?

Читать дальше →
Всего голосов 60: ↑57 и ↓3+54
Комментарии55

Антихукинг — теория

Время на прочтение3 мин
Количество просмотров17K
Совсем недавно озадачился защитой приложений от перехвата системных api, решил поделиться и обсудить то, к чему пришел. Многие из вас знают, что перехват системных api сводится к перенаправлению оригинальной функции в нужное место, благодаря этому можно модифицировать параметры функции, возвращать результат отличный от оригинала, хранить оригинальный вызов с параметрами и многое другое. Так как это теоретическая часть, примеры в статье будут сопровождаться псевдокодом.
Читать дальше →
Всего голосов 36: ↑30 и ↓6+24
Комментарии19

Принцип цикады и почему он важен для веб-дизайнеров

Время на прочтение6 мин
Количество просмотров233K
Пару лет назад я прочитал интересные факты о жизненном цикле периодических цикад. Обычно мы не видим вокруг себя много этих насекомых, потому что бóльшую часть своей жизни они проводят под землёй и тихо сосут корни растений.

Однако, в зависимости от вида, каждые 7, 11, 13 или 17 лет периодические цикады одновременно массово вылезают на свет и превращаются в шумных летающих тварей, спариваются и вскоре умирают.

Хотя наши странные цикады весело уходят в иной мир, возникает очевидный вопрос: это просто случайность, или числа 7, 11, 13 и 17 какие-то особенные?
Читать дальше →
Всего голосов 696: ↑682 и ↓14+668
Комментарии119

Сапожник без сапог, или учет оборудования в ИТ-отделе. Часть I

Время на прочтение8 мин
Количество просмотров37K
В народе есть замечательная крылатая фраза «Сапожник без сапог». Она в полной мере описывает ситуацию, в которой оказываются ИТ-отделы организаций и обслуживающие компании. Люди, которые помогают другим пользователям решать проблемы с техникой, исправлять ошибки в программах, восстанавливать работоспособность программ и оборудования, пытаются навести порядок и привить культуру работы с оборудованием и программным обеспечением, сами не могут навести порядок у себя! О чем пойдет речь? О наболевшем… Учет оборудования и все, что с этим связано. Думаю Вам будет интересно услышать о том, как мы сделали систему учета предназначенную для ИТ-отделов, все таки хабр одно из крупнейших в России IT-сообществ.
Читать дальше →
Всего голосов 30: ↑25 и ↓5+20
Комментарии28

DIY кислородно-ацетиленовая сварка

Время на прочтение5 мин
Количество просмотров132K
Путь к IT у всех бывает очень тернистый. Я например в детстве хотел быть сварщиком — это же так красиво, когда вокруг летят брызги расплавленного металла! Но как-то не сложилось: мне начали выписывать журнал «Юный техник», где на последней странице одного из номеров рассказывали про робота, управляемого компьютером БК-0010… Но пунктик-то остался…

Также кто-то наверняка помнит передачу «Очумелые ручки», где из пластиковых бутылок делали различные креативные (как бы сказали сейчас) вещи.

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

* В каждом доме BarsMonster.
Читать дальше →
Всего голосов 149: ↑148 и ↓1+147
Комментарии65

Лето, отпуск, asterisk или сам себе VoIP оператор

Время на прочтение7 мин
Количество просмотров65K
Лето, отпуск, asterisk


Собрался я вместе со своим товарищем в период летнего отпуска поколесить на авто по Европе. А серой осенью есть мысли отправиться поближе к экватору. И вполне резонно встал вопрос связи. Skype, ICQ и прочие сервисы это конечно хорошо, но только не для старшего поколения. Жена и друзья без вопросов, а родители? Супруга сразу же сказала что передастом (человек который передает что-либо) быть не желает. Еще неплохо было бы свой номер рабочим оставить, чтоб у людей не было ощущения, что я канул в небытие. Опять же учитывая непростую роуминговую тарификацию наших операторов сотовой связи, в которой разбираться у меня нет никакого желания, сформировалось представление того, что я хочу получить в итоге.

  1. Звонки из любой точки мира по местным тарифам
  2. Прием звонков на свой личный номер
  3. Голосовые сообщения если я не доступен
  4. Голосовая почта
  5. Прием и передача смс
  6. Безопасность соединения

Читать дальше →
Всего голосов 36: ↑34 и ↓2+32
Комментарии51

Как тестировать электронику на производстве: анализ современных технологий

Время на прочтение10 мин
Количество просмотров80K


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

Читатели этой статьи познакомятся с основными методиками и задачами тестирования электронных устройств и получат общее понимание обеспечения качества на производстве. Особое внимание будет уделено достоинствам и недостаткам различных методов тестирования.
Читать дальше →
Всего голосов 49: ↑49 и ↓0+49
Комментарии29

Резюме программистов. Часть 1 (плохие)

Время на прочтение3 мин
Количество просмотров326K
Честно скажу, когда я искал работу, мое резюме смело можно было отнести к категории плохих. Да, там было несколько хороших секций (типа, а вот я написал 2 книжки и 30 статей), но также там была и таблица скилов со строчкой: C#, 1 year of experience, Intermediate (!).

Сейчас я читаю много резюме и приглашаю людей на интервью. За последние 3 года я провел около сотни интервью, а резюме повидал раз в 5 больше. Так что сейчас я довольно четко представляю, что я хочу видеть в резюме. Но для начала я расскажу, чего в резюме я видеть не хочу.

Шаблоны


Многие аутсорсинговые компании придумали себе шаблоны резюме. Мотивация, в принципе, понятна, они хотят все унифицировать чтобы использовать machine learning для извлечения хороших кандидатов все выглядели одинаково, как рядовые в строю. Однако, шаблоны эти одинаковы для всех позиций и составлены мудрыми CTO недалекими HR, которые понятия не имеют, что такое реально классный программист.

Читать дальше →
Всего голосов 272: ↑181 и ↓91+90
Комментарии211

Резюме программистов. Часть 2 (хорошие)

Время на прочтение3 мин
Количество просмотров283K
Я сполна получил п***й за первый пост. Самое время писать продолжение! Итак, чего же мне надо от резюме разработчика?

Все ниже в порядке приоритета.

Код


Я хочу видеть код, которым вы гордитесь. Я хочу знать, как вы называете переменные, как декомпозируете систему, как проверяете входные условия и насколько любите все усложнять. Очень желательно, если будет описание проблемы, иначе понимание кода и решения затруднено.
Читать дальше →
Всего голосов 201: ↑135 и ↓66+69
Комментарии341

Информация

В рейтинге
4 265-й
Зарегистрирован
Активность