11 Commits

Author SHA1 Message Date
Gabor Gyorvari
c542a745e4 Sample update 2024-05-22 14:16:44 +02:00
Gabor Gyorvari
7ac65c0c8d Hide error arg fix 2024-05-22 14:04:07 +02:00
Gabor Gyorvari
5061e319e3 Sample update 2024-05-22 14:03:43 +02:00
Gabor Gyorvari
b2b2c4b081 Small typo, fix #88 2023-07-26 12:39:34 +02:00
Gabor Gyorvari
26458d20af Sample update 2023-05-14 08:59:43 +02:00
Gabor Gyorvari
70edc4210d Sample update 2023-05-14 08:45:20 +02:00
Gabor Gyorvari
aec0f56af5 Sample update 2023-02-25 07:47:30 +01:00
Gabor Gyorvari
2e8b9c604f Merge remote-tracking branch 'origin/master' 2022-11-18 14:10:57 +01:00
Gabor Gyorvari
802ead97cc Flag usage fix about wordpress version checksum 2022-11-18 14:10:45 +01:00
Győrvári Gábor
4666a101f9 Merge pull request #81 from Fot0n/patch-1
Make it compatible with php 8.1
2022-09-19 12:51:07 +02:00
Fot0n
e4755feeef Make it compatible with php 8.1
strftime was deprecated.
2022-09-19 13:49:05 +03:00
4 changed files with 47 additions and 8 deletions

View File

@@ -34,7 +34,7 @@ Usage: php scan.php -d <directory>
-t --time Show time of last file change -t --time Show time of last file change
-L --line-number Display matching pattern line number in file -L --line-number Display matching pattern line number in file
-o --output-format Custom defined output format -o --output-format Custom defined output format
-j --wordpress-version Version of wordpress to get md5 signatures -j <version> --wordpress-version Version of wordpress to get md5 signatures
--combined-whitelist Combined whitelist --combined-whitelist Combined whitelist
--custom-whitelist Loads whitelist from specified file and merge with existing --custom-whitelist Loads whitelist from specified file and merge with existing
--disable-stats Disable statistics output --disable-stats Disable statistics output

View File

@@ -27,6 +27,8 @@ ShellBOT
curl_get_from_webpage curl_get_from_webpage
file_get_contents('http://codepad.org file_get_contents('http://codepad.org
#mailers
leafmailer.pw
#Base64 String Samples. Each plain text string should have 3 base64 equivalents #Base64 String Samples. Each plain text string should have 3 base64 equivalents
@@ -205,6 +207,7 @@ http://www.fopo.com.ar/
@eval("\ @eval("\
";eval( ";eval(
eval(eval( eval(eval(
@eval(`
#Malware/Attack specific strings/fingerprints/signatures #Malware/Attack specific strings/fingerprints/signatures
MagelangCyber MagelangCyber
@@ -262,6 +265,7 @@ FaisaL Ahmed aka rEd X
smisbot smisbot
smotherbot smotherbot
Indonesian Hacker Rulez Indonesian Hacker Rulez
pwetan.com
# WP-VCD Malware https://www.getastra.com/blog/911/how-to-fix-wp-vcd-backdoor-hack-in-wordpress-functions-php/ # WP-VCD Malware https://www.getastra.com/blog/911/how-to-fix-wp-vcd-backdoor-hack-in-wordpress-functions-php/
wp-vcd wp-vcd
@@ -395,6 +399,7 @@ Array("1207", "3gso", "4thp", "501i", "502i", "503i", "504i", "505i", "506i",
# eval url decoded string # eval url decoded string
eval(rawurldecode(' eval(rawurldecode('
eval(htmlspecialchars_decode(
# simple obfuscated function # simple obfuscated function
'gz'.'unc'.'ompress' 'gz'.'unc'.'ompress'
@@ -404,3 +409,30 @@ eval(rawurldecode('
'base', '64_dec', 'ode' 'base', '64_dec', 'ode'
'cook', 'set', 'ie' 'cook', 'set', 'ie'
'repl', 'str_', 'ace' 'repl', 'str_', 'ace'
"base"."64_"
'base'.'64_'
"t"."m"."p"."_"."n"."a"."m"."e"
"f"."i"."l"."e"."_"."p"."u"."t"
"f"."i"."l"."e"."_"."g"."e"."t"
'ode', 'e64_', 'bas', 'dec'
'unct', 'ion', 'te_f', 'crea'
'te', 'g', 'nf', 'l', 'a', 'zi'
'tion', 'e_func', 'creat'
'64_d', 'se', 'eco', 'de', 'ba'
'co', 'ki', 'e', 'o', 'set'
'str', '_rep', 'lace'
# process data from request object directly
extract($_REQUEST) && @$
extract($_REQUEST)&&@$
xtract($_REQUEST)&&@$
# uncompress cafted content
gzuncompress(strrev(substr(
# disable error reporting
<?php error_reporting(0);?>
# infected file include attached on the top of a legit file
<?php if (file_exists(dirname(__FILE__) . '/class.theme-modules.php')) include_once(dirname(__FILE__) . '/class.theme-modules.php'); ?>
<?php if (file_exists(dirname(__FILE__) . '/class.plugin-modules.php')) include_once(dirname(__FILE__) . '/class.plugin-modules.php'); ?>

View File

@@ -79,7 +79,7 @@ chr\s*\(\s*['"]?\s*((95)|(0[Xx]5[Ff]))\s*['"]?\s*\)
#Escaped path characters: \x2fho\x6de/\x69mp\x75ls\x69oq\x65/w\x77w. or \x2fhome\x2fimpu\x6csioq\x65/www\x2emusc #Escaped path characters: \x2fho\x6de/\x69mp\x75ls\x69oq\x65/w\x77w. or \x2fhome\x2fimpu\x6csioq\x65/www\x2emusc
(\\x[0-9abcdef]{2}[a-z0-9.-\/]{1,4}){4,} (\\x[0-9abcdef]{2}[a-z0-9.-\/]{1,4}){4,}
#Malware inffected files sometimes marked with comments like /*87cda*/ to avoid infect again #Malware infected files sometimes marked with comments like /*87cda*/ to avoid infect again
\/\*[a-z0-9]{5}\*\/ \/\*[a-z0-9]{5}\*\/
# XOR-ed strings with custom math # XOR-ed strings with custom math
@@ -141,10 +141,16 @@ explode\('\|\x01\|\x03\|\x03', gzinflate\(
\$[a-z]11 \^ [a-z]8\(\$[a-z]6, \$[a-z]14, \$[a-z]6\[13\]\(\$[a-z]11\)\)\)\); \$[a-z]11 \^ [a-z]8\(\$[a-z]6, \$[a-z]14, \$[a-z]6\[13\]\(\$[a-z]11\)\)\)\);
# eval function return and concat # eval function return and concat
eval\([A-Za-z]{5,}\(\) \. ' eval\([A-Za-z0-9]{5,}\(\) \. '
# eval function return, parameter is a hex string # eval function return, parameter is a hex string
eval\([A-Za-z0-9]{5,}\(\"[A-Z0-9]{16,} eval\([A-Za-z0-9]{5,}\(\"[A-Z0-9]{16,}
# gzip payload called by variable named function # gzip payload called by variable named function
\$[a-zA-Z0-9]{6,}\('\x78\x9C\xAD\x90\x41\x0E \$[a-zA-Z0-9]{6,}\('\x78\x9C\xAD\x90\x41\x0E
# obfuscated code return with error suppression
return @\$[a-z]{2}\d+\[\d+\]\(\$[a-z]{2}\d+\[\d+\],
# htaccess alternating
[a-z]{1}\([a-z]{1}\(\$[a-z]{2}\.'\/\.htaccess'\)

View File

@@ -231,7 +231,7 @@ class MalwareScanner
private function parseArgs() private function parseArgs()
{ {
$options = getopt( $options = getopt(
'd:e:i:o:abmcxlhkwnsptLj:E', 'd:e:i:o:abmcxlhkrwnsptLj:E',
array( array(
'directory:', 'directory:',
'extension:', 'extension:',
@@ -244,6 +244,7 @@ class MalwareScanner
'follow-link', 'follow-link',
'help', 'help',
'hide-ok', 'hide-ok',
'hide-err',
'hide-whitelist', 'hide-whitelist',
'no-color', 'no-color',
'no-stop', 'no-stop',
@@ -622,8 +623,8 @@ class MalwareScanner
private function report($start, $dir) private function report($start, $dir)
{ {
$end = time(); $end = time();
echo 'Start time: ' . strftime('%Y-%m-%d %H:%M:%S', $start) . PHP_EOL; echo 'Start time: ' . date('Y-m-d H:m:s', $start) . PHP_EOL;
echo 'End time: ' . strftime('%Y-%m-%d %H:%M:%S', $end) . PHP_EOL; echo 'End time: ' . date('Y-m-d H:m:s', $end) . PHP_EOL;
echo 'Total execution time: ' . ($end - $start) . PHP_EOL; echo 'Total execution time: ' . ($end - $start) . PHP_EOL;
echo 'Base directory: ' . $dir . PHP_EOL; echo 'Base directory: ' . $dir . PHP_EOL;
echo 'Total directories scanned: ' . $this->stat['directories'] . PHP_EOL; echo 'Total directories scanned: ' . $this->stat['directories'] . PHP_EOL;
@@ -859,7 +860,7 @@ class MalwareScanner
echo ' -t --time Show time of last file change' . PHP_EOL; echo ' -t --time Show time of last file change' . PHP_EOL;
echo ' -L --line-number Display matching pattern line number in file' . PHP_EOL; echo ' -L --line-number Display matching pattern line number in file' . PHP_EOL;
echo ' -o --output-format Custom defined output format' . PHP_EOL; echo ' -o --output-format Custom defined output format' . PHP_EOL;
echo ' -j --wordpress-version Version of wordpress to get md5 signatures' . PHP_EOL; echo ' -j <version> --wordpress-version Version of wordpress to get md5 signatures' . PHP_EOL;
echo ' --combined-whitelist Combined whitelist' . PHP_EOL; echo ' --combined-whitelist Combined whitelist' . PHP_EOL;
echo ' --disable-stats Disable statistics output' . PHP_EOL; echo ' --disable-stats Disable statistics output' . PHP_EOL;