PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
| Dir : /opt/cpanel/ea-wappspector/src/Matchers/ |
| Server: Linux host100322.itwesthosting.com 3.10.0-1160.144.1.el7.tuxcare.els4.x86_64 #1 SMP Tue Apr 7 08:40:40 UTC 2026 x86_64 IP: 144.91.64.173 |
| Dir : //opt/cpanel/ea-wappspector/src/Matchers/DotNet.php |
<?php
namespace Plesk\Wappspector\Matchers;
use League\Flysystem\Filesystem;
use League\Flysystem\FilesystemException;
use League\Flysystem\StorageAttributes;
use Plesk\Wappspector\MatchResult\DotNet as MatchResult;
use Plesk\Wappspector\MatchResult\EmptyMatchResult;
use Plesk\Wappspector\MatchResult\MatchResultInterface;
class DotNet implements MatcherInterface
{
use UpLevelMatcherTrait;
private const HEX_SIGNATURE = '4d5a';
/**
* @throws FilesystemException
*/
public function doMatch(Filesystem $fs, string $path): MatchResultInterface
{
foreach ($fs->listContents($path) as $item) {
/** @var StorageAttributes $item */
if (!$item->isFile() || !str_ends_with($item->path(), '.dll')) {
continue;
}
$handle = $fs->readStream($item->path());
$hex = bin2hex(fread($handle, 4));
if (str_contains($hex, self::HEX_SIGNATURE)) {
return new MatchResult($path);
}
}
return new EmptyMatchResult();
}
}