Поиск файлов CC и SSN на сетевых дисках - PullRequest
1 голос
/ 25 апреля 2011

Я работаю над проектом, в котором нам нужно найти набор сетевых дисков, чтобы проверить каждый файл и найти номера кредитных карт и номера социального страхования.Я безуспешно пытался использовать программу Cornell Spider , так как при каждом ее использовании происходит сбой.

Я хотел бы знать, есть ли способ использовать Powershell илиязык сценариев, доступный в Windows, для выполнения анализа (я предполагаю совпадение строк), который будет соответствовать шаблонам номеров кредитных карт и номеров социального страхования (возможно, регулярное выражение).Если есть способ, и так как я не программист, мне было бы любопытно, если бы был какой-то код, с которым я мог бы сделать это.Кроме того, возможность сохранения / выгрузки результатов обнаруженного в файл (текст или CSV) также будет очень полезна.

Буду очень признателен за любые идеи или помощь, которые вы можете предоставить.

============================================================

Хорошо, я работал над тестовым сценарием и придумал следующее:

$spath = "C:\Users\name\Desktop\"
$opath = "C:\Users\name\Desktop\Results.txt"

$Old_SSN_Regex = "[0-9]{3}[-| ][0-9]{2}[-| ][0-9]{4}"
$SSN_Regex = "^(?!000)([0-6]\d{2}|7([0-6]\d|7[012]))([ -]?)(?!00)\d\d\3(?!0000)\d{4}$"
$CC_Regex = "^((?:4\d{3})|(?:5[1-5]\d{2})|(?:6011)|(?:3[68]\d{2})|(?:30[012345]\d))[ -]?(\d{4})[ -]?(\d{4})[ -]?(\d{4}|3[4,7]\d{13})$"
$CC_2_Regex = "^(\d{4}-){3}\d{4}$|^(\d{4} ){3}\d{4}$|^\d{16}$"

Get-ChildItem $spath -Include *.txt -Recurse | Select-String -Pattern $SSN_Regex | Select-Object Path,Filename,Matches | Out-File $opath
Get-ChildItem $spath -Include *.txt -Recurse | Select-String -Pattern $CC_Regex | Select-Object Path,Filename,Matches | Out-File $opath -Append
Get-ChildItem $spath -Include *.txt -Recurse | Select-String -Pattern $CC_2_Regex | Select-Object Path,Filename,Matches | Out-File $opath -Append

Кажется, это работает хорошо,проблема заключается в том, что если до или после элемента, который нужно сопоставить, есть пробел, перечисленные регулярные выражения не перехватывают его.Есть ли что-то, что я могу сделать по-другому, чтобы он улавливал элемент, если у него есть пробел до или после шаблона для сопоставления в файле?

1 Ответ

1 голос
...