Kategori arşivi: Windows Server

Windows 10 Pro Sürümü için GPO ile Lock Screen Yönetimi- Configure Windows Spotlight on the lock screen

Windows Spotlight, farklı arka plan görüntülerini görüntüleyen ve bazen kilit ekranında öneriler sunan kilit ekranı arka planı için bir seçenek olarak Windows 10 da sunulan bir özelliktir. Bu özellik tüm Windows 10 masa üstü sürümlerinde yer almaktadır.

Bazı şirketlerin iş ihtiyacı nedeni ile lock screen olarak ifade ettiğimiz işletim sistemi ekranının kilitlendiğinde ortaya çıkan bu görselleri kurumsal görseller ile değiştirmek isteyebilir. Bu durumda aşağıdaki makale ile kolaylıkla yapılabilir;

https://docs.microsoft.com/en-us/windows/configuration/windows-spotlight

Fakat bu yöntem Windows 10 Enterprise ve Windows 10 Education sürümleri için çalışan bir yöntemdir.

Aşağıdaki yolu takip edebilirsiniz;

“Computer Configuration\Administrative Templates\Control Panel\Personalization\Force a specific default lock screen and logon image”

Okumaya devam et

RDS Session Time Limits Ayarları

Windows sunucu sistemlerinin hem güvenlik hem de performans için uzak bağlantılarının yönetilmesi önemlidir. Bu bağlamda uzak bağlantılar için yerel veya Merkezi gpo uygulanabilir.

GPO ayarlarına ulaşmak için aşağıdaki yol izlenir;

Computer Configuration\Policies\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Session Time Limits

Set time limit for disconnected sessions

Bir kullanıcı login olduktan sonra uzak Bağlantı penceresini kapatır ise arka planda oturum açık kalmaya devam eder. Ancak bu GPO aşağıdaki gibi ayarlanır ise;

Bu uzak Bağlantı disconnect olduktan 1dk sonra oturum kapanır. Yani yapılan işler yarıda kalır.

Set time limit for active but idle Remote Desktop Services sessions

Active bir session’ ın kaç dk boşta kalması durumunda disconnected olacağına karar veriyoruz.

Örneğin bu değeri 2 saat yaparsak 2 saat boyunca boşta kalan session disconnected olarak kapanacaktır. Bu sayede bir daha bağlanmak isteyen kişi kullanıcı adı ve şifre girmek zorundadır.

Örnek 30dk boyunca kapatmadığınız ama örneğin aşağı indirdiğiniz veya aktif olsa bile remote Bağlantı yaptığınız bilgisayarı lock edip gittiğinizi düşünün. Geldiğiniz zaman remote Bağlantı kopmuş olacaktır. Ancak otorum kapanmamıştır. Yani çalışmalarınız aynen kaldığı yerden devam eder.

Ancak bu davranışı aynı anda “Terminate (End) session when time limits are reached” isimli GPO ile kullanırsanız değiştirebilirsiniz. Bu durumda yukarıdaki GPO’ yu aşağıdaki gibi Enable yaparsanız 2 saat sonra oturumda kapanır.

Set time limit for active Remote Desktop Services sessions

Bir kullanıcının maksimum çalışma süresini ayarladığımız ilkedir. Örneğin bu değeri 2 saat yaparsak bir kullanıcı bir oturum için makismum 2 saat çalışacaktır. Bu süre dolmadan 2dk önce bir uyarı gelecektir.

Eğer bir diğer GPO olan “Terminate (End) session when time limits are reached” da aşağıdaki gibi enable ise otorum komple kapanır, yani dosyalar, açık olan uygulamalar kapanır

Ancak bir Sonraki GPO olan “Terminate (End) session when time limits are reached” varsayılan durumda yani aşağıdaki gibi ise

Sadece disconnect olur. Aşağıdaki gibi bir uyarı ile uzak Bağlantı kapanır. Ancak açık olan dosyalara bir şey olmaz. Yani log off olmaz.

Terminate (End) session when time limits are reached

Bu ilkeyi enable olarak ayarlarsanız idle veya aktif çalışma süreleri dolduğunda kullanıcı oturumu log off olur. Yani oturum kapanır.

Servicing Stack Updates Nedir?

Windows Update ekranında aşağıdaki gibi bir ekran görüntüsü görebilirsiniz;

Cumulative Update kavramına aşinaydık ancak SSU yeni bir kavram. Peki nedir bu SSU yüklemesi?

Hizmet yığını güncelleştirmeleri olarak geçen SSU, Windows güncellemelerini yüklerken kullanılan servis yığını için güncelleme içermektedir. Ek olarak bu güncelleştirme DISM, SFC, Windows özelliklerini veya rollerini değiştirme ve bileşenleri onarma gibi Windows dağıtımının çeşitli öğeleri için temel bir bileşen olan “component-based servicing stack” (CBS) içerir. CBS, genellikle her ay yayınlanan güncellemelere sahip olmayan küçük bir bileşendir.

Cumulative Update gibi her ay görmezsiniz ancak bu yama temel olarak windows update hizmetini iyileştirdiği için yüklemeniz tavsiye edilmektedir. Her ne kadar bir birinden farklı yama paketleri olsa da bir biri ile ilişkili olduğu yerler vardır.

Yani güncel yamaları almak istiyorsanız en güncel yama platformuna sahip olmanız lazım, bir örnek vermek gerekir ise KB4284880 yamasını yüklemek için mutlaka işletim sisteminizde May 17, 2018 servicing stack update yüklü olmalıdır.

Daha fazla bilgi için

https://docs.microsoft.com/en-us/windows/deployment/update/servicing-stack-updates

RDP Ataklar için Kritik Önlemler

Dışarıya açık sistemler her zaman bir güvenlik zafiyeti oluşturmaktadır. Ancak çoğunlukla hizmet sunmak amacı başta olmak üzere aslında bu en temel iş ihtiyacı olduğu için dışarıya açık pek çok system olduğunu görüyoruz. En temel internet üzerinde gezdiğimiz bütün sitelerin herkese açık olduğunu düşünürseniz aslında çok ciddi bir büyüklükten söz ediyoruz. Böylesine büyük bir okyanusta benim web sitemi, uygulamamı veya sistemimi mi bulacaklar diye düşünmeyin. Çünkü hep söylediğim bir şey olan “değişen ve gelişen teknoloji ile yeni nesil atakları görüyoruz” artık AI kullanarak yapılan atakları görünce gerçekten çok yerinde bir cümle oluyor. Dahası makalemizdeki gibi RDP temelli ataklar artık herkesin kolaylıkla yapabildiği bir atak türü haline gelmiş durumda. Yani çok büyük alışveriş veya sosyal medya platformlarını düşündüğümüz zaman gerçekten inanılmaz ataklar ile karşı karşıyalar, ancak ben daha temel bir konuya odaklandım. Bunun en temel sebebi ise her ne kadar şifreleme atakları yüzünden pek çok müşteri artık dışarıya açık RDP portunu kapatsa da hala ne yazık ki bizim güvenlik ekibine haftada en az 1-5 arası vaka gelmektedir. Bu da aslında bir şekilde kısa süreli, POC amaçlı, gözden kaçan veya unutulan RDP sistemlerinin hala ciddi bir tehlike oluşturduğunu gösterir.

Güncelleme 13.05.2019

Makaleye gelen yorumlardan sanki tüm RDP sistemleri için öneriler tadında bir makale beklentisi oluşmuş. Bu kadar uğraşacağına MFA yaparız gibi yorumlar görüyorum. Arkadaşlar zaten VPN yapsanız iş bitiyor, olay VPN, MFA yada sertifika doğrulama gibi kurumsal çözümleri kullanmayan müşteriler için kıssadan hisse öneride bulunuyorum.

Aslında bende yukarıdaki konulardan gol yemiş birisiyim. Herkesin farklı bir hikayesi vardır benimkisi çok basit, udemy eğitimlerim için POC ortamı hazırladım, ancak VPN vs ile bağlanmak çok pratik gelmedi, içerisinde bilgi de yoktu ancak günün sonunda en değerli şeyim olan vaktimi kaybettim. Exchange Server ortamı, GPO ortamı derken birkaç günlük kurulmuş mis gibi sistem şifrelendi. Neyse ki demo, poc ortamları bizde hep ayrı fiziksel sunucu ve network de olduğu için prod ortam olan ÇözümPark bundan etkilenmiyor. Gerçi bunun içinde bulut yedek senaryomuz var ama oradaki kesinti bizi üzer.

Bu durumda daha sonra ortak etkinlikle için kullandığımız birkaç ortamda meydana geldi. Tabiki bu işin kesin yöntemini sizler gibi bizde çok iyi biliyoruz. VPN. Fakat bazen ISP den kaynaklı, bazen danışmanın eğitmenin bulunduğu yer ve zaman nedeni ile T anında o RDP açılması gerekiyor 😊 Ama gel gör ki ne oluyorsa ya o sırada oluyor ya da her insan gibi bu yoğun gündemde unutuluyor.

Peki bu iş gerçekten bu kadar riskli mi? Bende her seferinde kendime soruyorum çünkü genel olarak müşterilerimin büyük çoğunluğu kurumsal firma, durum böyle olunca acaba ne kadar makine vardır bu şekilde diye düşünmeden edemiyorum ve an itibari ile 2.3 milyon makinenin bu durumdan etkilenebileceğini görüyorum

Bende bundan bir ders çıkardım. Madem bu işi çok iyi biliyoruz, elinde VPN imkânı olmayan, ip bazlı sınırlama imkânı olmayanlar için bir sıkılaştırma çözümü yapamaz mıyız? Aslında yapabiliriz.

Benim temel 3 adımda RDP için sıkılaştırma yönetimim aşağıdaki gibidir;

1 – Administrator ismini hemen değiştirin.

Yeni bir sistem kurduktan sonra varsayılan olan “Administrator” hesabı çok büyük tehlike içermektedir. Zaten otomatik yapılan atakların başında Administrator hesabına yapılmaktadır. Bunun için local GPO ile aşağıdaki yolu izleyebilirsiniz

Gpedit.msc – Computer Configuration – Windows Settings – Security Settings – Local Policies – Security Options altına “Accounts: Rename administrator account”

Örnek dışarıya açık bir sistemde en çok atak denemesi yapılan hesaplar aşağıdaki gibidir;

ADMINISTRATOR

Audit

Test

Ftp

Warehouse

Fax

Lab

Postgres

User1

User2

Guest

Webmaster

Admin

User

Sistema

Adm

Archive

Update

İnfo

Test2

Finans

Muhasebe

Report

Görüldüğü gibi aslında bu işin temelinde kullanıcı hesabını tahmin etmek var, yani siz bundan sonraki diğer iki önlemi almasanız bile sadece bu hareket ile ciddi manada VPN’ siz, dış dünyaya açık bir RDP sistemi için sıkılaştırma yapmış olursunuz.

Peki ikinci adım nedir?

Aslında bu ilk adım ile beraber kullanıldığı zaman çok etkili bir koruma yöntemi oluyor.

Lock Policy.

Yani diyelim administrator hesabını değiştirdik ancak yine de tespit edildi veya tahmin edildi, bu durumda da 3 veya 5 veya size uygun bir yanlış deneme sayısından sonra otomatik hesabın lock olması. Tabi bu süreyi çok uzun tutmamak lazım aksi halde sizin de erişim sorunlarınız kaçınılmaz olur.

Bunun için yine local GPO’ da aşağıdaki yolu izleyebilirsiniz. Computer Configuration – Windows Settings – Security Settings – Account Policies – Account Lockout Policy

Altından ayarları kendinize göre yapabilirsiniz. Peki birisi hesabı buldu ve lock etti sisteme nasıl erişeceğim?

Evet bu ihtimale karşın mutlaka “Reset account Lockout counter after” bölümünü kullanmanız lazım. Zaten atakları incelerseniz süreklilik gösterirken mutlaka 5dk veya 10dk ara verirler.

Peki ikinci yöntem de tamam. Gelelim en son yönteme. Bu ise aslında yukarıdaki iki çözümden sonra sürekli loglarda atakları gördükten sonra aklıma gelen ve küçük bir araştırma ile benim gibi başkalarının da düşündüğü bir çözüm gördüm. Her ne kadar güvenli bir ortam oluştursam da sürekli sunucumu taciz etmeleri beni biraz rahatsız etti. Sonuçta bu hareketleri aşağıdaki iki log’ dan görebiliyoruz;

1 – Security loglarından;

İkinci olarak

Event Viewer- Application and Services Logs- Microsoft- Windows- RemoteDesktopServices-RdpCoreTS altındaki Operational loglarından event id 140

İlk log içerisinde kullanıcı bilgisi bu log içerisinde ise atak yapılan kaynak ip adresini görüyoruz. Tabi burada heyecanlanmayın, muhtemel bunlar zombi yani zararlı bulaştırılmış makineler olduğu için bunların üzerinden kimin size saldırı düzenlediğini bulmanız çok mümkün değil. Zaten size özel bir saldırı olmuyor genelde, makalemin başında söylediğim gibi karanlık veya derin web dediğimiz ortamda bir sürü otomatik RDP portu arayan ve kullanıcı adı şifre deneyen araçlar var.

Ben buradan yola çıkarak şunu düşündüm, bu ip adreslerini otomatik alıp windows firewall üzerindeki bir kurala ekleyecek. Tamda bunu yapacağız.

Öncelikle bir kural oluşturalım;

Custom bir kural hazırlayacağız.

Program sekmesinde “All programs” bölümünü seçip ilerliyorum.

Protocol ve Port bölümünde ise “any” seçiyorum.

Bu bölümde ise remote ip adres kısmına iki tane gerçek olmayan ip yazın.

Son olarak bu ip adreslerinden gelen herhangi bir port isteğini yasaklayacak bir kural olması için “Block the connection” seçeneğini seçiyorum.

Son olarak firewall kuralımız için bir isim seçiyoruz. Burası önemli, çünkü PS içerisinde hangi kurala ip adreslerini ekleyeceğini seçerken lütfen buraya yazacağınız ismi not edin.

Kuralımız hazır, şimdi olay günlüğünden ip adreslerini alacak ve bu firewall kuralına yazacak bir PS lazım.

Bunu aşağıdaki link üzerinden indirebiliriz;

İndirdiğimiz dosyası örneğin ben C:\komut dizinine indirdim ve çalıştırdım.

Gördüğünüz gibi ilk çalıştırmada 31 adet ip adresini yasakladı. Aslında PS süper çalışıyor ancak sorun sürekli bunu elle mi çalıştıracağız? Tabiki hayır. Bu durumda PS için zamanlanmış bir görev yapalım

Buraya yazacaklarımız sırası ile aşağıdaki gibidir;

Action: “Start a program”

Setting Program/Script: “powershell.exe“

Add arguments (optional): -ExecutionPolicy Bypass C:\komut\RDPBlock.ps1 (Burada tabi siz PS için verdiğiniz isim ve path tanımlayın)

Alt bölümdeki kutucuğu işaretleyerek finish dedikten sonra açılan yeni ekranda bu zamanlanmış görevler için özellikler penceresini açmış olacağız

Burada yapmamız gereken değişiklik “Run whether user is logged on or not” olmalıdır. Bu sayede siz login olmasanız da PS arka planda çalışacaktır.

Son olarak yetkili bir hesap ile zamanlanmış görevi tamamlıyoruz.

Peki durumu biraz inceleyelim neler oluyor?

Gördüğünüz gibi atak ortalama her 5dk da bir tekrarlanıyor. 5:03, 5:08, 5:13, 5:19 ve en son 5:36. Ancak 5.36 dan sonra dikkat ederseniz saatin 6:12 olmasına karşın tekrarlanmadığıdır. Bunun sebebi ise 77 adet ip adresini PS loglardan alıp kural içerisine eklemiştir.

Biz tabi öyle bir sistem kurunca bize saldıranda biraz hırs yaptı ve ip sayısını arttırdı.

Ancak ben zamanlanmış görevi her 5dk da bir çalışacak şekilde yaptığım için çok ilgilenmiyorum açıkçası. Özetle sistem otomatik olarak ip adreslerini eklediği sürece içim rahat.

Peki bu ip adresleri maksimum kaç tane olabilir? Windows Firewall için limit 1000 tanedir.  1000 taneden fazla ip ile size saldırmaları durumunda zaten daha kurumsal bir çözüm kullanmanızı tavsiye ederim.

Not: bu arada PS şöyle geliştirilebilir, örnek 10 gün veya 30 günden önce eklenen ip adresleri otomatik silinebilir bu sayede sistem otomasyona döner.

Aşağıdaki komutlar ise son durumu kontrol etmeniz için gereklidir;

(Get-NetFirewallRule -DisplayName “Block RDP Attackers” | Get-NetFirewallAddressFilter).RemoteAddress | Measure-Object

Yukarıdaki komut toplam kaç adet remote ip adresi olduğunu gördüğümüz komut.

(Get-NetFirewallRule -DisplayName “Block RDP Attackers” | Get-NetFirewallAddressFilter).RemoteAddress | Out-file -FilePath c:\komut\remoteipaddress.csv -Encoding utf8

Bu komut ise bu ip adreslerini eğer export etmek istiyorsanız kullanabileceğiniz komut setidir.

Umarım faydalı bir makale olmuştur. Bir sonraki makalemde görüşmek üzere.

Not: Eğer isterseniz bu konuda aynı işi yapan 3.parti bir programda var, onu da deneyebilirsiniz ancak tabiki lisans ücreti ödenmesi gerekiyor- https://www.servolutions.com/shop/Products.aspx?cat=botfence

Powershell için Kaynak

RDS Collection Hatası – Unable to configure the RD Sessionhost server. Invalid operation

Güzel bir RDS Farm projesi yaptınız ve sıra geldi collection oluşturmaya. Connection broker sunucusu üzerinde bu süresi işletirken aşağıdaki gibi bir hata alabilirsiniz;

Unable to configure the RD Sessionhost server. Invalid operation

Hatta bu hatanın altında da GPO ile ilgili uyarılar görürsünüz. Bunun temel nedeni yeni kurduğunuz session host sunucularının mevcut domain ortamındaki RDS ilkelerini alması ile ilgilidir. Yani muhtemel domain seviyesinden veya kurduğunuz sunucuların bulunduğu OU için tanımlanmış RDS ilkeleri var ise bu oluşturmaya çalıştığınız collection ayarları ile çakışacağı için hata alırsınız.

Çözüm olarak yeni kurduğunuz sunucuların herhangi bir RDS GPO ayarı almamasını sağlamanız yeterlidir.

1 Soru 1 Cevap: Windows Server 2019 In-place Upgrade

Soru: Server 2019 in-place upgrade hangi OS sürümlerini desteklemektedir?

Cevap: Server 2012 R2 ve Server 2016 sürümleri in-place upgrade desteklemektedir. 2008 R2 direkt olarak yükseltme desteklemiyor olsa bile önce 2012, sonra 2016 sonra 2019 olacak şekilde yükseltilebilir.

Daha fazla bilgi için;

https://www.hakanuzuner.com/index.php/upgrade-windows-server-2008-r2-to-windows-server-2019.html
https://www.hakanuzuner.com/index.php/upgrade-windows-server-2016-to-windows-server-2019.html
https://www.hakanuzuner.com/index.php/windows-server-upgrade-center.html

Windows Server Upgrade Center

Windows Server OS sürümleri arasında geçiş yapmanın en iyi yöntemi yeni sürüm OS kurum eski sürüm OS üzerindeki CA, AD DS, DHCP, DNS, WINS, File Server, SQL ve benzeri iş yüklerini taşımaktır. Ancak her zaman yeni OS ve geçiş senaryoları çözüm olmayabilir. Böyle durumlarda özellikle in-place yükseltme dediğimiz yöntem ile OS sürümünü bir veya daha üst sürümlere çıkarabilirsiniz.

Bu noktada Microsoft bizlere yol göstermesi adına çok güzel bir web sitesi hazırlamış bulunuyor. Sektörde aktif olarak pek çok müşterimizde konuştuğumuz bir konu olmasına karşın pek bilinmeyen bir web sitesi olduğunu fark ettiğim için blog sayfam üzerinden paylaşmak istedim. Umarım bu tarz projeleri olanlar yararlanabilir.

https://upgradecenter.azurewebsites.net/upgradecenter

Windows 10, Server 2016 Üzerinde SMBv1, SMBv2 ve SMBv3 Açma-Kapatma – How to detect, enable and disable SMBv1, SMBv2, and SMBv3 in Windows and Windows Server

Microsoft güvenlik amaçlı olarak eski ve çok fazla zafiyet içeren teknolojilerini yeni ürünlerinde hızlıca terk ediyor. Teknolojinin getirdiği gereksinimlerden birisi olan bu yenilenme bazen eski OS kullanan işletmeler için sorun olabiliyor. Aslında bunun savunulacak bir yanı yok, yani ne maliyet ne de uyum için göz göre göre çok daha büyük zararlara neden olabilecek bu eski sistemleri yaşatmaya çalışmak doğru bir yönetim modeli değil.

Peki sorunumuz nedir? Windows 10 özellikle son kullanıcı işletim sistemi olarak yaygınlaşmasına rağmen arada kalmış Windows XP makineleri ile hala network üzerinden görüşmek zorunda kaldığında bir sorun yaşayabilirsiniz. Windows 10 1709 ve sonraki sürümlerde artık SMBv1 protokolünü varsayılan olarak yüklemiyor. Bu nedenle böyle bir kurulum sonrası XP makineler ile iletişim yapmanız mümkün olmuyor. Çözüm için tekrar bunu açmanız yeterli.

Windows Server 2012 R2 & 2016 üzerinde mevcut durumu kontrol, açma ve kapatma

SMB v1

Detect:Get-WindowsFeature FS-SMB1
Disable:Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol
Enable:Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol

SMB v2/v3

Detect:Get-SmbServerConfiguration | Select EnableSMB2Protocol
Disable:Set-SmbServerConfiguration -EnableSMB2Protocol $false
Enable:Set-SmbServerConfiguration -EnableSMB2Protocol $true

Windows 8.1 ve Windows 10 üzerinde mevcut durumu kontrol, açma ve kapatma

SMB v1 Protocol

Detect:Get-WindowsOptionalFeature –Online –FeatureName SMB1Protocol
Disable:Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Enable:Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol

SMB v2/v3 Protocol

Detect:Get-SmbServerConfiguration | Select EnableSMB2Protocol
Disable:Set-SmbServerConfiguration –EnableSMB2Protocol $false
Enable:Set-SmbSeverConfiguration –EnableSMB2Protocol $true

Kaynak

https://support.microsoft.com/en-us/help/2696547/how-to-detect-enable-and-disable-smbv1-smbv2-and-smbv3-in-windows-and

Windows Admin Center User Permission and Logging – Yetkilendirme ve İzleme

Windows Admin Center sunduğu hizmetler düşünülürse kısa bir sürede pek çok sistem yöneticisi tarafından kullanılacak bir üründür. Durum böyle olunca ürünün bize sunduğu en önemli özeliklerden birisi güvenlik ve izleme özelliğidir.

Temel olarak Microsoft’ un yaklaşımı herkese yeterli yetki verip gereksiz yetkilerden doğacak olan kötüye kullanım veya yanlış kullanımı engellemektedir.

Windows Admin Center’ da temel iki rol yer almaktadır.

·         Gateway users

·         Gateway administrators

User rolünün yetkisi temel olarak Windows Admin Center’ a bağlanıp yine uzak sunuculardaki yetkisi dahilinde yönetim yapmaktır.

Administrators rolü ise Admin Center yönetimi için kullanılır. Örneğin Admin Center’ ın kimlik doğrulama mekanizmasını değiştirmek veya kimlerin Admin Center a bağlanıp bağlanamayacağını ayarlar.

Varsayılan olarak gateway kurulduktan sonra browser üzerinden erişmek isterseniz size kimlik bilgisi sorar, bu kimlik bilgisi gateway makinesinin local admin kullanıcı grubu üyelerine erişim izni vermektedir.

Üretim ortamlarında tabiki bu çok geçerli bir yöntem olmadığı için local admin yetkili bir kullanıcı ile sisteme giriş yaptıktan sonra “identity provider” yani kimlik doğrulamasını yapacak sağlayıcıyı seçebiliyoruz.

Bunun için Admin Center’ a giriş yapın, Ayarlar bölümünden “Gateway Access” sekmesine tıklayın.

clip_image001

Okumaya devam et