Перейти к основному содержимому

Меню команд

Перейти на страницу или искать в каталоге

ИИ-инструменты и скрипты

Проверка безопасности кода C#

Проверьте код C# и ASP.NET Core до развёртывания: SQL, собранный из значений, Process.Start с внешними данными, BinaryFormatter и TypeNameHandling, жёстко заданные секреты, TLS с доверием всем сертификатам, слабая криптография, Html.Raw, XXE, пути к файлам и секреты в журналах.

$5.00

Что вы получите: 1 файл · 56.54 KB · ZIP

Варианты покупки

Описание товара

Одного conn.Query<User>($"... WHERE Email = '{email}'") или одного new BinaryFormatter().Deserialize(Request.Body) достаточно, чтобы потерять данные или контроль над сервером. Этот навык находит эти и ещё одиннадцать ошибок безопасности C# до развёртывания и объясняет, как исправить каждую из них.

Ваш агент запускает сканер для файлов .cs и представлений .cshtml и .razor. Сканер пропускает комментарии, тесты, сгенерированный код и папки bin и obj, понимает буквальные, интерполированные и необработанные строки, включая значения внутри {...}, отслеживает SQL, собранный в переменной или StringBuilder, до выполняющего его вызова и распознаёт значения из запроса (параметры контроллеров, Razor Pages и минимальных API, [FromQuery], [BindProperty], Request.Query, IFormFile.FileName). Он знает безопасные шаблоны, поэтому обычный код EF Core и Dapper не вызывает замечаний: FromSql и FromSqlInterpolated, ExecuteSqlInterpolated, FromSqlRaw с заполнителями {0}, параметры @Name, LINQ, константы и значения int, столбцы сортировки, выбираемые через switch или проверяемые по списку, Path.GetFileName, Url.IsLocalUrl и RandomNumberGenerator. Сканер никогда не компилирует и не запускает C#. Он возвращает BLOCK, REVIEW или NOT FLAGGED с указанием файла, строки, причины и более безопасного подхода. Секреты никогда не выводятся.

Что проверяется

BLOCK (исправить до публикации)

  • C01: SQL, собранный с помощью +, $"...{value}", string.Format или StringBuilder и выполняемый через SqlCommand, CommandText, Dapper, EF Core FromSqlRaw, ExecuteSqlRaw или SqlQueryRaw, EF6 SqlQuery либо NHibernate

  • C02: Process.Start или ProcessStartInfo, запускающие cmd, powershell или bash с изменяемой командой либо с программой или строкой Arguments из запроса

  • C03: BinaryFormatter, SoapFormatter, NetDataContractSerializer, LosFormatter, Json.NET TypeNameHandling без binder, Type.GetType с именем типа из запроса

  • C04: жёстко заданные пароли, ключи API, ключи подписи JWT, клиентские секреты, учётные данные, пароли, записанные прямо в коде начального заполнения Identity (UserManager.CreateAsync), а также Password= или AccountKey= в строках подключения

REVIEW (проверить до выпуска)

  • C11: обратные вызовы проверки сертификатов, всегда возвращающие true, и DangerousAcceptAnyServerCertificateValidator

  • C12: DES, TripleDES, RC2, режим ECB и фиксированные векторы инициализации

  • C13: MD5 или SHA для паролей, Rfc2898DeriveBytes или PBKDF2 с числом итераций менее 100 000, хеши Identity V2

  • C14: System.Random для токенов, одноразовых паролей, соли и кодов сброса

  • C15: Html.Raw, HtmlString и MarkupString со значениями, которые не являются фиксированным текстом (XSS)

  • C16: XmlUrlResolver, DtdProcessing.Parse и доверенные XSLT (XXE)

  • C17: пути к файлам из запроса в Path.Combine, File.*, FileStream или PhysicalFile

  • C18: Redirect(returnUrl) без Url.IsLocalUrl (открытое перенаправление)

  • C19: пароли, токены, строки подключения и заголовок Authorization, записываемые в журналы

Что входит в комплект

  • Сканер (Python 3.9+, только стандартная библиотека)

  • Руководство по правилам с объяснением причин и более безопасным подходом для каждого правила

  • Небезопасный и безопасный примеры API магазина на ASP.NET Core с представлением Razor, а также настоящий отчёт сканера по небезопасному примеру

Ограничения

Код анализируется как текст, без компилятора C#: типы неизвестны, значения отслеживаются в пределах одного файла. appsettings.json, web.config, файлы .csproj, пакеты NuGet и известные CVE не проверяются, а представления Razor проверяются только на вывод необработанного HTML. NOT FLAGGED не является гарантией безопасности.

Содержимое

Один ZIP-архив с 24 файлами: SKILL.md, сканер в scripts/ (7 файлов Python), references/rules.md (каждое правило с объяснением причин и более безопасным подходом) и examples/ (14 файлов примеров и report.md, настоящий результат работы сканера на небезопасном примере).

Как использовать: Это навык для агента: папка с файлом SKILL.md и скриптами Python, которые может запускать ИИ-агент для программирования, например Claude Code, Cursor или Codex CLI. Распакуйте архив в папку навыков вашего агента (для Claude Code: ~/.claude/skills/), затем попросите агента проверить проект. Скрипты также можно запускать отдельно с Python 3.9 или новее, без установки дополнительных пакетов. Они только читают ваши файлы: не подключаются к сети и ничего никуда не отправляют.

Что вы получите

1 файл · 56.54 KB

  • csharp-code-safety-check-1.0.0.zipZIP · 56.54 KB

Включено в Getly ProПолучить Pro

ЛицензияКоммерческое использование разрешено
Опубликовано12 нояб. 2026 г.
Размер файла56.54 KB
Формат файлаZIP
Версияv1.0

Теги

csharpdotnetaspnet-coresecuritysql-injectionai agent skill
R
RR HH

Частые вопросы

Доступ открывается сразу?

Да. Это цифровой товар - скачать его можно сразу после оплаты, прямо из своей библиотеки.

Можно ли использовать в коммерческих проектах?

Да. Коммерческое использование разрешено: в своём бизнесе и в том, что вы продаёте. Перепродавать и распространять сам файл нельзя.

Какие условия возврата?

Запросить возврат можно в течение 30 дней. Если что-то не так, оформите заявку в своём заказе - её рассмотрит команда Getly.

Какие форматы и размеры файлов я получу?

Вы скачаете 1 файл - ZIP - всего 56.54 KB.

Обновления бесплатны?

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

Цена

$5.00