Perl Code Security Scanner Кроме RATS? (ДОЛЖЕН БЫТЬ _STATIC_) - PullRequest
1 голос
/ 19 июля 2009

Кроме RATS , есть ли другие сканеры безопасности Perl?

Возможно также любой STATIC только код perl движок, который может отслеживать поток данных или иным образом испорченный ввод?

Ответы [ 2 ]

3 голосов
/ 19 июля 2009

Perl :: Critic реализует ряд проверок безопасности, в значительной степени основанных на книге Perl Best Practices . Учитывая, что Perl :: Critic написан с использованием синтаксического анализатора PPI, он, вероятно, может достичь гораздо большей интроспекции, чем RATS.

Тем не менее, ни один сканер кода или утилита не найдет ошибки безопасности, которые являются результатом просто плохих практик программирования. Несколько простых лучших практик могут иметь большое значение. Страница man perlsec подробно описывает многие проблемы безопасности Perl и дает несколько полезных практических советов.

Из моего собственного опыта, проверяющего горы плохого кода:

  • Всегда использовать режим загрязнения (-T флаг)
  • Всегда use strict
  • Всегда use warnings
  • Всегда используйте заполнители в коде DBI
  • Всегда тщательно проверять и дезинфицировать любой ввод перед использованием его в качестве имени файла, имени метода / функции или аргумента системного вызова
  • Избегайте строк eval, когда это возможно; в любом случае это неэффективно. Никогда не вводите пользовательский ввод в строку eval.

Я уверен, что больше я не помню сейчас, но уже поздно. :)

0 голосов
/ 19 июля 2009

Что касается графического движка, я только что нашел PPI


Разбор, анализ и манипулирование Perl (без perl)


Основные функции включают в себя;


  1. Документация (по perl-коду)
  2. Структурный и качественный анализ
  3. Рефакторинг
  4. Макет
...