Odesílání spamu přes phpmailer.php – jak zakázat?
z některých mých domén začal odcházet spam, podle hostingu útočníci prý zřejmě zneužívají phpmailer.php. Pokud ale tuto funkci zakážu, přestanou mi zřejmě chodit i systémové zprávy, např. z Akeeba Admin Tools, info o nových verzích Joomly,…
Děje se to na starších 1.5 verzích i na novějších 3.x, přitom jsem se snažil (alespoň novější verze) udržovat aktualizované.
Jak toto prosím řešíte? Znamená to, že se útočníci nabořili do webu, anebo jen zneužívají zmíněný soubor?
MaK.
--- -- -
Nejdříve si změňte hesla do joomly, hostingu, Ftp atd.
Pak můžete celý webový prostor k sobě a projeďte ho antivirem.
Obecně můžete postupovat dle Bongova návodu

Možná bude spíš díra v nějakém delší dobu neaktualizovaném pluginu nebo komponentě, které dokáží volat phpmailer.php a využívat jej. Jen ještě odhalit, přes co to lítá :silly:
Byť si nejsem vědom, že mám někde nějaký kontaktní formulář veřejně on-line (není ani v sitemap, ani v indexu vyhledávačů), je možné, že když zná útočník jeho přímou URL, dostane se na něj a nějak dokáže zneužít.
Dá se nějak zjistit, které všechny URLs Joomla generuje a jsou veřejně dostupné?
MaK.
--- -- -
Myslím si že ne, ale mohu se mýlit.Dá se nějak zjistit, které všechny URLs Joomla generuje a jsou veřejně dostupné?
Zkusil jste tohle?
Pak můžete celý webový prostor zkopírovat k sobě a projeďte ho antivirem.

Zkusím možná ještě povypínat nějaké pluginy. Anebo rovnou zakážu phpmailer.php hromadně a bude po ptákách. Našel jsem např, toto řešení www.itoctopus.com/how-to-completely-disa...ctionality-in-joomla
A lidi, nevykejte mi prosím, nejsem snad zase tak stár

MaK.
--- -- -

Prostě jakmile máte povolený formulář (např. rsform) a nemáte ho chráněný, tak i když nemáte nikde veřejně URL adresu, říkáte si o malér. Tuto URL vám totiž odhalím během 30 sekund, stačí přece zjistit že tam máte povolený rsform formulář a nemusí být nikde uveřejněný pomocí položky menu

Postup od Bonga je dobrý, pro bussines weby, kdy je třeba rychlost a 100% kvalita používám trochu profesionálnější postup - online službu myjoomla a nasazení RSfirewall. (Mám licence i na J15, které již nezískáte). Za celou dobu (asi 6 let co jsem toto řešení vyvinul a začal nasazovat ještě v Easysoftware a nyní v Minion) se mi nestalo, že byl takto chráněný web napaden.
Pro správné nasazení myjoomla musíte ale rozumět kódu všech programů a rozhodnout zda navržené a odhalené hacky jsou hacky nebo ne == pokud nejste programátor nebo nemáte logické myšlení, musíte mít původní verze programů, aby jste mohl porovnat.
Samozřejmě je třeba k tomu přidat další kroky - upravený hosting (máme firmu, která se věnuje hostingu a abezpečení joomla webů 15 let), zabezpečenou administraci a další drobné kroky, které Vám doporučí myjoomla.
Můžete také nevyužít tohoto postupu a inspirovat se rady jiných

Ale jen pro info:
- pustit na to antivirus zkoušeli naši odborníci na serveru - dopadlo to tak, že jsem odvirovával takto odvirované weby znovu a znovu
- nasadit Akeeba Admin - řešení zdarma a nedostatečné, zkoušel jsem jako první variantu než jsem přešel na placenou verzi RSFirewall
Jinak vykám každému, i když jsem ji skoro v důchodu (jak říkají kolegové)

Kromě těch, s kterými se seznámím osobně.
S pozdravem
Rudolf
MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

MaK. napsal: Anebo rovnou zakážu phpmailer.php hromadně a bude po ptákách.
No ale to potom nebudou fungovat ani systémové maily, ani formuláře na webu, ne?

rád bych uvedl na správnou míru, že Akeeba Admin existuje sice v dost omezené verzi i zdarma, avšak mnohem vybavenější je placená verze Pro, kterou používám (cca 1500 CZK / rok), viz www.akeebabackup.com/subscribe/new/atpro.html . Taktéž obsahuje firewall a dalších mnoho funkcí, jako rozšíření od RS. Nemyslím si, že je to špatná komponenta. To by si ji asi nikdo nekupoval a zanikla by.
Z Vaší odpovědi by se dalo chápat, že normální instalaci Joomly je potřeba obalit tunou rozšíření a vlastně ji instalovat nějak jinak, aby byla zabezpečená. To by mohlo znamenat, že J! není pro běžné uživatele vůbec vhodná, což si ale nemyslím.
Nechci se teď pouštět do nějakých diskuzí, ani se učit kódovat weby a tak,… zkusím položit otázku asi nějak jinak.
ad vy/ty – to platilo pro ostatní, s nimiž jsem už na tomto fóru diskutoval před lety.
MaK.
--- -- -

MaK.
Martin70 napsal:
MaK. napsal: Anebo rovnou zakážu phpmailer.php hromadně a bude po ptákách.
No ale to potom nebudou fungovat ani systémové maily, ani formuláře na webu, ne?
--- -- -

Jak prosím natvrdo zakázat funkci phpmailer.php? Stačí soubor přejmenovat, odstranit, anebo upravit? Bude změna trvalá nebo se po další aktualizaci J! zase zprovozní?
Díky.
MaK.
--- -- -

Pokud to jde přímo z Joomly, tak to jde přes nějaký formulář, ať už je v menu nebo ne. V první řadě bych se snažil zjistit co je to za maily, hosting by měl mít log mailů co odcházej. Z obsahu mailu by se dalo odhadnout, co jej posílá. Případně přepnout Joomlu na SMTP, a kontrolovat v odeslané poště.

na zkoušku jsem přejmenoval phpmailer.php, ale chodí to dál. Já nevím, co to rozesílá, jsou to hobby weby, tak se v tom nechci moc šťourat. Časem ty weby asi úplně odpískám. Ale jeden z webů je na J!3.9, stále aktualizovaný a taky to z něj chodí. Na hostingu nic moc neporadili. Na SMTP jsem taky zkoušel přepnout, stejně to chodí dál.
Tipuju, že to bude přes nějaký formulář, o kterém však nevím, nikde není normálně vidět, ale někde tam prostě je.
Dá se prosím nějak generálně zakázat veškeré odesílání z Joomly?
MaK.
Cony napsal: phpmailer.php sám o sobě nic nerozesílá. Je to jen knihovna, kterou Joomla používá pro rozesílku mailů. Ta knihovna pak k posílání buď používá funkci PHP mail, nebo SMTP, dle nastavení v Joomle. Tj. pokud něco komunikuje přímo s phpmailer.php a ne prostřednictvím Joomly, znamená to buď neaktualizované stránky (do phpmailer.php byla tuším loni nějaká záplata), nabo hack.
Pokud to jde přímo z Joomly, tak to jde přes nějaký formulář, ať už je v menu nebo ne. V první řadě bych se snažil zjistit co je to za maily, hosting by měl mít log mailů co odcházej. Z obsahu mailu by se dalo odhadnout, co jej posílá. Případně přepnout Joomlu na SMTP, a kontrolovat v odeslané poště.
--- -- -

MaK. napsal: Jak prosím natvrdo zakázat funkci phpmailer.php? Stačí soubor přejmenovat, odstranit, anebo upravit? Bude změna trvalá nebo se po další aktualizaci J! zase zprovozní?
Podle mě (a píšou to i v tom článku) - pokud přejmenuješ phpmailer, tak vždy po upgradu Joomla to budeš muset udělat znovu.
Pokud to chceš odstranit "hlava nehlava", napadlo mě v Joomle v Globálním nastavení nastavit SMTP (místo PHP mail) a nevyplňovat SMTP user ani heslo. Pak se prostřednictvím Joomla nebude dát nic odesílat, ne?
Pokud chcete skutečně zakázat odesílání e-mailů, tak nejjistější řešení je zakázat to na úrovni serveru/hostingu. Knihovna PHPMailer je integrovaná v Joomla! na úrovni jádra a tudíž tam být musí a pravděpodobně by po smazaní Joomla! padla a bylo by nutné více úprav. Také můžete zkusit vypnout odesílání e-mailů v konfiguraci Joomla!, ale pokud někdo využívá knihovnu PHPMailer napřímo (a nebo ji ani nevyužívá a využívá PHP funkci mail()), tak tím nic nevyřešíte.
Pokud někdo skutečně zneužívá nějakou chybu v této knihovně (podle mého nepravděpodobné), tak je možné ji zkusit aktualizovat, ale v poslední verzi Joomla! je poslední verze PHPMailer ve větvi 5.x, tudíž není kam aktualizovat a nevím jestli je větev 6.x plně kompatibilní.
Spíš bych viděl na problém v tom, že se Vám prostě do webu někdo naboural a má tam teď umístěné skripty, které mu umožňují provádět v systému cokoli. Tzn., že i kdyby jste se PHPMaileru zbavil, tak začne posílat maily jinak a nebo si tam případně PHPMailer znovu nahraje

Nedívejte se však na to jen z pohledu, že jediná možnost jak se k Vám nabourat, je přes formuláře na webu. Zranitelný může být naprosto jakýkoli skript na Vašem webu a je úplně jedno co ten skript dělá, zda-li je na první pohled přístupný z URL (to vážně nemusí) a nebo jestli je součástí jádra Joomla!, externí knihovny a nebo nějaké šablony, komponenty, modulu či pluginu.
Navíc, pokud máte jak sám píšete, některé weby na zastaralých verzích Joomla! a nezáplatujete si je manuálně, tak je dost možné, že se Vám tam útočník dostal přes ně. A pokud ty weby sdílí hosting (tzn. např. více domén a složek na jednom placeném programu), tak dost hostingů co jsem v životě potkal nijak neodděluje tyto weby na úrovni systému a každý web má prakticky plný přístup k ostatním webům okolo. Tím chci říci, že pokud to máte jak popisuji, tak je také klidně možné, že Vám někdo hacknul nezáplatovanou Joomla! 1.5 a z ní se dostal (a něco si nahrál) do ostatních webů.
Tudíž, pokud to tak máte a budete čistit jeden hacknutý web, tak je potřeba zkontrolovat i vše ostatní na stejném hostingu, jinak je otázka času, než se malware zase rozleze po okolí.
Co já mám zkušenost, tak se většina malwaru chová tak, že když útočník najde slabé místo kudy tam něco dostat, tak pak co nejdříve volá vzdálené příkazy, které umožní škodlivému kódu se v různých podobách rozkopírovat na co nejvíce míst a co nejhlouběji do webu (termín "virus" je zde na místě



MaK.
Martin70 napsal:
MaK. napsal: Jak prosím natvrdo zakázat funkci phpmailer.php? Stačí soubor přejmenovat, odstranit, anebo upravit? Bude změna trvalá nebo se po další aktualizaci J! zase zprovozní?
Podle mě (a píšou to i v tom článku) - pokud přejmenuješ phpmailer, tak vždy po upgradu Joomla to budeš muset udělat znovu.
Pokud to chceš odstranit "hlava nehlava", napadlo mě v Joomle v Globálním nastavení nastavit SMTP (místo PHP mail) a nevyplňovat SMTP user ani heslo. Pak se prostřednictvím Joomla nebude dát nic odesílat, ne?
--- -- -