Обновить
95
0
Александр Улитин@aulitin

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

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

Данные выборов получили, теперь деобфусцируем и очищаем

Время на прочтение5 мин
Охват и читатели49K

В 2021 году Центризбирком РФ обфусцировал статистические данные выборов на своем сайте. Несколько дней назад я сделал и выложил в комментариях к новости на хабре деобфускатор, чтобы помочь исследователям обнаружить статистические аномалии в результатах. Сегодня взял день отпуска, написать этот пост и поделиться очищенными данными в формате sqlite по федеральному избирательному округу, которыми поделился @illusionofchaos в посте Получаем данные результатов выборов с сайта Центризбиркома РФ

Под катом я предлагаю еще раз посмотреть, какими техническими методами затрудняли анализ программисты сайта ЦИК-а. Новых идей там нет, решения примитивные , даже обидно что кто-то за них квартиру получил[*]. Вся работа по написанию деобфускатора заняла меньше рабочего дня (точнее вечера + полночи). Основная цель этой статьи не в описании методов, а дополнительный анонс деобфускатора для исследователей. Обсуждать решение применить методики запутывания на государственном сайте куда интереснее, но этим бессмысленно заниматься в интернете.

Итак, они реализовали четыре метода:

Читать далее

Адаптация ZenCoding к C# — ZenSharp

Время на прочтение3 мин
Охват и читатели11K
Многие наверняка знают, что для HTML & CSS существует великолепный инструмент ZenCoding(emmet), который позволяет очень сильно упростить ввод рутинных конструкций языка, определяя специальный язык мнемоник. C# менее многословный язык, чем Html, но тем не менее, ввод его конструкций можно здорово оптимизировать.
Я предлагаю динамическое расширение идеи мнемоник, впервые услышанное мною от Дмитрия Нестерука [1].

proto

sample

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

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

Опыт написания рефакторинга

Время на прочтение4 мин
Охват и читатели6.8K
Недавно я столкнулся с проблемой коллизий имен из разных пространств имен. В C# есть возможность ввести синонимы для пространств имен, т.е. вместо использования полного имени класса ввести префикс, с помощью которого можно обращаться к данному пространству имен.

Я не нашел простого пути, как с помощью Visual Studio и ReSharperа ввести синоним в уже написанном классе. В связи с чем я решил реализовать свое дополнение к ReSharper которое позволило бы решить эту проблему. В этой статье я бы хотел рассказать о подводных камнях, с которыми пришлось столкнуться, реализуя, на первый взгляд, такой простой рефакторинг. (исходный код и реализация в конце статьи)
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность