Reverser's notes
212 subscribers
82 photos
3 files
55 links
Канал о моей жизни как инфобез-ресечера

Мета: https://t.iss.one/AnyKeyShikMeta
Download Telegram
Недавно наткнулся на интересную ветку на реддите, где люди выкладывают "шедевры" творчества своих коллег-программистов. Этот кусок мне понравился тем, что тут нет буквально ни одной правильной строчки
Планируется весьма годное мероприятие. Тем более, что я автор одного из сервисов. Как не вкинуть немного рекламы для друзей? :D
Forwarded from CBS Media
Уважаемые посетители нашего фитнес-клуба!

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

За каждым углом будет подстерегать наш злейший враг — майонез. Сложно представить себе праздничный стол без оливье, мяса по-французски и селёдки под шубой. И посему, пока мы с вами находимся на пике формы, 27 декабря в нашем клубе пройдет заключительный в этом году марафон — турнир за звание босса качалочки! 🦾

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

#view_cbs
Невычитанная версия статьи. Пока только первая из трех планируемых частей. Материала оказалось настолько много, что решил разбить, чтобы не перегружать читателей. По ощущениям, вторая статья про получение прав пользователя получится не намного меньше

UPD. Из-за того, что статья писалась без перерыва почти 12 часов количество очепяток на квадратный метр текста зашкаливает. Так что пока в черновиках. Завтра верну

UPD[2]. Произошла турбовычитка от хоршего знакмого, статья доступна :D

https://habr.com/ru/post/537688/
Недавно наткнулся на весьма нетривиальную фичу браузерного JavaScript. Для начала, скрин, как пруф. Когда я это увидел уровень моего удивления был непередаваем. Казалось бы, почему переменная неожиданно кастанулась из number'a в string? Оказалось, все очень просто и необычно одновременно. Дело в том, что в браузере есть обьект Window, а name - одно из его полей, которое имеет тип string. В итоге, переменная с таким именем и еще некоторыми (полный список можно посмотреть по ссылке ниже) всегда будет приводится к типу поля. Прикольная и нетривиальная фишка. И если не знать - можно здорово попасть

https://developer.mozilla.org/en-US/docs/Web/API/Window
Немного оффтопа. Или пару слов о том, почему я не люблю локализации

Возьмём название достаточно популярного некогда анимца
妖狐×僕SS
Очень часто можно увидеть перевод в стиле "Я, пес и секретная служба"

Но поехали разбирать оригинальное (японское) название
妖 [ヨウ (ё)] - волшебный (именно как прилагательное в русском)
狐 [コ (ко)] - лиса

Сразу оговорюсь. Кандзи имеют два чтения и лису можно читать как "ко" (онное чтение) и как всем привычную "кицунэ" (кунное чтение). Аналогично с кандзи "волшебный".

妖狐 [ようこ (ё:ко)] - ВНЕЗАПНО лиса-оборотень, которую обычно у нас и так называют кицунэ, хотя это и не совсем корректно.
僕 [ボク(боку)] - тут все интереснее. Этот кандзи может быть интерпретирован как "слуга" либо же в значении, когда мужчина говорит о себе (проще говоря, простое русское я, но мужского рода. Да, в японском это различается).

SS - тут все и так ясно, сокращение от Secret Service.

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

ЗЫ. Еще немного по поводу "Я и мой слуга". Либо то, либо то. По причинам уже описанным выше. В общем, странный перевод. Один из худших, среди всех, что я видел. Не самый, но один из.

UPD. Сам тайтл не зря лежал в отложенных лет 5. Очень средний и проходной, имхо. 4/10 при самом хорошем раскладе
(и отдельно пикча, потому что не влезла в сам пост :D)
Чистил древние папки с пикчами (какая ностальгия в этот момент разбирала - не передать). Откопал мемчик из 14-15 года, судя по всему
Очень классная статья с примерами. Сам я угадал далеко не все. Ошибся аж в двух пунктах :)
Forwarded from Хабр
​​Уверены, что отличите ассемблер от других языков?

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

馬鹿 (バカ [baka]) - всем известное слово "дурак"
Состоит из двух кандзи, которые имеют перевод "лошадь" и "олень"

Если честно, на этом моменте у меня сломался мозг
Хотя, есть у меня ощущение, я опять что-то не догоняю :D
Продолжу эстафету. Тем более, что статья реально очень крутая и мне понравилась и идея, и изложение
Forwarded from .рубик (Rubikoid)
Необычный дуалбут: ноутбук с «двойным дном»

Внезапно, весьма приличная техническая статья на хабре.

Хайлайты: ручками дергаем ATA, реверсим, а потом и патчим прошивку контроллера жесткого диска в памяти, отлаживаем UEFI, пишем уефишный драйвер...
Разгребал папки с древними программами и обнаружил эти два шОдевра. Пройти мимо не смог, потому что удалять жалко, а выкладывать в репу не хочется. Так что будут в лежать в гистах

https://gist.github.com/AnyKeyShik/a345724f66ff39fc747c239794506949

https://gist.github.com/AnyKeyShik/20d0bc06afb1809cef07f07b6b914674
На работе узнал про абсолютно новый (для себя) фреймворк, с которым придется много взаимодействовать - встречайте панду. По ощущениям - мегамощная штука. Пока больше сказать не могу, весь день ушел на ее раскуривание и сборку. Причем (спойлер) неудачную - она требует достаточно старых версий в своем окружении, поэтому изначальная попытка собрать все на хосте (когда же у меня уже пропадет эта привычка) закончилась неудачно. Но сейчас наконец-то получилось собрать все в докере и запустить тестовый скрипт. Ощущения двойственные - с одной стороны сделал почти ничего, с другой - предвкушение перед исследованием чего-то нового. По мере раскуривания буду делиться какими-то замечаниями и идеями. А, возможно, и пулреквестить в этот фреймворк :)
Итак, пришло время подвести кое-какие итоги работы с пандой. Пока только промежуточные. Зверь мощный. Зверь красивый. Мне понравился.
Бинарь можно анализировать как угодно. Более того, существует механика time-travel для GDB. По-хорошему, это убер-инструмент для динамического реверса. Пожалуй, лучший, который я когда-либо видел.
Но как всегда это ложка мёда теории в бочке дёгтя суровой реальности. Почему-то этот фреймворк очень странно работает с х86_64 линуксом. С остальным пока не пробовал, хочется завести для начала хоть где-то. Если быть конкретным - почему-то игнорятся сисколы pread64/pwrite64. И игнорируются любые сисколы от х86 приложений. Как я понял - проблема самой панды. Причем эти два фактора как-то связаны. Но пока не до конца в этом уверен. В любом случае, поддержку х86 приложений на х86_64 системе нужно впиливать. Так что в ближайшее время меня ждет увлекательное путешествие в новый для меня мир - внутренности фреймворка для бинарного анализа. Посмотрим, к чему это приведет и что будет в итоге.
При работе с пандой резко обнаружилось, что нужно достаточно глубоко представлять себе внутреннее устройство линукса. С ядром были давно планы поработать, но наконец-то дошли руки. Благо и на работе нужно. В итоге вылилось все в баянистую идею - шелл через ICMP-протокол. Пока только базовая версия, но со временем буду все это дорабатывать и улучшать. Пока результаты можно увидеть на моем гите
Сейчас времени не очень много, поэтому пока будет просто отзыв про крупнейшую ИБ-конференцию этого лета в РФ - ZeroNights, которая в этом году отпраздновала свое десятилетие. Конференция традиционно проходила в Санкт-Петербурге, но из-за пандемии даты несколько раз переносились и вместо обычного времени (зима-осень) она была проведена в августе, что, с моей точки зрения, некоторый плюс (мнение человека, любящего теплое время года :D)

!!!Warning!!!
Дальше будет много текста. И моего личного мнения :D

Чтобы было чуть проще, сначала скажу, что мне понравилось, а что вызвало неприятные ощущения (назовем это таким образом :D)

Итак, для начала о том, что было прям супер:
1. Новое место проведения, Севкабель Порт. Место реально живописное. К сожалению, во время самой конференции я почти не делал фотографий, о чем сейчас жалею - вечером вид на море просто бомбический
2. Классные доклады на Hardware Village, основном треке и просто суперский воркшоп по SELinux. Хотя хардвар и не обошелся без косяков, но об этом в минусах. Тут же скажу, что очень понравился доклад про реверс AVR - пусть и немного детский уровень, но товарищ Zen очень классно подавал материал, слушать было интересно в любом случае :) Основной трек был как по заказу целиком на мою тематику - низкий уровень, взаимодействие с EFI, немного про пывн ядра линукса. К сожалению, разорваться на все сразу не успел, поэтому это можно записать в минусы :D Пару слов про воркшоп с SELinux. Это, пожалуй, была лучшая попытка в ру-комьюнити ввести в курс, что же это за зверь и зачем он нужен. И почему его НЕ стоит отключать, как делают в большинстве мест у нас. К сожалению, про эту часть линукса впринципе очень мало материала - что на русском, что на английском. А про разработку модулей вообще почти ничего нет - только исходники чужих, так что порог вхождения достаточно высок (с моей точки зрения. Я его пока, к сожалению, преодолел на уровне "включено, но постоянно доконфигивается", что, имхо, не самый хороший уровень).
3. Неплохой мерч. Хотя дизайн футболок мне показался странноват - где матрешка? :D Но вообще я не большой фанат мерча, так что сюда это записал просто как бонус
4. Конечно же огромное количество знакомых. Не только из России, а в целом, хотя с некоторыми так и не удалось пересечься на конференции, несмотря на то, что находились буквально в 100 метрах друг от друга :D
5. Огромное количество низкого уровня. Это прям топчик :) Что в докладах, что на конкурсах (о них чуть ниже). Отдельное спасибо команде kks, ваша CTF была веселой, хотя и не без общего косяка.

Теперь немного о минусах. Это далеко не первая конференция по ПРАКТИЧЕСКОЙ безопасности, которую я посещаю. Минусы есть, некоторые некритичные и субъективные, но это же мой отзыв? Поехали:
1. Мало стендов с компаниями. Да, я не фанат мерча. Но на таких стендах всегда есть какие-то интересные конкурсы/можно просто интересно поговорить. В этом году, по-моему, было 4 стенда с разными компаниями, на которых толком не было интересных конкурсов, а люди были достаточно мало заинтересованы в общении. Возможно, это вызвано пандемией, на что я очень надеюсь, но, как говорится, "осадочек остался"
2. "Разнообразие" конкурсов. Почему-то в этом году все решили удариться в CTF. Да, я люблю подобные игры. Но в разумных переделах же. К примеру, у того же Сбера была очень интересная CTF, но на ее решение требовалось время примерно всей конференции. То есть, фактически, предлагалось прийти на такое мероприятие, чтобы поиграть. Я не против, но все же неформат. К самим задачам претензий мало - интересные и хорошо продуманные. Но хочется чего-то более динамичного в таких местах.
3. Еще пару слов про Hardware Village. Тут у меня немного подгорело на Flipper - они буквально выкупили всю площадку. При этом, если бы они сделали интересные конкурсы, то вопросов бы не было: вы пиаритесь, даете пощупать ваш девайс в интересных кейсах, люди хотят купить. По сути же, все сводилось к банальным случаям по типу repeat-атак и все. И самый длинный доклад на этой площадке тоже был от Zhovner'a, которые долго и мучительно рассказывал про создание сего девайса просто повторяя статьи на хабре (по крайней мере, по моим ощущениям). Был конкурс, где можно было выиграть Flipper, но там тоже людей ждал сюрприз - через три месяца бесплатная поддержка кончится и за обновление нужно будет заплатить. То есть ну прям такое. Ребята захотели и рыбку съесть, и по морде не получить. А так не работает. Еще осадочек оставил доклад про Flash-память, который тоже был немного скомканным. Хотя, возможно, мне просто не хватило каких-то знаний, чтобы понять все до конца. В любом случае, точка входа уже тоже есть и есть понимание, куда именно копать.
4. Воркшопы. Тут я просто не могу не выделить это в отдельный пункт. Да, к воркшопу про SELinux вопросов никаких. С моей точки зрения, это вообще лучшее, чтобы было на конференции и за два часа я без шуток получил больше информации, чем за полгода до этого (хотя, может, и не больше, но уж точно лучше она структурирована). Произошел другой неприятный инцедент. Первым в тот день должен был идти воркшоп по Redteam. Понятно, что такое я пропустить не мог, записался и вместе с другими начал ждать начала. И вот сидим мы, ждем, уже прошло запланированное время начала... И тут в официальный телеграм-канал с информацией о конференции приходит сообщение "извините, воркшоп отменяется по техническим причинам". И в итоге я не смог попасть больше никуда, кроме последнего, потому что записи уже были разобраны. Как оказалось - "технические причины" это спикер, который просто исчез и не отвечал на звонки. В общем, цирк с конями.

P.S. В тему конкурсов в CTF-формате - отдельно стоит отметить только конкурс на реверс AVR, уже ставший традиционным.
P.P.S. В тему конкурсов от крупных компаний а-ля Сбер - после того, как я узнал призы за победу, я перестал расстраиваться, что не поучаствовал. С моей точки зрения, подписка/брендированный мерч/рюкзак/итд не совсем то, что хотят люди, пришедшие в такое место.

Dixi.
Традиционная аниме-девочка идет отдельно по причине слишком большая стена текста :D