Perl Security
テイントモード、入力バリデーション、安全なプロセス実行、DBIパラメータ化クエリ、Webセキュリティ(XSS/SQLi/CSRF)、perlcriticセキュリティポリシーを網羅する包括的なPerlセキュリティ。
Install
/plugin marketplace add affaan-m/ECCThe repo is a Claude Code plugin marketplace. Run /plugin afterwards to pick the plugin that includes this skill.
npx skills add affaan-m/ECC --skill perl-securitygit clone --depth 1 https://github.com/affaan-m/ECC.git /tmp/ECC
mkdir -p ~/.claude/skills
cp -r /tmp/ECC/docs/ja-JP/skills/perl-security ~/.claude/skills/perl-securityPersonal skills live in ~/.claude/skills. Use .claude/skills in a project folder to share a skill with your team.
From the SKILL.md
# Perlセキュリティパターン
入力バリデーション、インジェクション防止、セキュアコーディングプラクティスを網羅するPerlアプリケーションの包括的なセキュリティガイドライン。
## アクティベートするタイミング
- Perlアプリケーションでユーザー入力を処理するとき
- PerlのWebアプリケーション(CGI、Mojolicious、Dancer2、Catalyst)を構築するとき
- セキュリティ脆弱性についてPerlコードをレビューするとき
- ユーザー指定パスでファイル操作を実行するとき
- PerlからシステムコマンドをExecuteするとき
- DBIデータベースクエリを書くとき
## 仕組み
テイント対応の入力境界から始め、次に外側に移動する: 入力をバリデートしてアンテイントし、ファイルシステムとプロセス実行を制約内に保ち、どこでもパラメータ化されたDBIクエリを使用する。以下の例は、ユーザー入力、シェル、またはネットワークに触れるPerlコードをリリースする前に適用することが期待されるデフォルトを示す。
## テイントモード
Perlのテイントモード(`-T`)は外部ソースからのデータを追跡し、明示的なバリデーションなしに安全でない操作で使用されることを防ぐ。
### テイントモードの有効化
```perl
#!/usr/bin/perl -T
use v5.36;
# テイントされた: プログラム外からのもの
my $input = $ARGV[0]; # テイントされた
my $env_path = $ENV{PATH}; # テイントされた
my $form = <STDIN>; # テイントされた
my $query = $ENV{QUERY_STRING}; # テイントされた
# PATHを早期にサニタイズ(テイントモードで必要)
$ENV{PATH} = '/usr/local/bin:/usr/bin:/bin';
delete @ENV{qw(IFS CDPATH ENV BASH_ENV)};
```
### アンテイントパターン
```perl
use v5.36;
# Good: 特定の正規表現でバリデートしてアンテイント
sub untaint_username($input) {
if ($input =~ /^([a-zA-Z0-9_]{3,30})$/) {
return $1; # $1はアンテイントされている
}
die "Invalid username: must be 3-30 alphanumeric characters\n";
}
# Good: ファイルパスをバリデートしてアンテイント
sub untaint_filename($input) {
if ($input =~ m{^([a-zA-Z0-9._-]+)$}) {
return $1;
}
die "Invalid filename: contains unsafe characters\n";
}
# Bad: 過度に許可的なアンテイント(目的を無効化する)
sub bad_untaint($input) {
$input =~ /^(.*)$/s;
return $1; # 何でも受け入れる — 無意味
}
```Details
- Skill name
perl-security- Repository
- affaan-m/ECC
- Path
docs/ja-JP/skills/perl-security/SKILL.md- License
- MIT
- Repo updated
- 30 October 2026
- Listed in
- hesreallyhim/awesome-claude-code
FAQ
What does the Perl Security skill do?
テイントモード、入力バリデーション、安全なプロセス実行、DBIパラメータ化クエリ、Webセキュリティ(XSS/SQLi/CSRF)、perlcriticセキュリティポリシーを網羅する包括的なPerlセキュリティ。
How do I install the Perl Security skill?
Claude Code plugin: /plugin marketplace add affaan-m/ECC. Skills go in ~/.claude/skills (personal) or .claude/skills (project), and Claude loads them automatically when a task matches the description.
Is Perl Security popular?
It lives in affaan-m/ECC, which has 293,665 GitHub stars and 43,456 forks, and is included in 1 curated skill list.
Related skills
Accessibility
294kaffaan-m/ECC
WCAG 2.2 レベル AA 標準を用いてインクルーシブなデジタルプロダクトを設計・実装・監査します。Web 用のセマンティック ARIA および Web・ネイティブプラットフォーム(iOS/Android)のアクセシビリティトレイトを生成するために使用します。
Agent Architecture Audit
294kaffaan-m/ECC
エージェントおよび LLM アプリケーション向けのフルスタック診断。12 層のエージェントスタックにおけるラッパーリグレッション、メモリ汚染、ツール規律の失敗、隠れた修復ループ、レンダリング破損を監査します。重要度順の発見事項とコードファーストの修正を生成します。エージェントアプリケーション、自律ループ、または LLM を活用した機能を構築する開発者に必須です。
Agent Eval
294kaffaan-m/ECC
カスタムタスクでコーディングエージェント(Claude Code、Aider、Codex など)をヘッドツーヘッドで比較し、合格率、コスト、時間、一貫性のメトリクスを測定します
Quarkus Security
294kaffaan-m/ECC
Buenas prácticas de seguridad en Quarkus para autenticación, autorización, JWT/OIDC, RBAC, validación de entrada, CSRF, gestión de secretos y seguridad de dependencias.
Laravel Security
294kaffaan-m/ECC
Laravel セキュリティベストプラクティス:認証・認可、バリデーション、CSRF、一括割当、ファイルアップロード、シークレット管理、レート制限、安全なデプロイメント
Quarkus Security
294kaffaan-m/ECC
Quarkus認証、認可、JWT/OIDC、RBAC、入力検証、CSRF、シークレット管理、依存関係セキュリティのセキュリティベストプラクティス。
Browse the most popular Claude skills, all security skills, or write your own with the skills generator.