StringsSharp
1.0.0
Extraia strings de arquivos. O pacote NUGET está disponível. Amostra são arquivos incluídos.
Pequeno utilitário que extrairá seqüências de peças de PE e outros arquivos. Útil para analisis de malware.
Você pode configurar o PageCode, a faixa de caracteres, o comprimento mínimo e máximo de seqüências de extração. Veja o exemplo abaixo.
Arquivos enormes são processados dividindo -os em pedaços de tamanho fixo. Cada pedaço subsequente se sobrepõe ao anterior, ou seja, as cordas localizadas na borda dos pedaços não serão perdidas
Tem a capacidade de filtrar os resultados. É baseado no arquivo de configuração, contendo expressões regulares.
// Desired file
string filename = "<filename>" ;
// Unicode. Char range: [u0020-u007E]. Min string length: 4. Max string length: 16
using ( StringsSharp . StringsSharp ss = new StringsSharp . StringsSharp ( 1200 , "[ u0020 - u007E ]" , 4 , 16 ) )
{
// Default chunk size is used
foreach ( MatchCollection matches in ss . Scan ( filename ) )
{
// Process matches here
}
}
// ASCII. Char range: [x20-x7E]. Min and string length are set to default
using ( StringsSharp . StringsSharp ss = new StringsSharp . StringsSharp ( 1251 , "[ x20 - x7E ]" ) )
{
using ( StringsSharp . StringFilter sf = new StringFilter ( configurationFile ) )
{
// Chunk size is set to 256
foreach ( MatchCollection matches in ss . Scan ( filename , 256 ) )
{
foreach ( Match match in matches )
{
// Result filtration in action
if ( sf . Scan ( match . Value ) )
{
// Process string here
}
foreach ( string regexpTag in sf . Scan ( match . Value ) )
{
// Process tags here
}
}
}
}
} Construa no VS 2017
Agradecimentos especiais a Ericzimmerman.