Tag Archives: Security

Hackování webů běžnými „smrtelníky“ – záznam [Jiří Kanda, HAVIT Vzdělávací okénko 19.10.2017]

Záznam z interního vzdělávacího okénka HAVIT z 19.10.2017 je publikován na našem HAVIT YouTube Channel. Téma prezentoval Jiří Kanda:

Dotčená témata:

  • Open Redirects
  • XSS – Cross Site Scripting, ASP.NET Request Validation
  • MIME-type injection
  • External JS references, CDN, Tag Managers
  • Cross Site Request Forgery (XSRF/CSRF)
  • CORS – Cross Origin Resource Sharing, Preflight requests
  • X-Frame-Options
  • X-Content-Type-Options
  • X-XSS-Protection

dcgpofix – Rebuild Default domain policy a Default domain controllers policy

dcgpofix je „Default Group Policy Restore Utility“, utilita Windows Serveru 2003, která umožňuje obnovit Default Domain Security Policy (Zásady zabezpečení domény) a Default Domain Controllers Security Policy (Zásady zabezpečení řadičů domény) do výchozího stavu po instalaci, a to nejenom pokud si rozhážeme nastavení do neudržitelného stavu, ale i v případě, že jsou tyto GPO poškozeny, nebo smazány.

Základní syntaxe je

dcgpofix [/ignoreschema][/target: {domain | dc | both}]

Viz též podrobnější info o dcgpofix od Microsoftu.

Pro Windows 2000 existuje též postup, i když mnohem drsnější.

Scheduled task lze spustit pouze ručně, status „Could not start“, 0x80070569: Logon failure

Naplánovaná úloha (Scheduled taks, např. zálohování) lze spustit pouze ručně (pravým tlačítkem Run), ale namísto naplánovaného spuštění je při detailním zobrazení označena stavem „Could not start“ („Nelze spustit“) a chybovým kódem 0x0.

Pokud se podíváme do logu scheduleru (Advanced ~ View log, Upřesnit ~ Zobrazit protokol), pak tam najdeme něco jako:

Backup.job" (NTBACKUP.EXE) 10/12/2006 3:00:00 AM ** ERROR **
    The attempt to log on to the account associated with the task failed, therefore, the task did not run.
    The specific error is:
    0x80070569: Logon failure: the user has not been granted the requested logon type at this computer.
    Verify that the task's Run-as name and password are valid and try again.

resp.

Zálohování.job (NTBACKUP.EXE) 18.11.2004 3:00:00 ** CHYBA **
    Pokus o přihlášení k účtu přidruženému k úloze se nezdařil. Úloha nebyla spuštěna..
    Příslušná chyba:
    0x80070569: Přihlašovací chyba: Uživateli nebyl v tomto počítači udělen požadovaný typ přihlášení.
    Ověřte, zda jsou údaje Spustit jako a heslo platné, a akci opakujte..
Příčina a řešení

Příčina je v zásadách zabezpečení. Účet, pod kterým se má úloha spouštět, nemá nastaveno právo„Logon as batch job“ („Přihlásit jako dávkovou úlohu“). Je tedy potřeba prohlédnout lokální a doménové zásadný zabezpečení a právo účtu přidělit.

Windows 2000 Server: Event ID 1202, SceCli, 0xd : The data is invalid.

Tento warning se nám může množit v Application event logu, po aplikaci šablony zabezpečení Basicdc.inf. Potíž je v tom, že se tato šablona odkazuje na proměnné %SYSVOL%, %DSDIT% a %DSLOG“, které však neexistují (existují jen během Dcpromo procesu).

Stačí tedy tyto environment variables vytvořit. Výchozí složky jsou následující

%SYSVOL% = C:\WINNT\SYSVOL
%DSDIT% = C:\WINNT\NTDS
%DSLOG% = C:\WINNT\NTDS

…a warning je pryč.

FTP: Nastavení práv na složku pro příchozí soubory – /incoming

Poměrně často dostávám dotaz, jak nastavit práva na FTP složku pro příchozí soubory – složku /incoming (i když já doporučuji jiný název, viz dále).

V podstatě chceme dosáhnout toho, aby anonymní uživatel:

  • mohl do složky libovolně přidávat soubory,
  • mohl zobrazovat seznam souborů ve složce – chceme mu dát možnost, aby si ověřil, že jeho soubor byl úspěšně nahrán,
  • nemohl ze složky soubory mazat – nechceme přeci, aby nám kdokoli mohl smazat soubory určené pro nás,
  • nemohl ze složky číst – nejenom, že nechceme, aby nám někdo cizí mohl číst soubory určené pro nás, ale navíc bychom si povolením čtení připravili hodně krušné chvíle – roboti totiž pravidelně procházejí FTP servery a přímo vyhledávají takovéto složky, kde je povolen zápis a čtení – v případě úspěchu se velmi rychle stanete uložištěm pro warez, videa a jiné nechtěné soubory.

Právě z posledního uvedeného důvodu, kdy se roboti zaměřují převážně na složku /incoming a ostatní složky pro zrychlení ignorují, doporučuji pojmenovat složku pro příchozí soubory jinak. V českém prostředí například /prichozi.

A teď jak na práva:

  • práva budeme nastavovat účtu anonymního uživatele (obvykle IUSR_SERVER),
  • práva aplikujeme přímo na složku pro příchozí soubory – /incoming, /prichozi,
  • nevystačíme si se standardní záložkou Vlastnosti ~ Zabezpečení, ale musíme dát „Upřesnit“,
  • vytvoříme pro anonymního uživatele pravidlo, kde Použít pro nastavíme na Tato složka a podsložky (standardně je to totiž Tato složka, podsložky a soubory) apovolíme vše mimo
    • Full Control – Úplné řízení,
    • Delete Subfolders and Files – Odstraňovat podsložky a soubory,
    • Delete – Odstraňovat,
    • Change Permissions – Měnit oprávnění
    • a Take Ownership – Přebírat vlastnictví.
  • ještě můžeme zvážit práva Zapisovat atributy, popř. Zapisovat rozšířené atributy, ale to už celkem není nic proti ničemu.
  • musíme si dát také pozor, jestli se nám z nadřazené složky nedědí nějaká další práva, ale nebývá to obvyklé (spíše by se dalo považovat za chybu, kdyby anonymní uživatel měl na kořenovou složku FTP serveru nějaká práva, která by se dědila na podsložky).

Tím, že pravidlo aplikujeme pouze na objekty typu složka, nikoliv na soubory, dosáhneme právě toho, že uživatel sice všechno uvidí, ale nebude moct číst jednotlivé soubory.

Také si dejte pozor, jestli Vám nevznikají práva k souborům nějakým jiným děděním, klasickou chybou jsou třeba práva pro CREATOR OWNER.