Search
Write a publication
Pull to refresh
7
0
Garrett @Garrett

User

Send message

Атака пользователей WLAN через rogue-сервисы, или почему PSK — не самый лучший выбор для гостиницы

Reading time6 min
Views15K
В этом посте хочу поделиться историей одной гениально простой атаки, которую наблюдал в прошлом году, и обсудить последствия. Здесь не будет «мяса» для хакеров, но будет:
  • Плюс одна поучительная байка в коллекцию «для бесед с пользователями» админам и безопасникам.
  • Почему в беспроводных сетях защищать нужно не только LAN от WLAN, и зачем нужен т.н. Wireless Firewall.
  • Рекомендации, как построить публичную сеть Wi-Fi для избежания подобных проблем.
  • Почему в гостиницах и других публичных сетях даже незашифрованный Captive Portal может оказаться предпочтительнее шифрования с PSK.

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

Обратная сторона луны

Reading time14 min
Views48K
При написании приложений, одной из важнейших вопросов являются потребление памяти и отзывчивость (скорость работы).

Считается, что сборщик мусора – черный ящик, работу которого нельзя предугадать.

А еще говорят, что GC в .NET практически не настраиваемый. А еще, что нельзя посмотреть исходники как классов .NET Framework, так и CLR, GC и т.п.

А я скажу как бы ни так!

В данной статье мы рассмотрим:
  • структура организации размещения объектов в памяти
  • CLR 4.5 Background Server GC
  • правильная настройка сборщика мусора
  • эффективный апгрейд приложений до .NET 4.0+
  • правильное ручное управление памятью

Читать дальше →

Живые тайлы (Live tiles) в Windows 8 (WinRT)

Reading time21 min
Views24K
UI Windows 8 был существенно переработан и появился стартовый экран с тайлами (tiles – далее в скобках буду указывать используемые английские терминологии). Одним из основных преимуществ тайлов перед иконками – это возможность «оживления» (live tile) и предоставления важной для пользователя информации непосредственно на тайле. Кроме того, есть возможность создать вторичные тайлы (secondary tiles), которая позволяет переходить в приложение с определенными параметрами или на страницу вглубь приложения. В качестве примера можно привести погодное приложение отображающее погоду на основном тайле и погоду в выбранных городах на вторичных тайлах.

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

В этой статье рассмотрим следующие пункты.
подробнее

10 критически важных event ID для мониторинга

Reading time4 min
Views315K

Рэнди Франклин Смит (CISA, SSCP, Security MVP) имеет в своем арсенале очень полезный документ, рассказывающий о том, какие события (event IDs) обязательно должны отслеживаться в рамках обеспечения информационной безопасности Windows. В этом документе изложена крайне полезная информация, которая позволит Вам “выжать” максимум из штатной системы аудита. Мы подготовили перевод этого материала. Заинтересованных приглашаем под кат.
Читать дальше →

ASP.NET MVC 3/4: Противодействие взлому

Reading time5 min
Views25K


Не так давно прочитал очередную статью о SQL-инъекциях на хабре, статья была посвящена правда PHP, завязались споры как нужно поступать с данными от пользователя, через какие функции их прогонять, с PHP знаком поверхностно, но общую картину усвоил. Тогда и родилась идея показать как обстоят дела с безопасностью в ASP.NET MVC.

Читать дальше →

Введение в Javascript Source Maps

Reading time7 min
Views136K
Вы когда-нибудь думали, как было бы здорово, если бы слитый в один файл и минифицированный яваскрипт код в production-окружении можно было удобно читать и даже отлаживать без ущерба производительности? Теперь это возможно, если использовать штуку под названием source maps.

Если коротко, то это способ связать минифицированный/объединённый файл с файлами, из которых он получился. Во время сборки для боевого окружения помимо минификации и объединения файлов также генерируется файл-маппер, который содержит информацию об исходных файлах. Когда производится обращение к конкретному месту в минифицированном файле, то производится поиск в маппере, по которому вычисляется строка и символ в исходном файле. Developer Tools (WebKit nightly builds или Google Chrome Canary) умеет парсить этот файл автоматически и прозрачно подменять файлы, как будто ведётся работа с исходными файлами. На момент написания (оригинальной статьи — прим. перев.) Firefox заблокировал развитие поддержки Source Map. Подробнее — на MozillaWiki Source Map.
Читать дальше →

ЦОД повышенной ответственности: фотоэкскурсия

Reading time12 min
Views118K
Больше 15 лет мы строим и обслуживаем дата-центры для клиентов. Наш третий собственный дата-центр «Компрессор» — объект, в котором воплотилось многое из накопленного опыта.


Распределительная


Стойки

Ниже рассказ про устройство ЦОД в картинках и объяснения, где, что и как работает.

Осторожно, трафик.
Читать дальше →

Unbiased rendering (рендеринг без допущений)

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


Изображение отрендерено с помощью Maxwell Render.

Читать дальше →

Шпаргалки для тех, кто делает первые шаги

Reading time1 min
Views31K


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

Шпаргалка по электронным компонентам (PDF, 168Kb)
Шпаргалка по контроллерам AVR (ч.1) (PDF, 61Kb)
Шпаргалка по контроллерам AVR (ч.2) (PDF, 61Kb)

PS: Там же, на сайте, имеется любопытный блог с описанием эффектных электронных поделок. Культура исполнения на высоте, приведены ссылки на open source прошивки.

«HTML5 — будущее игровой индустрии». Интервью с создателями фрейморка Construct

Reading time6 min
Views8K
Том Галлен и Эшли Галлен — братья, основатели компании Scirra и создатели фреймворка Construct, с помощью которого создать игру может любой желающий, даже без знания программирования. Construct Classic распространяется бесплатно с открытыми исходниками и предназначен для создания DirectX-игр (есть SDK и поддержкой плагинов на C++). На его основе сделан условно-бесплатный Construct 2 для HTML5-игр, где в качестве движка используется Box2D. Описание см. в статье «Разработка 2D игр под Windows и HTML5 без программирования».

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

Размер Java объектов

Reading time5 min
Views195K
Знаете сколько в памяти занимает строка? Каких только я не слышал ответов на этот вопрос, начиная от «не знаю» до «2 байта * количество символов в строке». А сколько тогда занимает пустая строка? А знаете сколько занимает объект класса Integer? А сколько будет занимать Ваш собственный объект класса с тремя Integer полями? Забавно, но ни один мой знакомый Java программист не смог ответить на эти вопросы… Да, большинству из нас это вообще не нужно и никто в реальных java проектах не будет об этом думать. Но это, ведь, как не знать объем двигателя машины на которой Вы ездите. Вы можете быть прекрасным водителем и даже не подозревать о том, что значат цифры 2.4 или 1.6 на вашей машине. Но я уверен, что найдется мало людей, которые не знакомы со значением этих цифр. Так почему же java программисты так мало знают об этой части своего инструмента?

Integer vs int

Все мы знаем, что в java — everything is an object. Кроме, пожалуй, примитивов и ссылок на сами объекты. Давайте рассмотрим две типичных ситуации:
//первый случай
int a = 300;
//второй случай
Integer b = 301;

В этих простых строках разница просто огромна, как для JVM так и для ООП. В первом случае, все что у нас есть — это 4-х байтная переменная, которая содержит значение из стека. Во втором случае у нас есть ссылочная переменная и сам объект, на который эта переменная ссылается. Следовательно, если в первом случае мы определено знаем, что занимаемый размер равен:
sizeOf(int)

то во втором:
sizeOf(reference) + sizeOf(Integer)

Забегая вперед скажу — во втором случае количество потребляемой памяти приблизительно в 5 раз больше и зависит от JVM. А теперь давайте разберемся, почему разница настолько огромна.

Из чего же состоит объект?

Прежде чем определять объем потребляемой памяти, следует разобраться, что же JVM хранит для каждого объекта:
  • Заголовок объекта;
  • Память для примитивных типов;
  • Память для ссылочных типов;
  • Смещение/выравнивание — по сути, это несколько неиспользуемых байт, что размещаются после данных самого объекта. Это сделано для того, чтобы адрес в памяти всегда был кратным машинному слову, для ускорения чтения из памяти + уменьшения количества бит для указателя на объект + предположительно для уменьшения фрагментации памяти. Стоит также отметить, что в java размер любого объекта кратен 8 байтам!

Читать дальше →

То, чего вы не ждали от калькулятора. Пасьянс на bc

Reading time4 min
Views7.5K
Невинные развлечения с bash больше не кажутся мне чем-то особенным. В качестве своей следующей цели для экспериментов я выбрала GNU bc — консольный калькулятор и скриптовый математический язык программирования в одной коробке. Эта статья наверняка будет полезна всем линуксоидам и юниксоидам, не очень тесно знакомым с bc.



Итак, короткое введение в программирование на bc, кавай и нэки пасьянс на чистом bc и поэтессы.
Всё это можно найти под катом.

Новые бесплатные онлайн курсы от Stanford

Reading time1 min
Views24K
В начале текущего учебного года Stanford организовал 3 бесплатных онлайн курса (основаные на трёх стационарных курсах Стэнфорда): Machine learning, Artificial intelligence и Introduction to Database. Все курсы идут с видео лекциями и домашними заданиями. Для курсов Artificial intelligence и Introduction to Database предусмотрены ещё и экзамены. После успешного окончания любого из курсов будет выслан сертификат (digital-signed pdf) от преподавателя.

И вот, были анонсированы ещё несколько онлайн курсов, которые будут стартовать в январе/феврале 2012 года.

У нас есть замечательный шанс послушать некоторые знаменитые Стэнфордские курсы, записывайтесь!

Update Спасибо recky, который заметил, что добавились ещё несколько курсов. Один из CS секции — по криптографии, и два из Entrepreneurship секции:

UUpdate продолжают радовать, новый доступный курс:

Читать дальше →

Еще раз про IP-адреса, маски подсетей и вообще

Reading time7 min
Views1.5M
Чуточку ликбеза. Навеяно предшествующими копипастами разной чепухи на данную тему. Уж простите, носинг персонал.

IP-адрес (v4) состоит из 32-бит. Любой уважающий себя админ, да и вообще айтишник (про сетевых инженеров молчу) должен уметь, будучи разбуженным среди ночи или находясь в состоянии сильного алкогольного опьянения, правильно отвечать на вопрос «из скольки бит состоит IP-адрес». Желательно вообще-то и про IPv6 тоже: 128 бит.

Обстоятельство первое. Всего теоретически IPv4-адресов может быть:
232 = 210*210*210*22 = 1024*1024*1024*4 ≈ 1000*1000*1000*4 = 4 млрд.
Ниже мы увидим, что довольно много из них «съедается» под всякую фигню.


Записывают IPv4-адрес, думаю, все знают, как. Четыре октета (то же, что байта, но если вы хотите блеснуть, то говорите «октет» — сразу сойдете за своего) в десятичном представлении без начальных нулей, разделенные точками: «192.168.11.10».

В заголовке IP-пакета есть поля source IP и destination IP: адреса источника (кто посылает) и назначения (кому). Как на почтовом конверте. Внутри пакетов у IP-адресов нет никаких масок. Разделителей между октетами тоже нет. Просто 32-бита на адрес назначения и еще 32 на адрес источника.
Читать дальше →

Как создается аниме

Reading time3 min
Views228K
Многие из хабровчан, да и вообще айтишников, смотрят аниме. Еще больше видело его хотя бы краем глаза. Но как его создают?

Начинается все с идеи. Бывает, что устраивается мозговой штурм, где из целой кучи выбирают только одну, но зато лучшую. Бывает, решает все руководство. Но так или иначе, это самый первый и самый скучный этап. После выбора идеи решается состав команды, которая будет заниматься ее реализацией, ищутся спонсоры. Аниме на самом деле довольно дорогая вещь — стоимость показа 52 серий поздней ночью на 5-7 каналах телевидения приближается к 50 миллионам йен (около 21 миллионов рублей), а показ аниме Fullmetal Alchemist в 6 часов вечера стоил в 10 раз дороже!
Читать дальше →

Получаем изображение с оптического сенсора комьютерной мыши с помощью Arduino

Reading time3 min
Views237K
КПДВ, 111.3 KB

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

Доступно свыше 270 видео докладов конференции BUILD

Reading time1 min
Views4.5K


На прошлой неделе состоялась конференция BUILD, в ходе которой компания Microsoft представила широкой публике Windows 8 Developer Preview, Windows Server 8, Visual Studio 11 Developer Preview и множество других новинок. Кроме того, был запущен новый официальный сайт http://dev.windows.com, на котором можно найти всю необходимую информацию и загрузить предварительные версии инструментов разработки.

В ходе конференции для разработчиков и ИТ-специалистов было прочитано свыше 270 докладов. Мы рады сообщить, что доклады уже сегодня выложены онлайн и доступны для свободного просмотра и изучения. Перейдите по ссылке http://channel9.msdn.com/Events/BUILD/BUILD2011 и начните изучать новые технологии уже сейчас.

Кроме обычных докладов для просмотра доступны и пленарные доклады, в ходе которых Стивен Синофски и другие представители Microsoft делали анонсы новых технологий: Keynote #1 и Keynote #2.

ARM-микроконтроллеры STM32F. Быстрый старт c STM32-Discovery

Reading time5 min
Views396K
При изучении image любого незнакомого дела, особенно когда речь идет о микроконтроллерах, возникает вопрос — «С чего начать». Ведутся поиски статей по ключевым словам «Getting Started», неизбежно появляется дилема выбора среды разработки и программатора-отладчика. Чтобы помочь вам определиться с ответами на возникшие вопросы, я поделюсь своим опытом в освоении 32-битных контроллеров семейства STM32F от ST Microelectronics.

Выбор контроллера


Вариантов по сути дела было два — STM32F или NXP (LPC1xxx). На микроконтроллеры STM32F мой выбор пал по нескольким причинам.
Читать дальше →

Магистратура и аспирантура в Японии

Reading time4 min
Views37K
С опозданием поздравляю с началом учебного года всех хабровчан, для которых это событие не является простой календарной датой. Надеюсь, небольшой рассказ о магистратуре и аспирантуре в университете, где я сейчас работаю, вызовет у вас интерес.



Речь пойдёт об университете Aizu, где я тружусь в меру сил уже почти два года и, если не случится никаких неожиданностей, продолжу деятельность и в обозримом будущем. Кстати, на фотографии — наш кампус.
Читать дальше →

Information

Rating
Does not participate
Location
München, Bayern, Германия
Date of birth
Registered
Activity