Ohjeita webshell-takaporttien etsimiseen | Traficom

Ohjeita webshell-takaporttien etsimiseen

Viime päivinä on paljastunut merkittävä määrä Microsoft Exchange -sähköpostipalvelimiin tehtyjä tietomurtoja, joiden yhteydessä palvelimelle on asennettu ns. webshell-takaportti. Webshell-takaporttien asentaminen uhrin ympäristöön on ollut yleinen hyökkääjän toimintamalli erityisesti Exchange-palvelimiin kohdistuneiden tietomurtojen yhteydessä jo viime vuodesta lähtien.

Kyberturvallisuuskeskus kehottaa kaikkia organisaatioita, joilla on Exchange-sähköpostipalvelin, tekemään vähintään tässä ohjeessa mainitut toimenpiteet mahdollisten takaporttien löytämiseksi. Pelkkä haavoittuvuuksien korjaaminen asentamalla päivitykset ei poista hyökkääjän asentamia takaportteja. Viime aikaiset tietomurrot eivät koske Microsoftin pilvipalveluina tarjoamia sähköpostipalvelimia, kuten Exchange Online ja Microsoft 365 Business.

Tässä ohjeessa pyritään antamaan joitain yksinkertaisia neuvoja, joilla webshelli-takaportteja voi etsiä palvelimilta. Hyökkääjien arsenaaliin kuuluu kuitenkin myös lukuisia muita työkaluja, joihin ei tässä ohjeessa tarkemmin paneuduta. Jälkiä maaliskuun alussa korjattujen haavoittuvuuksien CVE-2021-26855, CVE-2021-26857, CVE-2021-27065 ja CVE-2021-26858 hyväksikäyttöyrityksistä kannatta etsiä Exchange-sähköpostipalvelimen lokitiedoista Microsoftin ohjeiden mukaisesti.

Yksinkertaisin tapa löytää webshell-tiedostot on tarkistaa sähköpostipalvelimen julkisesta verkosta saavutettavat hakemistot sinne kuulumattomien tiedostojen varalta.

  • \inetpub\wwwroot\aspnet_client\
  • \inetpub\wwwroot\aspnet_client\system_web\
  • \<exchange install path>\FrontEnd\HttpProxy\owa\auth\
  • \<exchange install path>\FrontEnd\HttpProxy\ecp\
  • \<exchange install path>\ClientAccess\Owa\auth\
  • \<exchange install path>\ClientAccess\ecp\

Useimmat webshell-tiedostot ovat tiedostopäätteiltään jotain seuraavista:

  • .aspx, .asmx, .asax, .ashx, .js, .php, .jsp, .cfm, .shtml

\inetpub\wwwroot\aspnet_client\

mikä tahansa .aspx-tiedosto tässä hakemistossa tai sen alihakemistoissa

\<exchange install path>\FrontEnd\HttpProxy\owa\auth\

mikä tahansa tiedosto, mikä ei kuulu perusasennukseen

 

\<exchange install path>\FrontEnd\HttpProxy\owa\auth\Current\

mikä tahansa .aspx-tiedosto tässä hakemistossa tai sen alihakemistoissa

 

\<exchange install path>\FrontEnd\HttpProxy\owa\auth\(versionumero)\

mikä tahansa .aspx-tiedosto tässä hakemistossa tai sen alihakemistoissa

 

\<exchange install path>\FrontEnd\HttpProxy\ecp\auth\

mikä tahansa muu tiedosto kuin TimeoutLogout.aspx

Kattavampi tapa löytää ylimääräisiä haitallisia tiedostoja olisi verrata sähköpostipalvelimen nykyistä hakemistorakenteen sisältöä perusasennuksen (ns. Golden Image) hakemistorakenteeseen.

Alla esimerkkinä Windows Server 2012 -palvelimelle asennetun Exchange 2013 -sähköpostipalvelimen perusasennukseen sisältyvät tiedostot osassa yllä mainituissa hakemistoissa.

\<exchange install path>\FrontEnd\HttpProxy\owa\auth\

  • errorFE.aspx
  • ExpiredPassword.aspx
  • getidtoken.htm
  • logoff.aspx
  • logon.aspx
  • OutlookCN.aspx
  • RedirSuiteServiceProxy.aspx
  • signout.aspx
  • SvmFeedback.aspx

    <exchange install path>\ClientAccess\Owa\auth\

    • error.aspx
    • error2.aspx
    • expiredpassword.aspx
    • exppw.dll
    • logoff.aspx
    • owaauth.dll
    • signout.aspx

    \<exchange install path>\ClientAccess\ecp\

    (Useita alihakemistoja)

    • About.aspx
    • CloseWindow.aspx
    • CommonMaster.Master
    • CrossPremise.aspx
    • default.aspx
    • error.aspx
    • Global.asax
    • Hybrid.aspx
    • HybridLogoutHelper.aspx
    • Microsoft.Office.CsmSdk.Resources.xml
    • Resources.xml
    • SDKMaster.Master
    • web.config
    • web.config.bak
    • Web.sitemap

    Palvelinversioissa Exchange 2016 ja Exchange 2019 hakemiston 

    \<exchange install path>\FrontEnd\HttpProxy\owa\auth\

    perusasennukseen kuuluu edellä mainittujen lisäksi myös tiedosto

    • frowny.aspx

    Toinen tapa etsiä takaportteja on hakea tiettyjä webshell-tiedostoissa usein käytettyjä merkkijonoja ainakin yllämainittujen hakemistojen tiedostoista. Epäilyttäviä merkkijonoja ovat esimerkiksi:

    • %eval
    • eval(
    • {eval
    • Request.Item[
    • Request.Form[

    Joissain tapauksissa hyökkääjä on muokannut .aspx-tiedostoistaan uusia .ashx-päätteisiä webshell-takaportteja, jotka on tehty C#-ohjelmointikielellä. Näissä tapauksissa epäilyttävät merkkijonot ovat usein muotoa:

    • StartInfo.FileName="cmd.exe";
    • StartInfo.FileName= "cmd" + "." + "exe";

    Merkkijonoja voi hakea sähköpostipalvelimella esimerkiksi tämänkaltaisilla PowerShell-komennoilla, kun ne ajetaan siinä hakemistossa, minne Exchange-palvelin on asennettu:

    • Get-ChildItem -Path .\FrontEnd\HttpProxy\ -Recurse | Select-String -Pattern "%eval|eval\(|{eval|Request\.Item|Request\.Form" -CaseSensitive
    • Get-ChildItem -Path .\FrontEnd\HttpProxy\ -Recurse | Select-String -Pattern "StartInfo\.Filename" -CaseSensitive

    Mikäli viitteitä webshell-takaporteista löytyy, tapausta tulee käsitellä tietomurtona. Tällöin on ensiarvoisen tärkeää selvittää, onko hyökkääjä päässyt murtautumaan laajemmalle organisaation tietojärjestelmiin. Vinkkejä tietomurron havaitsemiseen saa esimerkiksi Kyberturvallisuuskeskuksen julkaisemasta oppaasta tietomurtojen havaitsemiseen. Tietomurron  tutkinta vaatii paljon teknistä osaamista ja resursseja, joten siihen on viisasta hankkia apua esimerkiksi tietoturvapalveluja tarjoavilta yrityksiltä.

    Kyberturvallisuuskeskus on kiinnostunut kaikista tietomurtoihin liittyvistä havainnoista ja opastaa uhreja tietomurron selvittelyssä. Yhteydenotot voi tehdä sähköpostitse Kyberturvallisuuskeskuksen tilannekeskukselle sähköpostiosoitteeseen cert@traficom.fi . 

    On myös syytä muistaa tehdä havaitusta tietomurrosta rikosilmoitus poliisille ja
    hoitaa tarvittaessa lakisääteinen ilmoitusvelvollisuus valvoville viranomaisille.

    Sivu on viimeksi päivitetty