Pull to refresh
0
0
Cool Admin @cooladmin

Инженер

Send message

Apple Metal в MAPS.ME

Reading time10 min
Views19K
imageВсем привет!

В мире существует огромное количество приложений на OpenGL, и, кажется, Apple c этим не вполне согласна. Начиная с iOS 12 и MacOS Mojave, OpenGL переведен в статус устаревшего. Мы интегрировали Apple Metal в MAPS.ME и готовы поделиться своим опытом и результатами. Расскажем, как рефакторили наш графический движок, с какими трудностями пришлось столкнуться и, самое главное, сколько у нас теперь FPS.

Всех, кто заинтересовался или раздумывает над добавлением поддержки Apple Metal в графический движок, приглашаем под кат.
Читать дальше →
Total votes 82: ↑81 and ↓1+80
Comments22

Поднимаем IDS/NMS: Mikrotik и Suricata c web-интерфейсом

Reading time9 min
Views48K
У меня, видимо, такая карма: как ни возьмусь за реализацию какого-нибудь сервиса на опенсорсе, так обязательно найду кучу мануалов, каждый по отдельности из которых в моем конкретном случае не сработает, готовое решение толком не заведется или не понравится, случится еще какая-нибудь неудобоваримость, и в итоге приходится самому пробиваться к результату.

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

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

Итак, сегодня Mikrotik (RouterOS), Suricata 4.1, Elasticsearch+Filebeat+Kibana 6.5.
Читать дальше →
Total votes 21: ↑21 and ↓0+21
Comments17

Реальная скорость Wi-Fi (на предприятиях)

Reading time11 min
Views43K
Непрекращающийся хайп вокруг гигабитных скоростей Wi-Fi современных стандартов провоцирует инженеров прояснять эту тему понятным для всех образом.
Что пытаются натянуть за уши маркетологи? Что говорят инженеры? Где же истина?
Как всегда, где-то рядом. Какой пропускной способности ожидать в реальных условиях и почему – вы найдете ответ в этой статье. Если совсем нет времени читать, а хочется знать волшебную цифру – 75 Мбит/c на двухдиапазонную точку доступа, на всех. Кому интересны детали, читайте дальше.


Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments32

Троянский пингвин: Делаем вирус для Linux

Reading time6 min
Views21K
Нет, я не собираюсь рассказывать, как написать своего шифровальщика-вымогателя, майнера или эксплуатировать супер-новую уязвимость, как вы могли подумать. И тем более я не горю желанием поднимать холивар «Linux безопаснее Windows?(да)». Моей целью было написание простого вируса для linux, некого, так сказать, «Just for Fun», единственной функцией которого является распространение своей копии. О том, что у меня получилось, я расскажу в этой статье. В конце я приведу ссылку на GitHub с исходниками.

image
Читать дальше →
Total votes 20: ↑13 and ↓7+6
Comments66

Темное искусство воскрешения: как восстанавливают данные с поврежденных носителей

Reading time8 min
Views68K

(с)

Восстановить данные — это не только вернуть к жизни полетевший жесткий диск. В широком смысле данные могут быть представлены на каком угодно носителе, а погибнуть — всеми возможными способами.

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

Так, компьютерные археологи могут восстановить семейные фотографии с поврежденного смартфона или данные с жесткого диска, уничтоженного преступником в попытке избавиться от доказательств, а также помогут воссоздать детали механизма, разрушенного несколько тысячелетий назад.
Total votes 60: ↑56 and ↓4+52
Comments73

Обход контроля учетных записей (UAC) путем пародирования доверенных директорий

Reading time5 min
Views22K

Эксперт по информационной безопасности Дэвид Уэллс (David Wells) опубликовал способ обхода контроля учетных записей UAC в Windows 10
Читать дальше →
Total votes 36: ↑35 and ↓1+34
Comments18

Азы работы магазина

Reading time7 min
Views34K


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

Магазин работает как цепочка конверсий, где каждый показатель поддаётся контролю сменой, владельцем точки, закупщиком или тем, кто определяет политику всей сети. Задача магазина как бизнес-юнита — переработать товар в выручку и принести при этом позитив клиенту. Поэтому задача продавца №1 всегда — чтобы человек вышел довольным. И только №2 — что-то продать. Исходя из этого строится отношение к правилам работы продаж и весь остальной здравый смысл. Быть хорошим, адекватным, правильным — экономически оправдано.
Читать дальше →
Total votes 75: ↑69 and ↓6+63
Comments136

Как мы боролись с Роскомнадзором и что из этого вышло

Reading time23 min
Views57K
Руководитель сервиса для регистрации бизнеса 1С-Старт Александр Раптовский о том, как отменить судебное решение о блокировке статьи на Хабре, инициированное Роскомнадзором.


Кадр из фильма «С меня хватит!» (Falling Down), 1992
Читать дальше →
Total votes 196: ↑194 and ↓2+192
Comments86

Microsoft начала тестирование облачного игрового сервиса xCloud на базе Azure, но с ним не все так гладко

Reading time5 min
Views6.4K
Вчера компания Microsoft в своем блоге сообщила о старте тестирования нового игрового сервиса xCloud. Цель xCloud — дать возможность пользователям играть в полноценные игры xBox на любых устройствах любой конфигурации, в первую очередь, на телефонах и планшетах. По задумке инженеров Microsoft, вся аппаратная обработка видеопотока будет осуществляться на стороне серверов xCloud, конечная картинка стримится через интернет на устройство пользователя, а последнему остается лишь управление за происходящим.



Оборудование project xCloud размещается на стойках облачного сервиса Azure. Пока система работает в тестовом режиме, география xCloud невелика, но в планах компании установить необходимое железо во всех дата-центрах Azure, а это 54 точки по всему миру. При этом компания достаточно амбициозно подходит к реализации xCloud и заявляет, что новая разработка Microsoft «освободит геймеров от аппаратной привязки». В тестовом режиме для управления происходящим на экране смартфона или планшета через Bluetooth подключается контроллер xBox One, но в дальнейшем планируется внедрить как систему сенсорного управления прямо через экран устройства, так и специальную накладку-контроллер.
Total votes 16: ↑15 and ↓1+14
Comments17

Как украсть деньги с бесконтактной карты и Apple Pay

Reading time24 min
Views271K
Как украсть деньги с бесконтактной карты из кармана? Насколько безопасен PayPass и Apple Pay?

В статье разбираются популярные мифы и сценарии мошенничества с бесконтактными системами оплаты на примере настоящего POS-терминала, карт PayPass/payWave и телефонов с функцией Google Pay/Apple Pay.

Рассматриваемые темы:

  • Можно ли НА САМОМ ДЕЛЕ украсть деньги, прислонившись POS-терминалом к карману? — мы попытаемся полностью воспроизвести этот сценарий мошенничества от начала до конца, с использованием настоящего POS-терминала и платежных карт в реальных условиях.
  • В чем разница между физическими и виртуальными картами Apple Pay? — как происходит связывание физической карты и токена Apple Pay, и почему Apple Pay во много раз безопаснее обычной карты.
  • Используем аппаратный NFC-сниффер (ISO 14443A) — воспользуемся устройством HydraNFC для перехвата данных между POS-терминалом и картой. Рассмотрим, какие конфиденциальные данные можно извлечь из перехваченного трафика.
  • Разбираем протокол EMV — какими данными обменивается карта с POS-терминалом, используемый формат запросов, механизмы защиты от мошенничества и replay-атак.
  • Исследуем операции без карты (CNP, MO/TO) — в каких случаях на самом деле(!) можно украсть деньги с карты, имея только реквизиты, считанные бесконтактно, а в каких нельзя.

Внимание!

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

Материалы в статье представлены исключительно в ознакомительных целях. Все сцены демонстрации мошенничества инсценированы и выполнены с согласия участвующих в них лиц. Все списанные деньги с карт были возвращены их владельцам. Воровство денег с карт является уголовным преступлением и преследуется по закону.
Total votes 329: ↑323 and ↓6+317
Comments394

Для чего хакерам Микротик и как я спрятал 100 тыс. RouterOS от ботнета

Reading time9 min
Views319K
RouterOS очень мощный инструмент в руках профессионалов и ответственных специалистов. Но в руках новичков или тех, кто делает всё на «и так сойдёт» Mikrotik начинает жить своей жизнью и превращается в ноду ботнета.

Ещё в мае 2018 я писал статью с рекомендациями как защитить свой Микротик.

Как ни странно, но в сети до сих пор тысячи «открытых» роутеров Mikrotik и армия ботнета пополняется.

Я в свободное от работы и отдыха время искал уязвимые устройства по всей сети и делал настройки в соответствии со своими рекомендациями, то есть добавлял правила фаервола, которые закрывали доступ к роутеру не из локальной сети. В комментариях писал информацию об уязвимости и оставлял адрес телеграм-канала @router_os, где можно было мне задать интересующие вопросы (у нормального админа они должны были появиться).



С мая по сегодняшний день я «вырвал» из лап ботнета более 100 тысяч устройств Mikrotik.

Учитывая то, что я не могу выступить на MUM 2018 в Москве, то свой доклад я решил опубликовать на habr.com
Читать дальше →
Total votes 81: ↑80 and ↓1+79
Comments115

Параллелизм в PostgreSQL: не сферический, не конь, не в вакууме

Reading time10 min
Views19K


Масштабирование СУБД – это непрерывно наступающее будущее. СУБД совершенствуются и лучше масштабируются на аппаратных платформах, а сами аппаратные платформы наращивают производительность, число ядер, памяти — Ахиллес догоняет черепаху, но все еще не догнал. Проблема масштабирования СУБД стоит во весь рост.

Компании Postgres Professional с проблемой масштабирования довелось столкнуться не только теоретически, но и практически: у своих заказчиков. И не раз. Об одном из таких случаев и пойдёт речь в этой статье.

PostgreSQL неплохо масштабируется на NUMA-системах, если это одна материнская плата с несколькими процессорами и несколькими шинами данных. О некоторых оптимизациях можно почитать здесь и здесь. Однако есть и другой класс систем, у них несколько материнских плат, обмен данными между которыми осуществляется с помощью интерконнекта, при этом на них работает один экземпляр ОС и для пользователя такая конструкция выглядит как единая машина. И хотя формально такие системы можно также отнести к NUMA, но по своей сути они ближе к суперкомпьютерам, т.к. доступ к локальной памяти узла и доступ к памяти соседнего узла отличаются радикально. В сообществе PostgreSQL считают, что единственный экземпляр Postgres, работающий на таких архитектурах, это источник проблем, и системного подхода к их решению пока нет.
Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments11

Администрирование 1С для самых маленьких. Часть первая — разделяй и властвуй

Reading time11 min
Views119K

Дисклеймер


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


Предисловие


Сначала я просто хотел написать небольшую статью о том, как мы разносили базы по службам, но в ходе углубления в этот процесс мы добавляли всякие разные штуки (мониторинг служб, потом мониторинг пользователей внутри 1С, потом прикрутили заббикс, и, наконец, пришли к CI/CD на базе 1С). В итоге я понимаю что пихать это в одну статью будет слишком — решил разделить на несколько. Ну а название навеяно циклом статей "сети для самых маленьких", которые принесли мне много приятных минут и к которым я отсылаю всех, кто "хочет изучить сети". Итак, мы приступаем!

Читать дальше →
Total votes 34: ↑30 and ↓4+26
Comments281

WiX.Py: cобираем MSI пакет «в три строчки»

Reading time3 min
Views12K

Нет времени и желания изучать километровые файлы WiX, чтобы собрать MSI инсталлер для своего проекта, погружаясь при этом в бездны MSDN? Хотите собирать инсталлер, описывая его простыми и понятными терминами, в несколько строк? Есть клиническая склонность к кроссплатформенности и сборкам под Linux & Docker? Ну тогда вам под кат!

Читать дальше →
Total votes 31: ↑29 and ↓2+27
Comments18

11 JavaScript-библиотек для визуализации данных, о которых стоит знать в 2018 году

Reading time7 min
Views41K
Мы живём во времена взрывного роста объёмов данных, генерируемых и потребляемых человечеством. Практически в каждом из разрабатываемых сегодня приложений данные либо используются где-то внутри них, либо визуализируются. Программисты, используя данные, стремятся сделать работу с их программами максимально комфортной.

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

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

image

Сегодня мы представляем вашему вниманию перевод материала, в котором рассмотрены опенсорсные JavaScript-библиотеки для визуализации данных.
Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments19

2019 — год, когда Intel остановился

Reading time4 min
Views114K
Заглядывать в будущее – рискованный талант, но сегодня на рынке микропроцессоров сложилась ситуация, которая, пожалуй, разворачивается впервые с 1978 года. Корпорация Intel, правившая балом производства полупроводниковых технологий, первый раз за 40 лет теряет хватку, уступая звание лидера небезызвестной компании TSMC, давно зарекомендовавшей себя в качестве партнера и производителя графических чипов NVidia, а с будущего года – и AMD.

image

Еще в далеком ныне 2014 году Intel планировала совершить очередной шаг вперед в покорении рубежей техпроцесса, представив первую модель, основанную на 10-нм технологии – но из-за технических проблем переход на новый, революционный по тем меркам техпроцесс, был отложен. Сначала на год, потом на два, а затем – на неопределенный срок. Впрочем, первые шаги к долгожданному переходу на 10-нм Intel все-таки сделала, представив на суд публике ультраэкономичные процессоры для тонких ноутбуков.

Но пока Intel топталась на месте с проблемной «десяткой», AMD успела сотворить невозможное. С выходом в 2016 году нового поколения процессоров Ryzen, красным удалось не только заинтересовать рядовых пользователей и энтузиастов, но и создать для себя универсальную платформу для дерзких экспериментов, благодаря чему свет увидели и профессиональные десктопные решения семейства Threadripper, и серверное семейство процессоров EPYC, вовсе перевернувшее все представления о возможностях красного гиганта, давно покинувшего этот сегмент рынка.

Всего за 2 года AMD успела поработать над ошибками, и представить уже новую, улучшенную версию прежней архитектуры, удивив и порадовав поклонников – Ryzen 2 учел практически все огрехи предшественника, Threadripper второго поколения обещает 32 (!) ядра там, где даже 16 неплохо удивляли, а EPYC вот-вот ворвется во множество компаний enterprise-класса, потеснив абсолютного короля серверного сегмента. К такому синие были совершенно не готовы…

image

Total votes 82: ↑72 and ↓10+62
Comments101

Изучаем процессы в Linux

Reading time7 min
Views158K

В этой статье я хотел бы рассказать о том, какой жизненный путь проходят процессы в семействе ОС Linux. В теории и на примерах я рассмотрю как процессы рождаются и умирают, немного расскажу о механике системных вызовов и сигналов.

Данная статья в большей мере рассчитана на новичков в системном программировании и тех, кто просто хочет узнать немного больше о том, как работают процессы в Linux.
Читать дальше →
Total votes 64: ↑62 and ↓2+60
Comments60

Список статей и литературы про NAS

Reading time7 min
Views23K


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


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

Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments57

Как работает yield

Reading time6 min
Views666K
На StackOverflow часто задают вопросы, подробно освещённые в документации. Ценность их в том, что на некоторые из них кто-нибудь даёт ответ, обладающий гораздо большей степенью ясности и наглядности, чем может себе позволить документация. Этот — один из них.

Вот исходный вопрос:
Как используется ключевое слово yield в Python? Что оно делает?

Например, я пытаюсь понять этот код (**):
def _get_child_candidates(self, distance, min_dist, max_dist):
    if self._leftchild and distance - max_dist < self._median:
        yield self._leftchild
    if self._rightchild and distance + max_dist >= self._median:
        yield self._rightchild

Вызывается он так:
result, candidates = list(), [self]
while candidates:
    node = candidates.pop()
    distance = node._get_dist(obj)
    if distance <= max_dist and distance >= min_dist:
        result.extend(node._values)
        candidates.extend(node._get_child_candidates(distance, min_dist, max_dist))
        return result


Что происходит при вызове метода _get_child_candidates? Возвращается список, какой-то элемент? Вызывается ли он снова? Когда последующие вызовы прекращаются?

** Код принадлежит Jochen Schulz (jrschulz), который написал отличную Python-библиотеку для метрических пространств. Вот ссылка на исходники: http://well-adjusted.de/~jrschulz/mspace/

Подробный и обстоятельный ответ
Total votes 141: ↑136 and ↓5+131
Comments41

Принципы работы протокола EIGRP

Reading time18 min
Views60K
В данной статье поговорим о EIGRP и обсудим принципы работы данного протокола. EIGRP является дистанционно-векторным протоколом, иногда говорят о его гибридности, но это не так. Почитайте начало статьи о OSPF и вы поймете почему EIGRP именно дистанционно-векторный протокол. EIGRP — усовершенствованный дистанционно-векторный протокол динамической маршрутизации, разработанный компанией Cisco. Начнем разбираться. Будем использовать следующую топологию:

My Image
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments7

Information

Rating
Does not participate
Date of birth
Registered
Activity