| Current File : //scripts/prestashop |
#!/usr/local/cpanel/3rdparty/bin/perl
use MIME::Lite;
use Cpanel::SafetyBits ();
use Cpanel::AcctUtils ();
use Cpanel::PublicAPI ();
use Cpanel::LiveAPI ();
$server = `hostname`;
chomp($server);
$conta = shift;
if ($conta eq "") {
print "Need a domain\n";
print "Usage: /scripts/prestashop dominio.dom\n";
die();
}
$msg = "";
my $owner = Cpanel::AcctUtils::getdomainowner( $conta, { 'default' => '' } );
if ( !$owner ) {
die "Cannot find the owner of $owner, try rebuilding /etc/userdomains first with /usr/local/cpanel/scripts/updateuserdomains";
}
my $pubapi = Cpanel::PublicAPI->new( 'usessl' => '0');
my $res = $pubapi->whm_api('domainuserdata', "domain=$conta");
my $owner = $res->{'data'}->{'userdata'}->{'owner'};
my $fuser = $res->{'data'}->{'userdata'}->{'user'};
my $contacto = $res->{'data'}->{'userdata'}->{'serveradmin'};
my $homedir = $res->{'data'}->{'userdata'}->{'homedir'};
if (($owner ne "root") and ($owner ne "ptispapi")) {
$msg = "ATENÇÃO !!! - ENVIAR PARA CONTA DE REVENDA - <strong> $owner </strong> - servidor $server !!!! <BR><BR>";
} else {
$msg = "Conta nao pertence a revenda. Cliente: $owner ( pesquisar WHMCS ) <br><br>";
}
$msg = $msg . "Estimado(a) Cliente,<br><br>Foi detectado o envio massivo de spam a partir de um formulário de contacto desprotegido na conta <b>$fuser</b>, mais exactamente no domínio <b>$conta</b> .<br><br>";
$msg = $msg . "Para mitigar a situação foram retiradas as permissões ao ficheiro \"controllers/front/ContactController.php\" no referido alojamento. <br><br>";
$msg = $msg . "Antes de repor as permissões deverá implementar um sistema de \"Captcha\" (ou equivalente) nos formulários dado que esta situação pode dar origem a bloqueio dos nossos endereços IP em diversas listas o que resultará em dificuldades no envio de mensagens para si e para outros clientes.<br><br>";
$msg = $msg . "Verifique também se o Prestashop está devidamente actualizado dado haver um bugfix exactamente para esta situação, em que mesmo com captcha activo é possível injectar email no formulário : https://github.com/PrestaShop/PrestaShop/pull/8168 <br><br>";
$to = "abusecc\@ptisp.pt";
$msg1 = MIME::Lite->new(
From =>'Malicious script notifier <message@ptisp.pt>',
To =>$to,
Subject =>"Conta $owner ( $conta ) - Formularios desprotegidos - Envio de SPAM",
Data =>$msg,
Type =>'text/html'
);
$user = "message\@ptisp.systems";
$pass = "geicu7ohy4utaiceiN6eGe";
$msg1->send('smtp', 'mta.ptisp.systems', AuthUser=>$user, AuthPass=>$pass, Timeout=>60,);