Megosztás a következőn keresztül:


Az üzenetnaplózás biztonsági problémái

Ez a témakör azt ismerteti, hogyan védheti meg a bizalmas adatokat az üzenetnaplókban való nyilvánosságra kerüléstől, valamint az üzenetnaplózás által generált eseményektől.

Biztonsági problémák

Bizalmas adatok naplózása

A Windows Communication Foundation (WCF) nem módosítja az alkalmazásspecifikus fejlécekben és törzsekben lévő adatokat. A WCF emellett nem követi nyomon a személyes adatokat az alkalmazásspecifikus fejlécekben vagy törzsadatokban.

Ha az üzenetnaplózás engedélyezve van, az alkalmazásspecifikus fejlécekben lévő személyes adatok, például egy lekérdezési sztring; és a törzsadatok, például egy hitelkártyaszám, láthatóvá válhatnak a naplókban. Az alkalmazástelepítő feladata a hozzáférés-vezérlés kényszerítése a konfiguráción és a naplófájlokon. Ha nem szeretné, hogy ezek az információk megjelenjenek, tiltsa le a naplózást, vagy szűrje ki az adatok egy részét, ha meg szeretné osztani a naplókat.

Az alábbi tippek segítségével megakadályozhatja, hogy a naplófájlok tartalma véletlenül elérhetővé legyen téve:

  • Győződjön meg arról, hogy a naplófájlokat hozzáférés-vezérlési listák (ACL) védik mind a webgazda, mind az önkiszolgáló forgatókönyvekben.

  • Olyan fájlkiterjesztést válasszon, amely nem kézbesíthető egyszerűen webes kéréssel. A .xml fájlkiterjesztés például nem biztonságos választás. A fentiekhez hasznos lehet az Internet Information Services (IIS) felügyeleti útmutatójának áttekintése, melyben megtalálható a kiszolgálható kiterjesztések listája.

  • Adjon meg egy abszolút elérési utat a naplófájl helyéhez, amelynek a webes gazdagép virtuális könyvtárán kívül kell lennie, hogy megakadályozza, hogy egy külső fél webböngészővel férhessen hozzá.

Alapértelmezés szerint a kulcsok és a személyazonosításra alkalmas adatok (PII), például a felhasználónév és a jelszó nem lesznek naplózva nyomkövetésekben és naplózott üzenetekben. A gép rendszergazdája azonban használhatja a enableLoggingKnownPII Machine.config fájl elemében található machineSettings attribútumot, hogy lehetővé tegyék a gépen futó alkalmazások számára az ismert, személyazonosításra alkalmas adatok (PII) naplózását. A következő konfiguráció bemutatja, hogyan teheti ezt meg:

<configuration>  
   <system.serviceModel>  
      <machineSettings enableLoggingKnownPii="true"/>  
   </system.serviceModel>  
</configuration>

Az alkalmazástelepítő ezután az logKnownPii App.config vagy a Web.config fájlban található attribútumot használhatja a PII-naplózás engedélyezéséhez az alábbiak szerint:

<system.diagnostics>  
  <sources>  
      <source name="System.ServiceModel.MessageLogging"  
        logKnownPii="true">  
        <listeners>  
                 <add name="messages"  
                 type="System.Diagnostics.XmlWriterTraceListener"  
                 initializeData="c:\logs\messages.svclog" />  
          </listeners>  
      </source>  
    </sources>  
</system.diagnostics>  

Csak akkor, ha mindkét beállítás engedélyezve van true a PII-naplózásban. A két kapcsoló kombinációja lehetővé teszi az ismert PII naplózását az egyes alkalmazásokhoz.

Fontos

A 4.6.1-.NET-keretrendszer a logEntireMessagelogKnownPii Web.config fájlban vagy az App.config fájlban is be kell állítani true a jelölőket a PII-naplózás engedélyezéséhez, ahogy az az alábbi példában <system.serviceModel><messageLogging logEntireMessage="true" logKnownPii="true" …is látható.

Vegye figyelembe, hogy ha egy konfigurációs fájlban két vagy több egyéni forrást ad meg, csak az első forrás attribútumai lesznek olvashatók. A többit figyelmen kívül hagyja. Ez azt jelenti, hogy a következő App.config fájl esetében a PII nincs naplózva mindkét forráshoz, annak ellenére, hogy a PII-naplózás kifejezetten engedélyezve van a második forráshoz.

<system.diagnostics>  
   <sources>  
      <source name="System.ServiceModel.MessageLogging"  
              logKnownPii="false">  
              <listeners>  
                 <add name="messages"  
                      type="System.Diagnostics.XmlWriterTraceListener"  
                      initializeData="c:\logs\messages.svclog" />  
              </listeners>  
            </source>  
      <source name="System.ServiceModel"
              logKnownPii="true">  
              <listeners>  
                 <add name="traces"  
                      type="System.Diagnostics.XmlWriterTraceListener"  
                      initializeData="c:\logs\traces.svclog" />  
              </listeners>  
      </source>  
   </sources>  
</system.diagnostics>  

Ha az <machineSettings enableLoggingKnownPii="Boolean"/> elem a Machine.config fájlon kívül található, a rendszer egy ConfigurationErrorsException.

A módosítások csak akkor lépnek érvénybe, ha az alkalmazás elindul vagy újraindul. A rendszer indításkor naplóz egy eseményt, ha mindkét attribútum értéke be van állítva true. Az esemény akkor is naplózva lesz, ha logKnownPii be van állítva, true de enableLoggingKnownPii az.false

A gép rendszergazdájának és az alkalmazás üzembe helyezőjének rendkívül körültekintően kell eljárnia a két kapcsoló használatakor. Ha a PII-naplózás engedélyezve van, a rendszer naplózza a biztonsági kulcsokat és a PII-t. Ha le van tiltva, a rendszer továbbra is bizalmas és alkalmazásspecifikus adatokat naplóz az üzenetfejlécekben és -törzsekben. Az adatvédelemmel és a PII-nek a nyilvánosságra kerüléssel szembeni védelméről részletesebben a Felhasználói adatvédelem című témakörben olvashat.

Figyelemfelhívás

A PII nem rejtett a hibásan formázott üzenetekben. Az ilyen üzenetek naplózása módosítás nélkül történik. A korábban említett attribútumoknak nincs hatása erre.

Egyéni nyomkövetési figyelő

Egyéni nyomkövetési figyelő hozzáadása az Üzenetnaplózás nyomkövetési forráshoz olyan jogosultság, amelyet a rendszergazdára kell korlátozni. Ennek az az oka, hogy a rosszindulatú egyéni figyelők úgy konfigurálhatók, hogy távolról küldjenek üzeneteket, ami bizalmas információk felfedéséhez vezet. Ezenkívül ha egyéni figyelőt konfigurál arra, hogy üzeneteket küldjön a vezetéken, például egy távoli adatbázisba, akkor a távoli gépen lévő üzenetnaplókon a megfelelő hozzáférés-vezérlést kell kikényszerítenie.

Üzenetnaplózás által kiváltott események

Az alábbi lista felsorolja az üzenetnaplózás által kibocsátott összes eseményt.

  • Üzenetnaplózás bekapcsolva: Ez az esemény akkor jelenik meg, ha az üzenetnaplózás engedélyezve van a konfigurációban vagy a WMI-n keresztül. Az esemény tartalma: "Az üzenetnaplózás be van kapcsolva. A bizalmas információk akkor is naplózhatók tiszta szövegben, ha a vezetéken titkosították őket, például üzenettörzsek."

  • Üzenetnaplózás kikapcsolása: Ez az esemény akkor jelenik meg, ha az üzenetnaplózás le van tiltva a WMI-ben. Az esemény tartalma: "Az üzenetnaplózás ki van kapcsolva".

  • Ismert PII naplózása: Ez az esemény akkor jelenik meg, ha engedélyezve van az ismert PII naplózása. Ez akkor fordul elő, ha a enableLoggingKnownPiimachineSettings Machine.config fájl elemének attribútuma a következőre truevan állítva, és az logKnownPiisource App.config vagy a Web.config fájlban lévő elem attribútuma a következőre truevan állítva: .

  • Az ismert PII naplózása nem engedélyezett: Ez az esemény akkor jelenik meg, ha az ismert PII naplózása nem engedélyezett. Ez akkor fordul elő, ha az logKnownPiisource App.config vagy a Web.config fájlban lévő elem attribútuma a következőre truevan állítva, de a enableLoggingKnownPii Machine.config fájl elemének attribútuma machineSettings a következőre falsevan állítva. Nem képződik kivétel.

Ezek az események a Windowshoz kapcsolódó Eseménynapló eszközben tekinthetők meg. Erről további információt az Eseménynaplózás című témakörben talál.

Lásd még