{"id":370,"title":"DMZ\u2019de IIS + LAN\u2019da SQL Server","content":"<p>&nbsp;<\/p>\n<h1>DMZ&rsquo;de IIS + LAN&rsquo;da SQL Server<\/h1>\n<h2>Do\u011fru Mimari, G&uuml;venli Firewall Kurallar\u0131 ve Ger&ccedil;ek Sald\u0131r\u0131 Senaryolar\u0131<\/h2>\n<p>&nbsp;<\/p>\n<p><img src=\"https:\/\/edrawcloudpublicus.s3.amazonaws.com\/work\/1084471\/2022-1-24\/1643022430\/main.png?utm_source=chatgpt.com\" alt=\"Image\"><\/p>\n<p>&nbsp;<\/p>\n<p>Kurumsal a\u011f tasar\u0131mlar\u0131nda <strong>en s\u0131k yap\u0131lan ve en tehlikeli hatalardan biri<\/strong>, web sunucusu ile veritaban\u0131n\u0131 yanl\u0131\u015f g&uuml;venlik b&ouml;lgelerinde konumland\u0131rmakt\u0131r.<br>&Ouml;zellikle \u015fu soru &ccedil;ok s\u0131k sorulur:<\/p>\n<blockquote>\n<p><em>&ldquo;DMZ&rsquo;de IIS web sunucusu var, veritaban\u0131 LAN taraf\u0131nda olabilir mi?&rdquo;<\/em><\/p>\n<\/blockquote>\n<p>Cevap:<br><strong>Evet, olabilir. Ama sadece belirli ve kat\u0131 \u015fartlar sa\u011flan\u0131yorsa.<\/strong><br>Aksi h&acirc;lde DMZ kavram\u0131 tamamen anlam\u0131n\u0131 yitirir.<\/p>\n<p>Bu yaz\u0131da, <strong>kurumsal g&uuml;venlik d&uuml;nyas\u0131nda kabul edilen tek do\u011fru yakla\u015f\u0131m\u0131<\/strong>, firewall kural setleri ve ger&ccedil;ek sald\u0131r\u0131 senaryolar\u0131yla birlikte ele al\u0131yoruz.<\/p>\n<hr>\n<h2>Senaryo Netle\u015ftirme<\/h2>\n<p>Bu yaz\u0131 boyunca a\u015fa\u011f\u0131daki referans mimari kullan\u0131lm\u0131\u015ft\u0131r:<\/p>\n<p><strong>DMZ<\/strong><\/p>\n<ul>\n<li>\n<p>IIS Web Server &rarr; <code>10.10.10.2<\/code><\/p>\n<\/li>\n<\/ul>\n<p><strong>LAN (Server \/ Management VLAN)<\/strong><\/p>\n<ul>\n<li>\n<p>SQL Server &rarr; <code>192.168.40.10<\/code> (VLAN40 &ouml;nerilir)<\/p>\n<\/li>\n<\/ul>\n<blockquote>\n<p>\u2757 <strong>Veritaban\u0131 ASLA DMZ&rsquo;de konumland\u0131r\u0131lmaz<\/strong><br>\u2714\ufe0f Do\u011fru karar: Veritaban\u0131 LAN taraf\u0131nda, sunucuya &ouml;zel bir VLAN&rsquo;da olmal\u0131d\u0131r.<\/p>\n<\/blockquote>\n<hr>\n<h2>Alt\u0131n Kural (Ezberlenmeli)<\/h2>\n<blockquote>\n<p><strong>DMZ &rarr; LAN trafi\u011fi varsay\u0131lan olarak kapal\u0131d\u0131r<\/strong><br><strong>Ancak<\/strong><br><strong>DMZ &rarr; LAN sadece: Tek IP + Tek Sunucu + Tek Port \u015feklinde a&ccedil;\u0131labilir<\/strong><\/p>\n<\/blockquote>\n<p>Bu kural bozuldu\u011fu anda:<\/p>\n<ul>\n<li>\n<p>DMZ izolasyonu &ccedil;&ouml;ker<\/p>\n<\/li>\n<li>\n<p>Yatay hareket (lateral movement) m&uuml;mk&uuml;n h&acirc;le gelir<\/p>\n<\/li>\n<li>\n<p>Web sald\u0131r\u0131s\u0131, t&uuml;m i&ccedil; a\u011fa yay\u0131labilir<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h2>Do\u011fru Mimari (Production Standard\u0131)<\/h2>\n<pre><code>Internet\n   |\nFirewall\n   |\nDMZ\n[IIS Web Server]\n   |\n(Firewall &uuml;zerinde kontroll&uuml; TEK kural)\n   |\nLAN (Server VLAN)\n[SQL Server]\n<\/code><\/pre>\n<p>Bu yap\u0131; bankalar, ISP&rsquo;ler ve kamu a\u011flar\u0131nda kullan\u0131lan <strong>standart DMZ yakla\u015f\u0131m\u0131d\u0131r<\/strong>.<\/p>\n<hr>\n<h2>Veritaban\u0131 Hangi VLAN&rsquo;da Olmal\u0131?<\/h2>\n<h3>Yanl\u0131\u015f Yakla\u015f\u0131m<\/h3>\n<ul>\n<li>\n<p>Kullan\u0131c\u0131 VLAN&rsquo;lar\u0131 (VLAN10 \/ VLAN20 \/ VLAN30)<\/p>\n<\/li>\n<\/ul>\n<h3>Do\u011fru Yakla\u015f\u0131m<\/h3>\n<ul>\n<li>\n<p><strong>VLAN40 &ndash; Management \/ Server VLAN<\/strong><\/p>\n<\/li>\n<\/ul>\n<p><strong>&Ouml;rnek:<\/strong><\/p>\n<pre><code>DB Server IP : 192.168.40.10\nVLAN        : 40\n<\/code><\/pre>\n<p>Bu VLAN&rsquo;da:<\/p>\n<ul>\n<li>\n<p>Kullan\u0131c\u0131 PC bulunmaz<\/p>\n<\/li>\n<li>\n<p>Sadece sunucu ve y&ouml;netim sistemleri yer al\u0131r<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h2>En Kritik Nokta: Firewall Kural\u0131<\/h2>\n<p>DMZ ile LAN aras\u0131nda <strong>sadece tek bir izin kural\u0131<\/strong> bulunur.<\/p>\n<h3>IIS &rarr; SQL Firewall Kural\u0131<\/h3>\n<pre><code>Source Zone      : DMZ\nSource IP        : 10.10.10.2        (IIS Server)\nDestination Zone : VLAN40\nDestination IP  : 192.168.40.10      (SQL Server)\nService          : MSSQL (TCP 1433)  (veya MySQL 3306)\nAction           : Allow\nLog              : Enabled\nIPS              : Enabled\n<\/code><\/pre>\n<h3>Dikkat Edilmesi Gerekenler<\/h3>\n<ul>\n<li>\n<p>DMZ &rarr; LAN ANY olmaz<\/p>\n<\/li>\n<li>\n<p>DMZ &rarr; VLAN10\/20\/30 olmaz<\/p>\n<\/li>\n<li>\n<p>DMZ &rarr; Subnet bazl\u0131 izin verilmez<\/p>\n<\/li>\n<li>\n<p>\u2714\ufe0f <strong>Sadece IP &rarr; IP &rarr; Port<\/strong><\/p>\n<\/li>\n<\/ul>\n<hr>\n<h2>Veritaban\u0131 Sunucusu &Uuml;zerinde Ek G&uuml;venlik<\/h2>\n<p>Firewall kural\u0131 <strong>tek ba\u015f\u0131na yeterli de\u011fildir<\/strong>.<br>Sunucu &uuml;zerinde de ikinci bir g&uuml;venlik katman\u0131 olmal\u0131d\u0131r.<\/p>\n<h3>Windows Firewall (SQL Server)<\/h3>\n<pre><code>ALLOW TCP 1433 FROM 10.10.10.2\nDENY  ALL FROM ANY\n<\/code><\/pre>\n<blockquote>\n<p>\ud83d\udd10 Firewall + OS Firewall = <strong>&Ccedil;ift kilit<\/strong><\/p>\n<\/blockquote>\n<hr>\n<h2>Kimlik Do\u011frulama: En S\u0131k Yap\u0131lan Hata<\/h2>\n<h3>Yanl\u0131\u015f<\/h3>\n<ul>\n<li>\n<p><code>sa<\/code> \/ <code>root<\/code> kullan\u0131c\u0131lar\u0131<\/p>\n<\/li>\n<li>\n<p>Full permission DB user<\/p>\n<\/li>\n<\/ul>\n<h3>Do\u011fru<\/h3>\n<ul>\n<li>\n<p>Sadece ilgili veritaban\u0131<\/p>\n<\/li>\n<li>\n<p>Yetkiler:<\/p>\n<ul>\n<li>\n<p>SELECT<\/p>\n<\/li>\n<li>\n<p>INSERT<\/p>\n<\/li>\n<li>\n<p>UPDATE<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>DROP \/ ALTER yok<\/p>\n<\/li>\n<\/ul>\n<p>Bu sayede web uygulamas\u0131 ele ge&ccedil;irilse bile zarar s\u0131n\u0131rl\u0131 kal\u0131r.<\/p>\n<hr>\n<h2>IIS Taraf\u0131nda G&uuml;venlik &Ouml;nlemleri<\/h2>\n<p><strong>Connection String<\/strong><\/p>\n<ul>\n<li>\n<p>\u015eifreli tutulmal\u0131<\/p>\n<\/li>\n<li>\n<p>Web root d\u0131\u015f\u0131nda saklanmal\u0131<\/p>\n<\/li>\n<li>\n<p>M&uuml;mk&uuml;nse environment variable kullan\u0131lmal\u0131<\/p>\n<\/li>\n<\/ul>\n<p><strong>Ek &Ouml;nlemler<\/strong><\/p>\n<ul>\n<li>\n<p>Connection pool limitli<\/p>\n<\/li>\n<li>\n<p>Timeout de\u011ferleri k\u0131sa<\/p>\n<\/li>\n<li>\n<p>Parametreli sorgular \/ ORM kullan\u0131m\u0131<\/p>\n<\/li>\n<li>\n<p>SQL Injection korumas\u0131<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h2>DMZ &rarr; LAN Ba\u011flant\u0131 Testi<\/h2>\n<p>IIS sunucusundan:<\/p>\n<pre><code>telnet 192.168.40.10 1433\n<\/code><\/pre>\n<p>Firewall log&rsquo;unda:<\/p>\n<pre><code>ALLOW DMZ(10.10.10.2) &rarr; VLAN40(192.168.40.10) TCP 1433\n<\/code><\/pre>\n<p>Bunun d\u0131\u015f\u0131nda <strong>tek bir port<\/strong> g&ouml;r&uuml;rseniz:<\/p>\n<blockquote>\n<p>\u26a0\ufe0f Yanl\u0131\u015f yap\u0131land\u0131rma vard\u0131r.<\/p>\n<\/blockquote>\n<hr>\n<h2>Firewall Rule Set (&Ouml;zet)<\/h2>\n<p><strong>WAN &rarr; DMZ<\/strong><\/p>\n<ul>\n<li>\n<p>HTTPS (443) &rarr; IIS<\/p>\n<\/li>\n<\/ul>\n<p><strong>DMZ &rarr; VLAN40<\/strong><\/p>\n<ul>\n<li>\n<p>Sadece IIS &rarr; SQL (TCP 1433)<\/p>\n<\/li>\n<\/ul>\n<p><strong>VLAN40 &rarr; DMZ<\/strong><\/p>\n<ul>\n<li>\n<p>Sadece y&ouml;netim (RDP \/ SSH)<\/p>\n<\/li>\n<\/ul>\n<p><strong>DMZ &rarr; LAN \/ User VLAN<\/strong><\/p>\n<ul>\n<li>\n<p>Tamamen kapal\u0131<\/p>\n<\/li>\n<\/ul>\n<p><strong>En altta<\/strong><\/p>\n<ul>\n<li>\n<p>Default deny (log a&ccedil;\u0131k)<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h2>Reverse Proxy + SSL Offload ile Bir &Uuml;st Seviye<\/h2>\n<p>Daha geli\u015fmi\u015f yap\u0131larda, IIS&rsquo;in &ouml;n&uuml;ne <strong>Reverse Proxy<\/strong> eklenir.<\/p>\n<p><img src=\"https:\/\/media.geeksforgeeks.org\/wp-content\/uploads\/20250322144523695986\/reverse_proxy_server.webp?utm_source=chatgpt.com\" alt=\"Image\"><\/p>\n<p><strong>DMZ<\/strong><\/p>\n<ul>\n<li>\n<p>Reverse Proxy (Nginx) &rarr; <code>10.10.10.10<\/code><\/p>\n<\/li>\n<li>\n<p>IIS Web Server &rarr; <code>10.10.10.2<\/code><\/p>\n<\/li>\n<\/ul>\n<p><strong>Ak\u0131\u015f<\/strong><\/p>\n<pre><code>Internet &rarr; Reverse Proxy (HTTPS)\nReverse Proxy &rarr; IIS (HTTP &ndash; internal)\nIIS &rarr; SQL (TCP 1433)\n<\/code><\/pre>\n<h3>SSL Offload Neden &Ouml;nemli?<\/h3>\n<ul>\n<li>\n<p>Sertifika tek noktada<\/p>\n<\/li>\n<li>\n<p>TLS a&ccedil;\u0131klar\u0131 merkezi y&ouml;netilir<\/p>\n<\/li>\n<li>\n<p>WAF \/ rate-limit \/ header kontrol&uuml;<\/p>\n<\/li>\n<li>\n<p>Daha temiz ve anlaml\u0131 loglar<\/p>\n<\/li>\n<li>\n<p>Performans art\u0131\u015f\u0131<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h2>Ger&ccedil;ek&ccedil;i Sald\u0131r\u0131 Senaryolar\u0131<\/h2>\n<h3>SQL Injection Denemesi<\/h3>\n<pre><code>GET \/login.aspx?user=admin' OR 1=1--\n<\/code><\/pre>\n<p><strong>Reverse Proxy Log<\/strong><\/p>\n<pre><code>ACTION=BLOCK\nREASON=SQL_INJECTION_PATTERN\n<\/code><\/pre>\n<p>IIS ve SQL&rsquo;e ula\u015famaz<\/p>\n<hr>\n<h3>Directory Traversal<\/h3>\n<pre><code>GET \/..\/..\/windows\/system32\/cmd.exe\n<\/code><\/pre>\n<p><strong>Sonu&ccedil;<\/strong><\/p>\n<ul>\n<li>\n<p>Reverse proxy taraf\u0131ndan bloklan\u0131r<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h3>Brute Force Login<\/h3>\n<ul>\n<li>\n<p>Rate-limit devreye girer<\/p>\n<\/li>\n<li>\n<p>Firewall IPS ba\u011flant\u0131y\u0131 keser<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h3>IIS Ele Ge&ccedil;irilirse Ne Olur?<\/h3>\n<ul>\n<li>\n<p>SQL&rsquo;e sadece uygulama yetkisiyle eri\u015filir<\/p>\n<\/li>\n<li>\n<p>User VLAN&rsquo;lara ge&ccedil;i\u015f yap\u0131lamaz<\/p>\n<\/li>\n<li>\n<p>Domain ele ge&ccedil;irilemez<\/p>\n<\/li>\n<\/ul>\n<p><strong>Zarar uygulama + DB tablosu seviyesinde kal\u0131r<\/strong><\/p>\n<hr>\n<h2>Asla Yap\u0131lmamas\u0131 Gerekenler<\/h2>\n<ul>\n<li>\n<p>DB&rsquo;yi DMZ&rsquo;ye koymak<\/p>\n<\/li>\n<li>\n<p>DMZ &rarr; LAN ANY kural\u0131 a&ccedil;mak<\/p>\n<\/li>\n<li>\n<p>DB&rsquo;yi kullan\u0131c\u0131 VLAN&rsquo;\u0131na koymak<\/p>\n<\/li>\n<li>\n<p><code>sa<\/code> \/ <code>root<\/code> kullanmak<\/p>\n<\/li>\n<li>\n<p>Management VLAN&rsquo;a kullan\u0131c\u0131 PC almak<\/p>\n<\/li>\n<\/ul>\n<hr>\n<h2>Sonu&ccedil;<\/h2>\n<p>DMZ&rsquo;de IIS olabilir.<br>Veritaban\u0131 LAN&rsquo;da olmal\u0131d\u0131r.<br>Arada <strong>tek y&ouml;nl&uuml;, tek IP, tek port, loglanan<\/strong> bir firewall kural\u0131 bulunur.<\/p>\n<p>Bu yakla\u015f\u0131m:<\/p>\n<ul>\n<li>\n<p>Ger&ccedil;ek DMZ izolasyonu sa\u011flar<\/p>\n<\/li>\n<li>\n<p>Sald\u0131r\u0131 y&uuml;zeyini ciddi bi&ccedil;imde daralt\u0131r<\/p>\n<\/li>\n<li>\n<p>Kurumsal a\u011flarda y\u0131llard\u0131r kullan\u0131lan <strong>kan\u0131tlanm\u0131\u015f bir standartt\u0131r<\/strong><\/p>\n<\/li>\n<\/ul>\n<blockquote>\n<p><strong>Reverse Proxy sald\u0131r\u0131y\u0131 g&ouml;r&uuml;r,<br>Firewall s\u0131n\u0131rlar,<br>DMZ hapseder,<br>LAN korur.<\/strong><\/p>\n<\/blockquote>","excerpt":"DMZ\u2019de IIS + LAN\u2019da SQL Server\nDo\u011fru Mimari, G\u00fcvenli Firewall Kurallar\u0131 ve Ger\u00e7ek Sald\u0131r\u0131 Senaryolar\u0131","created_at":"2025-12-21 14:41:46","updated_at":"2026-09-23 16:33:18","category_id":7,"view_count":592,"reading_time":5,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2025-12-21 11:41:46","featured_image":"\/uploads\/images\/2025\/12\/6947dce9bb40d_1766317289.png","slug":"dmz-de-iis-lan-da-sql-server","category_name":"Cyber Security","category_slug":"cyber-security","category_color":"#10b981"}