C# опережает спецификацию — что пошло не так?
В статье автор прослеживает эволюцию C#: рост фич и ключевых слов, ускоренное внедрение новых возможностей (records, nint/nuint, ref/primary constructors) опережает ECMA‑334 и порождает практические и дизайнерские проблемы.
Читать подробнее: https://habr.com/ru/articles/959980/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье автор прослеживает эволюцию C#: рост фич и ключевых слов, ускоренное внедрение новых возможностей (records, nint/nuint, ref/primary constructors) опережает ECMA‑334 и порождает практические и дизайнерские проблемы.
Читать подробнее: https://habr.com/ru/articles/959980/
#ru
@dot_net_c_sharp | Другие наши каналы
Langfuse + .NET через OpenTelemetry
В статье показан пример интеграции Langfuse с .NET через OpenTelemetry: локальный запуск в Docker, проект ASP.NET Core Minimal API, ключевые NuGet-пакеты и значение AddSource/ActivitySource для отправки трасс. Как добавить трассировку AI-запросов для Langfuse
В статье показан пример на C#: AiService оборачивает вызов ChatClient в Activity с тэгами Input/Output для привязки в Langfuse, возвращает Trace ID, есть пример curl, визуализация и ссылка на GitHub.
Читать подробнее: https://habr.com/ru/articles/960156/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье показан пример интеграции Langfuse с .NET через OpenTelemetry: локальный запуск в Docker, проект ASP.NET Core Minimal API, ключевые NuGet-пакеты и значение AddSource/ActivitySource для отправки трасс. Как добавить трассировку AI-запросов для Langfuse
В статье показан пример на C#: AiService оборачивает вызов ChatClient в Activity с тэгами Input/Output для привязки в Langfuse, возвращает Trace ID, есть пример curl, визуализация и ссылка на GitHub.
Читать подробнее: https://habr.com/ru/articles/960156/
#ru
@dot_net_c_sharp | Другие наши каналы
Context EXpressions — быстрый парсер математических выражений
Автор представил библиотеку для разбора строк и быстрого вычисления выражений с подставляемым контекстом (переменные в словаре). Поддерживаются + - * / ^, скобки и разделители ; , . Код на GitHub, обсуждение в Telegram-канале.
Читать подробнее: https://habr.com/ru/articles/960298/
#ru
@dot_net_c_sharp | Другие наши каналы
Автор представил библиотеку для разбора строк и быстрого вычисления выражений с подставляемым контекстом (переменные в словаре). Поддерживаются + - * / ^, скобки и разделители ; , . Код на GitHub, обсуждение в Telegram-канале.
Читать подробнее: https://habr.com/ru/articles/960298/
#ru
@dot_net_c_sharp | Другие наши каналы
Какие приложения установить на Windows и macOS
Список разбит по категориям: от браузеров и гейминга до утилит безопасности и инструментов для продуктивности.
Читать: «Какие приложения установить на Windows и macOS»
#ru
@dot_net_c_sharp | Другие наши каналы
Список разбит по категориям: от браузеров и гейминга до утилит безопасности и инструментов для продуктивности.
Читать: «Какие приложения установить на Windows и macOS»
#ru
@dot_net_c_sharp | Другие наши каналы
Лупа Windows без дрожания в играх
В статье показано, как с помощью лёгкой утилиты переназначить клавишу (например F12) для вызова лупы в режиме «Закреплено». Решение даёт стабильность, удобство и безопасность с точки зрения античитов; инструкция и ссылка доступны в материале. Одна кнопка для Лупы Windows — центр курсора и масштаб
В статье показано, как привязать горячую клавишу: PowerShell центрирует курсор, затем эмулируется Ctrl+Alt+- для системной Лупы. Есть инструкция по настройке, советы для игр и примечания по работе в Windows. Минималистичный зум на уровне ОС — быстро и безопасно
Коротко о решении для настраиваемого масштабирования экрана: всего 2 системных вызова, прозрачная работа без скрытых функций, совместимость через PowerShell. Используются keyboard, pyautogui, rich. Подходит для гейминга и профессиональной работы.
Читать подробнее: https://habr.com/ru/articles/960418/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье показано, как с помощью лёгкой утилиты переназначить клавишу (например F12) для вызова лупы в режиме «Закреплено». Решение даёт стабильность, удобство и безопасность с точки зрения античитов; инструкция и ссылка доступны в материале. Одна кнопка для Лупы Windows — центр курсора и масштаб
В статье показано, как привязать горячую клавишу: PowerShell центрирует курсор, затем эмулируется Ctrl+Alt+- для системной Лупы. Есть инструкция по настройке, советы для игр и примечания по работе в Windows. Минималистичный зум на уровне ОС — быстро и безопасно
Коротко о решении для настраиваемого масштабирования экрана: всего 2 системных вызова, прозрачная работа без скрытых функций, совместимость через PowerShell. Используются keyboard, pyautogui, rich. Подходит для гейминга и профессиональной работы.
Читать подробнее: https://habr.com/ru/articles/960418/
#ru
@dot_net_c_sharp | Другие наши каналы
Google пообещала, что до конца года все смогут вайб-кодить видеоигры с помощью ИИ
Google обещает, что до конца 2025 года любой сможет вайб-кодить видеоигры с ИИ — создавать их словами без единой строчки кода
Читать: «Google пообещала, что до конца года все смогут вайб-кодить видеоигры с помощью ИИ»
#ru
@dot_net_c_sharp | Другие наши каналы
Google обещает, что до конца 2025 года любой сможет вайб-кодить видеоигры с ИИ — создавать их словами без единой строчки кода
Читать: «Google пообещала, что до конца года все смогут вайб-кодить видеоигры с помощью ИИ»
#ru
@dot_net_c_sharp | Другие наши каналы
💊4❤3🤣2
MVC: управление панелью статистики в Unity
В статье автор показывает, как добавить кнопки открытия/закрытия панели статистики, связать View с Observer (UserAction), обработать события и прятать кнопку открытия. Показано разделение логики Statistics и Health без изменений модели. Зачем выносить логику UI: пример с Health и Statistics в Unity
Разбор выделяет StatisticsView и StatisticViewObserver, показывает передачу обновлений через события, отключение игрока через модель и устранение дублирования кода для упрощения связей и расширяемости UI. MVP: из Observer в Presenter — апгрейд Max HP
В статье показано, как заменить StatisticViewObserver на StatisticsViewPresenter, добавить MaxHealth в HealthModel и кнопку повышения HP в StatisticsView. Presenter обрабатывает ввод, обновляет модель и UI. Разбор вариантов MVP — в следующей статье.
Читать подробнее: https://habr.com/ru/articles/960848/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье автор показывает, как добавить кнопки открытия/закрытия панели статистики, связать View с Observer (UserAction), обработать события и прятать кнопку открытия. Показано разделение логики Statistics и Health без изменений модели. Зачем выносить логику UI: пример с Health и Statistics в Unity
Разбор выделяет StatisticsView и StatisticViewObserver, показывает передачу обновлений через события, отключение игрока через модель и устранение дублирования кода для упрощения связей и расширяемости UI. MVP: из Observer в Presenter — апгрейд Max HP
В статье показано, как заменить StatisticViewObserver на StatisticsViewPresenter, добавить MaxHealth в HealthModel и кнопку повышения HP в StatisticsView. Presenter обрабатывает ввод, обновляет модель и UI. Разбор вариантов MVP — в следующей статье.
Читать подробнее: https://habr.com/ru/articles/960848/
#ru
@dot_net_c_sharp | Другие наши каналы
CVE-2025-55315: request smuggling в ASP.NET Core
В статье объясняют уязвимость (CVSS 9.9): как скрытые HTTP‑запросы позволяют обходить проверки, получать доступ от имени других пользователей и похищать данные. Рекомендация — установить патчи и проверить код, работающий с HTTP‑потоками. Уязвимость CVE-2025-55315 в ASP.NET Core
Согласно статье, неверная обработка chunk extensions (одиночный \n вместо \r\n) в Kestrel даёт возможность request smuggling. Проблема уже исправлена — обновите ASP.NET Core/.NET до последних поддерживаемых версий. Важное: уязвимость в ASP.NET Core (CVE-2025-55315)
В статье описан request smuggling через chunk-extensions в HTTP/1.1, затрагивающий ASP.NET Core и старые версии .NET. Azure App Services уже закрыт, статус IIS неясен. Рекомендуется обновить .NET и проверить прокси/хостинг.
Подробности: https://andrewlock.net/understanding-the-worst-dotnet-vulnerability-request-smuggling-and-cve-2025-55315/
#en
@dot_net_c_sharp | Другие наши каналы
В статье объясняют уязвимость (CVSS 9.9): как скрытые HTTP‑запросы позволяют обходить проверки, получать доступ от имени других пользователей и похищать данные. Рекомендация — установить патчи и проверить код, работающий с HTTP‑потоками. Уязвимость CVE-2025-55315 в ASP.NET Core
Согласно статье, неверная обработка chunk extensions (одиночный \n вместо \r\n) в Kestrel даёт возможность request smuggling. Проблема уже исправлена — обновите ASP.NET Core/.NET до последних поддерживаемых версий. Важное: уязвимость в ASP.NET Core (CVE-2025-55315)
В статье описан request smuggling через chunk-extensions в HTTP/1.1, затрагивающий ASP.NET Core и старые версии .NET. Azure App Services уже закрыт, статус IIS неясен. Рекомендуется обновить .NET и проверить прокси/хостинг.
Подробности: https://andrewlock.net/understanding-the-worst-dotnet-vulnerability-request-smuggling-and-cve-2025-55315/
#en
@dot_net_c_sharp | Другие наши каналы
Типы языков программирования: от низкоуровневых до высокоуровневых — как выбрать для новичка
Выбираете первый язык программирования? Узнайте о низкоуровневых (C, C++), среднеуровневых (Java, C#) и высокоуровневых (Python, JavaScript) языках: плюсы, минусы и примеры применения. Чек-лист от экспертов поможет новичкам выбрать язык для веб, мобильной разработки или игр.
Читать: «Типы языков программирования: от низкоуровневых до высокоуровневых — как выбрать для новичка»
#ru
@dot_net_c_sharp | Другие наши каналы
Выбираете первый язык программирования? Узнайте о низкоуровневых (C, C++), среднеуровневых (Java, C#) и высокоуровневых (Python, JavaScript) языках: плюсы, минусы и примеры применения. Чек-лист от экспертов поможет новичкам выбрать язык для веб, мобильной разработки или игр.
Читать: «Типы языков программирования: от низкоуровневых до высокоуровневых — как выбрать для новичка»
#ru
@dot_net_c_sharp | Другие наши каналы
Tproger
Типы языков программирования: от низкоуровневых до высокоуровневых — как выбрать для новичка
Выбираете первый язык программирования? Узнайте о низкоуровневых (C, C++), среднеуровневых (Java, C#) и высокоуровневых (Python, JavaScript) языках: плюсы, минусы и примеры применения. Чек-лист от экспертов поможет новичкам выбрать язык для веб, мобильной…
Новые Copilot Custom Agents для .NET: C# Expert и WinForms Expert
GitHub представил экспериментальные агенты для .NET, которые анализируют код, предлагают лучшие практики, минимизируют лишние изменения и защищают .Designer.cs. Файлы доступны в @github/awesome-copilot — попробуйте и оставьте отзыв.
Подробности: https://devblogs.microsoft.com/dotnet/introducing-custom-agents-for-dotnet-developers-csharp-expert-winforms-expert/
#en
@dot_net_c_sharp | Другие наши каналы
GitHub представил экспериментальные агенты для .NET, которые анализируют код, предлагают лучшие практики, минимизируют лишние изменения и защищают .Designer.cs. Файлы доступны в @github/awesome-copilot — попробуйте и оставьте отзыв.
Подробности: https://devblogs.microsoft.com/dotnet/introducing-custom-agents-for-dotnet-developers-csharp-expert-winforms-expert/
#en
@dot_net_c_sharp | Другие наши каналы
Atomic v2: модульная архитектура для Unity
В статье описан фреймворк Atomic v2: сущности собираются из атомарных данных и поведений, ESB‑паттерн ускоряет прототипирование, тестирование в EditMode и переиспользование механик, приведены примеры кода и обсуждены риски подхода.
Читать подробнее: https://habr.com/ru/articles/959834/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье описан фреймворк Atomic v2: сущности собираются из атомарных данных и поведений, ESB‑паттерн ускоряет прототипирование, тестирование в EditMode и переиспользование механик, приведены примеры кода и обсуждены риски подхода.
Читать подробнее: https://habr.com/ru/articles/959834/
#ru
@dot_net_c_sharp | Другие наши каналы
Новая MIT‑альтернатива MediatR — Requestum
В статье автор представляет Requestum как открытую бесплатную замену MediatR после новостей о коммерциализации: явные интерфейсы для команд/запросов/событий, отдельные Execute/Handle/Publish, синхронные обработчики и поддержка множества подписчиков. Новый быстрый .NET-медиатор: Requestum
В статье представлен Requestum — альтернатива MediatR с явной типизацией команд/запросов/событий, поддержкой sync/async middleware и простой интеграцией в DI. Бенчмарки показывают заметный выигрыш в скорости и экономию памяти. Requestum — быстрая и простая CQRS-альтернатива MediatR
Новая библиотека с реальной синхронностью, приростом производительности 20–50% и 30–60% меньшими аллокациями, понятным API и минимальной миграцией. Доступна на NuGet, код под MIT.
Читать подробнее: https://habr.com/ru/articles/961936/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье автор представляет Requestum как открытую бесплатную замену MediatR после новостей о коммерциализации: явные интерфейсы для команд/запросов/событий, отдельные Execute/Handle/Publish, синхронные обработчики и поддержка множества подписчиков. Новый быстрый .NET-медиатор: Requestum
В статье представлен Requestum — альтернатива MediatR с явной типизацией команд/запросов/событий, поддержкой sync/async middleware и простой интеграцией в DI. Бенчмарки показывают заметный выигрыш в скорости и экономию памяти. Requestum — быстрая и простая CQRS-альтернатива MediatR
Новая библиотека с реальной синхронностью, приростом производительности 20–50% и 30–60% меньшими аллокациями, понятным API и минимальной миграцией. Доступна на NuGet, код под MIT.
Читать подробнее: https://habr.com/ru/articles/961936/
#ru
@dot_net_c_sharp | Другие наши каналы
🔥4
Когда технологии предают: умный дом как вход для атак — В статье предупреждают: 98% IoT-трафика не шифруется, в квартире 10–15 уязвимых устройств. Камеры и холодильники могут майнить и сливать личные данные, становясь частью ботнета. Описаны векторы атак и базовые меры защиты. Защита умных устройств: простые шаги и реальные кейсы
В материале описаны уязвимости IoT, кейс взлома кофеварки как точка входа в сеть, правила фаервола, детектор на Raspberry Pi и практический чеклист: смена паролей, отдельная сеть для IoT и регулярные обновления прошивок.
Читать подробнее: https://habr.com/ru/articles/962210/
#ru
@dot_net_c_sharp | Другие наши каналы
В материале описаны уязвимости IoT, кейс взлома кофеварки как точка входа в сеть, правила фаервола, детектор на Raspberry Pi и практический чеклист: смена паролей, отдельная сеть для IoT и регулярные обновления прошивок.
Читать подробнее: https://habr.com/ru/articles/962210/
#ru
@dot_net_c_sharp | Другие наши каналы
Claw Engine 1.2.0 — открыт релиз
Bear Head Studio выпустила лёгкий генеративный движок для инди: хаб и кроссплатформенное ядро на MonoGame+LeoECS, модули террейна, погоды, LOD, импостинга и физики. В планах генеративные инструменты и технодемка.
Читать подробнее: https://habr.com/ru/articles/962580/
#ru
@dot_net_c_sharp | Другие наши каналы
Bear Head Studio выпустила лёгкий генеративный движок для инди: хаб и кроссплатформенное ядро на MonoGame+LeoECS, модули террейна, погоды, LOD, импостинга и физики. В планах генеративные инструменты и технодемка.
Читать подробнее: https://habr.com/ru/articles/962580/
#ru
@dot_net_c_sharp | Другие наши каналы
👍2
Зачем нужны JetBrains.Annotations в .NET
Краткий обзор: атрибуты JetBrains дают метаданные для IDE и статического анализатора, улучшают подсказки и автокомплит, помогают нейросетям ориентироваться в проекте. Они не влияют на runtime; есть аналоги в System.Diagnostics.CodeAnalysis и нюансы для Unity. Аннотации и контракты в C#: обзор практических атрибутов
В статье объясняется набор атрибутов (NotNull, ItemNotNull, ContractAnnotation, Pure, MustUseReturnValue, StringFormatMethod, RegexPattern, PathReference, CollectionAccess, UsedImplicitly и др.), помогающих IDE и анализаторам управлять null, поведением методов и коллекциями.
Читать подробнее: https://habr.com/ru/articles/962718/
#ru
@dot_net_c_sharp | Другие наши каналы
Краткий обзор: атрибуты JetBrains дают метаданные для IDE и статического анализатора, улучшают подсказки и автокомплит, помогают нейросетям ориентироваться в проекте. Они не влияют на runtime; есть аналоги в System.Diagnostics.CodeAnalysis и нюансы для Unity. Аннотации и контракты в C#: обзор практических атрибутов
В статье объясняется набор атрибутов (NotNull, ItemNotNull, ContractAnnotation, Pure, MustUseReturnValue, StringFormatMethod, RegexPattern, PathReference, CollectionAccess, UsedImplicitly и др.), помогающих IDE и анализаторам управлять null, поведением методов и коллекциями.
Читать подробнее: https://habr.com/ru/articles/962718/
#ru
@dot_net_c_sharp | Другие наши каналы
Docker на Windows: версионирование окружения
В статье автор показывает, как добиться воспроизводимых сборок Windows‑контейнеров: совпадение ядра и образа, isolation=process, перенос data-root, правки daemon.json, офлайн‑репозитории, сборка Build Tools, установка WDK и решения ошибок hcsshim.
Читать подробнее: https://habr.com/ru/articles/962796/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье автор показывает, как добиться воспроизводимых сборок Windows‑контейнеров: совпадение ядра и образа, isolation=process, перенос data-root, правки daemon.json, офлайн‑репозитории, сборка Build Tools, установка WDK и решения ошибок hcsshim.
Читать подробнее: https://habr.com/ru/articles/962796/
#ru
@dot_net_c_sharp | Другие наши каналы
❤1
Куда делся DevExpress и чем его заменить?
В статье Леонида (DD Planet) рассказывается о проблемах после ухода DevExpress, рассматриваются платные и опенсорсные альтернативы для генерации Excel и PDF-отчетов и даются практические рекомендации по переходу. Как выбрать библиотеку для Excel и PDF-отчетов
Краткий обзор популярных инструментов для генерации отчетов: NPOI, DocumentFormat.OpenXml, ClosedXml, LibreOffice и коммерческий Aspose; а также PDF-решения (iText7, QuestPDF, DinkToPdf, PuppeteerSharp). В статье сравнение возможностей и пример создания PDF через PuppeteerSharp. Как генерировать отчёты: SSR + PuppeteerSharp
В статье показано, как рендерить HTML на сервере с помощью SSR (React + Node) и конвертировать его в PDF через PuppeteerSharp (C#). Вывод: заменить DevExpress можно, но без визуального дизайнера потребуется больше кода и вовлечённости разработчиков.
Читать подробнее: https://habr.com/ru/articles/962804/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье Леонида (DD Planet) рассказывается о проблемах после ухода DevExpress, рассматриваются платные и опенсорсные альтернативы для генерации Excel и PDF-отчетов и даются практические рекомендации по переходу. Как выбрать библиотеку для Excel и PDF-отчетов
Краткий обзор популярных инструментов для генерации отчетов: NPOI, DocumentFormat.OpenXml, ClosedXml, LibreOffice и коммерческий Aspose; а также PDF-решения (iText7, QuestPDF, DinkToPdf, PuppeteerSharp). В статье сравнение возможностей и пример создания PDF через PuppeteerSharp. Как генерировать отчёты: SSR + PuppeteerSharp
В статье показано, как рендерить HTML на сервере с помощью SSR (React + Node) и конвертировать его в PDF через PuppeteerSharp (C#). Вывод: заменить DevExpress можно, но без визуального дизайнера потребуется больше кода и вовлечённости разработчиков.
Читать подробнее: https://habr.com/ru/articles/962804/
#ru
@dot_net_c_sharp | Другие наши каналы
🤣1
«Friend» и контроль доступа в C#: IFriend, OnlyYou и Roslyn
Кратко: автор рассказывает о неизменяемых классах, эмуляции friend через вложенный IFriend, атрибуте [OnlyYou] с Roslyn Analyzer/Generator и FriendAnalyzer/FriendLib на GitHub и NuGet.
Читать подробнее: https://habr.com/ru/articles/961264/
#ru
@dot_net_c_sharp | Другие наши каналы
Кратко: автор рассказывает о неизменяемых классах, эмуляции friend через вложенный IFriend, атрибуте [OnlyYou] с Roslyn Analyzer/Generator и FriendAnalyzer/FriendLib на GitHub и NuGet.
Читать подробнее: https://habr.com/ru/articles/961264/
#ru
@dot_net_c_sharp | Другие наши каналы
От геймдева к AI: как нейросети изменили карьеру программиста
В статье программист с 20+ лет опыта рассказывает, как после выгорания GPT‑3.5 и новых reasoning‑моделей он переложил рутинный код на нейросети, портировал ru-ticker на Angular, автоматизировал парсинг и взялся за анализ документации. Как LLM ускорил разработку и сэкономил миллионы
Автор рассказывает, как с GPT‑4 и Python‑скриптами автоматизировал конвертацию документов, закрыл шесть проектов, заработал ~1 млн руб., запустил ботов и сервисы и обсуждает влияние «вайбкодинга» на индустрию. Вайбкодинг, дистрибуция и новая бедность
В статье рассказывают, как удешевление разработки и массовый выпуск похожих проектов сделали дистрибуцию главным барьером: тесты рынка требуют больших вложений, вход для инди закрывается, а выгода уходит к крупным корпорациям.
Читать подробнее: https://habr.com/ru/articles/962966/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье программист с 20+ лет опыта рассказывает, как после выгорания GPT‑3.5 и новых reasoning‑моделей он переложил рутинный код на нейросети, портировал ru-ticker на Angular, автоматизировал парсинг и взялся за анализ документации. Как LLM ускорил разработку и сэкономил миллионы
Автор рассказывает, как с GPT‑4 и Python‑скриптами автоматизировал конвертацию документов, закрыл шесть проектов, заработал ~1 млн руб., запустил ботов и сервисы и обсуждает влияние «вайбкодинга» на индустрию. Вайбкодинг, дистрибуция и новая бедность
В статье рассказывают, как удешевление разработки и массовый выпуск похожих проектов сделали дистрибуцию главным барьером: тесты рынка требуют больших вложений, вход для инди закрывается, а выгода уходит к крупным корпорациям.
Читать подробнее: https://habr.com/ru/articles/962966/
#ru
@dot_net_c_sharp | Другие наши каналы
Новое в .NET 10: UnsafeAccessorType упрощает доступ к приватным типам
Статья объясняет, как в .NET 10 атрибут UnsafeAccessorType в сочетании с UnsafeAccessor позволяет обращаться к приватным или не видимым на этапе компиляции типам (включая обобщения) без медленной рефлексии, с практическими примерами. UnsafeAccessor и UnsafeAccessorType в .NET: мощно и быстро, но не без ограничений
В статье описано, как эти атрибуты позволяют вызывать приватные конструкторы, методы и работать с закрытыми типами быстрее рефлексии, приведены примеры и указаны ограничения с дженериками, полями и ref-возвратами.
Подробности: https://andrewlock.net/exploring-dotnet-10-preview-features-9-easier-reflection-with-unsafeaccessortype/
#en
@dot_net_c_sharp | Другие наши каналы
Статья объясняет, как в .NET 10 атрибут UnsafeAccessorType в сочетании с UnsafeAccessor позволяет обращаться к приватным или не видимым на этапе компиляции типам (включая обобщения) без медленной рефлексии, с практическими примерами. UnsafeAccessor и UnsafeAccessorType в .NET: мощно и быстро, но не без ограничений
В статье описано, как эти атрибуты позволяют вызывать приватные конструкторы, методы и работать с закрытыми типами быстрее рефлексии, приведены примеры и указаны ограничения с дженериками, полями и ref-возвратами.
Подробности: https://andrewlock.net/exploring-dotnet-10-preview-features-9-easier-reflection-with-unsafeaccessortype/
#en
@dot_net_c_sharp | Другие наши каналы
👍4👎1
Bypass — как обойти клиентскую аутентификацию в .NET
В статье автор решает челендж Hack The Box: анализ .NET .exe, извлечение и AES-расшифровка ресурса, написание Python-скрипта и патч IL в dnSpy после неудачных попыток в IDA, что в итоге приводит к получению флага. Обход проверки в .NET: от IDA к dnSpy
Автор извлёк resource.bin, расшифровал AES и нашёл ключ в коде, затем в dnSpy поменял условный переход в IL (brfalse→pop), запустил патч и получил флаг HTB{…}. Подробный writeup в репозитории автора.
Читать подробнее: https://habr.com/ru/articles/963086/
#ru
@dot_net_c_sharp | Другие наши каналы
В статье автор решает челендж Hack The Box: анализ .NET .exe, извлечение и AES-расшифровка ресурса, написание Python-скрипта и патч IL в dnSpy после неудачных попыток в IDA, что в итоге приводит к получению флага. Обход проверки в .NET: от IDA к dnSpy
Автор извлёк resource.bin, расшифровал AES и нашёл ключ в коде, затем в dnSpy поменял условный переход в IL (brfalse→pop), запустил патч и получил флаг HTB{…}. Подробный writeup в репозитории автора.
Читать подробнее: https://habr.com/ru/articles/963086/
#ru
@dot_net_c_sharp | Другие наши каналы
🔥3