---
title: 'Sanal Alan Analizi'
source: 'https://academia.sh/tr/kurslar/sizma-testi/sanal-alan-analizi'
course: 'Güvenlik Araçları ve Sızma Testi'
language: tr
updated: '2026-08-17T18:08:40+00:00'
license: 'CC BY-SA 4.0'
---

# Sanal Alan Analizi

Sanal alan çözümlemesinin gizlenen davranış cinsinden ölçülmesi: 14 kalemin hazır görüntüde 5'inin ortamı fark edip belirleyici davranışını göstermemesi, karara bağlanan kalem sayısının 7'den 12'ye çıkarken hazırlık ve gözlem süresinin 288 dakikadan 965 dakikaya yükselmesi, bir ortam ipucunun hiçbir ortamda gizlenememesi ve çözümlemenin hedefte sıfır kayıt bırakıp karşı tarafa iz düşürmesi.

Önceki üç araç ağ üzerinde çalıştı. Değerlendirme sırasında incelenmesi gereken kalemlerin bir
bölümü ise dosyadan gelir: bir uçta bulunan bilinmeyen bir çalıştırılabilir, bir ekten çıkan arşiv,
saha ekibinin dışarıdan aldığı bir yardımcı araç. Bunların ne yaptığını istek göndererek öğrenmek
mümkün değildir; öğrenmenin yolu kalemi yalıtılmış bir yerde **çalıştırıp** davranışını gözlemektir.

Sanal alanın yalıtım gücü Uç Nokta Güvenliği kursunda ölçüldü ve burada girdi olarak alınır; bu
derste ölçülen şey yalıtım değil **çözümlemenin verimidir**. Tek soru şudur: bir kalemin
davranışlarından kaçı gözlenebiliyor, kaçı ortamın bir çözümleme ortamı olduğunu fark edip
gizleniyor ve kaç kalem karara bağlanamadan kalıyor.

## Ortam İpucu ve Gizlenme

Bir kalem çalışırken bulunduğu ortama bakabilir. Baktığı şeyler, çözümleme ortamlarını gerçek
uçlardan ayıran izlerdir: makinenin çok kısa süredir açık olması, aygıt sayısının azlığı, kullanıcı
geçmişinin boş olması, çözümleme araçlarının bıraktığı izler, saatin hızlandırılmış olması, ağ
yanıtlarının tek düze olması. Bu izlerden biri bile duruyorsa kalem ortamı tanır ve **belirleyici
davranışını hiç göstermez** — çalışır, zararsız birkaç iş yapar ve durur.

Her izi gizlemek mümkündür ve her birinin bir **hazırlık maliyeti** vardır: görüntünün elden
geçirilmesi, sahte bir kullanıcı geçmişinin oluşturulması, araç izlerinin temizlenmesi. Bir iz
bunun dışında kalır. Ağ yanıtlarının tek düze olmasını gidermenin tek yolu, kalemin gerçek bir
hedefe ulaşmasına izin vermektir; yetkilendirilmiş bir değerlendirmede bu adım kapsamın dışındadır
ve yazılı yetki olmadan başka bir tarafın altyapısına bağlantı kurmak hem yasadışı hem meslek
dışıdır. Bu iz, hazırlıkla kapanmayan bir sınırdır.

- **AA22.** İpucu kataloğu, ortamlar, kalem listesi ve davranışlar **modeldir**; gerçek bir kalem
  çalıştırılmadı. Kalemler yalnız denetlediği ipucu ve gözlenen davranış sınıfıyla anılır.
- **AA23.** Yalıtımın gücü burada ölçülmez, girdi olarak alınır.
- **AA24.** Bir kalem, denetlediği ipuçlarından **en az biri** gizlenmemişse ortamı fark eder ve
  belirleyici davranışlarını göstermez. Zararsız davranışları göstermeye devam eder.
- **AA25.** Bir davranışın görünmesi için gözlem penceresinin gecikmesinden büyük olması gerekir.
  Gecikmeler ve pencereler elle yazıldı; rastgelelik yok.
- **AA26.** Karar üç değerlidir. **Kanıt**: belirleyici bir davranış gözlendi. **Temiz**: kalem
  gizlenmedi, bütün davranışları pencereye sığdı ve hiçbiri belirleyici değildi. **Belirsiz**:
  kalan her durum.
- **AA27.** Belirleyici işaret davranışa aittir, kaleme değil; meşru bir kalem de belirleyici
  sayılan bir davranış gösterebilir.
- **AA28.** Çözümleme hedef ortamda koşmaz; hedef sistemlerde kayıt üretmez.

```js
// alan/gozlem.mjs — sanal alan COZUMLEMESI modelidir. Gercek bir kalem calistirilmaz;
// kalemler yalniz denetledigi ortam ipucu ve gozlenen davranis sinifiyla anilir.
// Yalitimin gucu burada olculmez; Uc Nokta Guvenligi kursundan girdi olarak alinir.
// ipucu -> o ipucunu gizlemenin hazirlik maliyeti (dk)
export const IPUCU = {
  'kisa-calisma-suresi': 8, 'az-aygit-sayisi': 12, 'bilinen-arac-izleri': 15,
  'bos-kullanici-gecmisi': 20, 'hizlandirilmis-saat': 10, 'tekduze-ag-yaniti': 0,
};

// Cozumleme ortami: hangi ipuclarini gizliyor, gozlem penceresi kac dakika.
// 'tekduze-ag-yaniti' hicbir ortamda gizlenmez: gizlemek kalemin gercek bir hedefe
// ulasmasini gerektirir ve yetkilendirilmis bir degerlendirmede bu kapsam disidir.
export const ORTAM = {
  'hazir-goruntu':    { gizler: ['kisa-calisma-suresi'], pencere: 5 },
  'elden-gecirilmis': { gizler: ['kisa-calisma-suresi', 'az-aygit-sayisi', 'bilinen-arac-izleri'], pencere: 20 },
  'gercege-yakin':    { gizler: ['kisa-calisma-suresi', 'az-aygit-sayisi', 'bilinen-arac-izleri',
    'bos-kullanici-gecmisi', 'hizlandirilmis-saat'], pencere: 60 },
};
export const ELLE_DK = 30;   // belirsiz kalem basina elle inceleme

// satir: kalem | gercek | denetledigi ipuclari | davranislar (ad:gecikme, * belirleyici)
export const KALEM = `
  k01 kotu  kisa-calisma-suresi                    dosya-yazma:0,*kalicilik:2
  k02 kotu  az-aygit-sayisi,bilinen-arac-izleri    surec-olusturma:0,*kimlik-okuma:5
  k03 kotu  bos-kullanici-gecmisi                  dosya-yazma:0,*dis-baglanti:10
  k04 kotu  hizlandirilmis-saat                    dosya-yazma:0,*zamanli-tetik:45
  k05 kotu  tekduze-ag-yaniti                      surec-olusturma:0,*dis-baglanti:3
  k06 kotu  -                                      dosya-yazma:0,*kalicilik:1,dis-baglanti:4
  k07 kotu  kisa-calisma-suresi,tekduze-ag-yaniti  dosya-yazma:0,*kimlik-okuma:8
  k08 temiz -                                      dosya-yazma:0,surec-olusturma:1
  k09 temiz -                                      dosya-yazma:0,dis-baglanti:2
  k10 temiz -                                      dosya-yazma:0,surec-olusturma:0,dis-baglanti:1
  k11 temiz -                                      dosya-yazma:0,*kimlik-okuma:3
  k12 temiz -                                      dosya-yazma:0,zamanli-tetik:40
  k13 temiz -                                      surec-olusturma:0,dis-baglanti:35
  k14 temiz -                                      dosya-yazma:0
`.trim().split('\n').map((r) => {
  const [ad, gercek, ipucu, dav] = r.trim().split(/\s+/);
  return { ad, kotu: gercek === 'kotu',
    kontrol: ipucu === '-' ? [] : ipucu.split(','),
    davranis: dav.split(',').map((d) => {
      const [n, g] = d.split(':');
      return { ad: n.replace('*', ''), belirleyici: n.startsWith('*'), gecikme: +g };
    }) };
});

// Kalem, denetledigi ipuclarindan biri gizlenmemisse ortami fark eder ve GIZLENIR:
// belirleyici davranislarini hic gostermez.
export const gizlenir = (k, o) => k.kontrol.some((i) => !ORTAM[o].gizler.includes(i));

export function gozlem(k, o) {
  const p = ORTAM[o].pencere;
  const g = gizlenir(k, o);
  const gorulen = k.davranis.filter((d) => d.gecikme <= p && !(g && d.belirleyici));
  const bastirilan = k.davranis.length - gorulen.length;
  let karar = 'belirsiz';
  if (gorulen.some((d) => d.belirleyici)) karar = 'kanit';
  else if (!g && bastirilan === 0) karar = 'temiz';
  return { gizlendi: g, gorulen: gorulen.length, bastirilan, karar,
    disBaglanti: gorulen.some((d) => d.ad === 'dis-baglanti') };
}

export function ortamOlc(o) {
  const s = { hazirlik: 0, gizlenen: 0, gorulen: 0, bastirilan: 0, kanit: 0, temiz: 0,
    belirsiz: 0, yanlisKanit: 0, kacan: 0, disIz: 0 };
  s.hazirlik = ORTAM[o].gizler.reduce((t, i) => t + IPUCU[i], 0);
  for (const k of KALEM) {
    const r = gozlem(k, o);
    if (r.gizlendi) s.gizlenen += 1;
    s.gorulen += r.gorulen; s.bastirilan += r.bastirilan; s[r.karar] += 1;
    if (r.karar === 'kanit' && !k.kotu) s.yanlisKanit += 1;
    if (r.karar !== 'kanit' && k.kotu) s.kacan += 1;
    if (r.disBaglanti) s.disIz += 1;
  }
  s.gozlemDk = KALEM.length * ORTAM[o].pencere;
  s.elleDk = s.belirsiz * ELLE_DK;
  s.toplamDk = s.hazirlik + s.gozlemDk + s.elleDk;
  return s;
}
```

## On Dört Kalem, Üç Ortam

```js
// alan/olc.mjs — on dort kalem uc cozumleme ortaminda gozlenir.
import { IPUCU, ORTAM, KALEM, ELLE_DK, gizlenir, gozlem, ortamOlc } from './gozlem.mjs';

const y = (g, ...s) => console.log(s.map((v, i) =>
  (g[i] < 0 ? String(v).padEnd(-g[i]) : String(v).padStart(g[i]))).join('').trimEnd());

console.log(`${KALEM.length} kalem (${KALEM.filter((k) => k.kotu).length} kotu), ` +
  `${Object.keys(IPUCU).length} ortam ipucu, ${Object.keys(ORTAM).length} cozumleme ortami`);
console.log(`hicbir ortamda gizlenemeyen ipucu: ` +
  Object.keys(IPUCU).filter((i) => !Object.values(ORTAM).some((o) => o.gizler.includes(i))).join(', '));

const A = [-18, 9, 10, 9, 12, 8, 8, 10, 13];
console.log('\n1. ortam basina sonuc');
y(A, 'ortam', 'pencere', 'gizlenen', 'gorulen', 'bastirilan', 'kanit', 'temiz', 'belirsiz', 'yanlis kanit');
for (const o of Object.keys(ORTAM)) {
  const s = ortamOlc(o);
  y(A, o, ORTAM[o].pencere, s.gizlenen, s.gorulen, s.bastirilan, s.kanit, s.temiz, s.belirsiz,
    s.yanlisKanit);
}

const B = [-7, 8, 21, 21, 21];
console.log('\n2. kalem basina karar');
y(B, 'kalem', 'gercek', ...Object.keys(ORTAM));
for (const k of KALEM)
  y(B, k.ad, k.kotu ? 'kotu' : 'temiz', ...Object.keys(ORTAM).map((o) => {
    const r = gozlem(k, o);
    return r.gizlendi ? `${r.karar} (gizlendi)` : r.karar;
  }));

const C = [-18, 10, 11, 9, 11, 12, 9];
console.log('\n3. bedel ve iz');
y(C, 'ortam', 'hazirlik', 'gozlem dk', 'elle dk', 'toplam dk', 'kacan kotu', 'dis iz');
for (const o of Object.keys(ORTAM)) {
  const s = ortamOlc(o);
  y(C, o, s.hazirlik, s.gozlemDk, s.elleDk, s.toplamDk, s.kacan, s.disIz);
}

const h = ortamOlc('hazir-goruntu'), g = ortamOlc('gercege-yakin');
console.log(`\nkarara baglanan kalem  ${h.kanit + h.temiz} -> ${g.kanit + g.temiz} / ${KALEM.length}`);
console.log(`ortami fark eden kalem ${h.gizlenen} -> ${g.gizlenen} / ${KALEM.length}`);
console.log(`hedefte uretilen kayit 0 (cozumleme hedef ortamda kosmaz)`);
console.log(`elle inceleme suresi   ${ELLE_DK} dk/kalem`);
```

```
14 kalem (7 kotu), 6 ortam ipucu, 3 cozumleme ortami
hicbir ortamda gizlenemeyen ipucu: tekduze-ag-yaniti

1. ortam basina sonuc
ortam               pencere  gizlenen  gorulen  bastirilan   kanit   temiz  belirsiz yanlis kanit
hazir-goruntu             5         5       22           7       3       4         7            1
elden-gecirilmis         20         4       23           6       4       4         6            1
gercege-yakin            60         2       27           2       6       6         2            1

2. kalem basina karar
kalem    gercek        hazir-goruntu     elden-gecirilmis        gercege-yakin
k01        kotu                kanit                kanit                kanit
k02        kotu  belirsiz (gizlendi)                kanit                kanit
k03        kotu  belirsiz (gizlendi)  belirsiz (gizlendi)                kanit
k04        kotu  belirsiz (gizlendi)  belirsiz (gizlendi)                kanit
k05        kotu  belirsiz (gizlendi)  belirsiz (gizlendi)  belirsiz (gizlendi)
k06        kotu                kanit                kanit                kanit
k07        kotu  belirsiz (gizlendi)  belirsiz (gizlendi)  belirsiz (gizlendi)
k08       temiz                temiz                temiz                temiz
k09       temiz                temiz                temiz                temiz
k10       temiz                temiz                temiz                temiz
k11       temiz                kanit                kanit                kanit
k12       temiz             belirsiz             belirsiz                temiz
k13       temiz             belirsiz             belirsiz                temiz
k14       temiz                temiz                temiz                temiz

3. bedel ve iz
ortam               hazirlik  gozlem dk  elle dk  toplam dk  kacan kotu   dis iz
hazir-goruntu              8         70      210        288           5        3
elden-gecirilmis          35        280      180        495           4        3
gercege-yakin             65        840       60        965           2        5

karara baglanan kalem  7 -> 12 / 14
ortami fark eden kalem 5 -> 2 / 14
hedefte uretilen kayit 0 (cozumleme hedef ortamda kosmaz)
elle inceleme suresi   30 dk/kalem
```

## Gizlenen Davranış

İlk tablonun `gizlenen` sütunu bu dersin ölçüsüdür. Hazır bir görüntüde on dört kalemin **beşi**
ortamı fark ediyor ve belirleyici davranışını hiç göstermiyor. Ortam elden geçtikçe bu sayı 4'e,
sonra 2'ye iniyor. Gözlenen davranış 22'den 27'ye çıkarken bastırılan davranış 7'den 2'ye düşüyor.

Gizlenme, gözlem penceresinin kısalığından farklı bir şeydir ve ikisini ayırmak gerekir. Pencere
kısaysa davranış **henüz** görünmemiştir; uzatmak çözer. Kalem gizleniyorsa davranış **hiç**
görünmeyecektir; pencereyi uzatmak bir şey değiştirmez, ipucunu gizlemek gerekir. İkinci tabloda bu
ayrım kalem kalem okunur: `k04` kırk beş dakika gecikmeli bir davranışa sahiptir ve saat ipucunu
denetler; onu görmek için hem pencerenin altmış dakikaya çıkması hem de hızlandırılmış saatin
gizlenmesi gerekir — biri olmadan öteki yetmez. Buna karşılık `k12` ve `k13` hiçbir şey
denetlemez; onlar için pencereyi uzatmak tek başına yeter ve ikisi de en geniş ortamda temiz çıkar.

Hazırlığın hangi adımının hangi kalemi açtığı da bu tablodan okunur ve kazanç eşit dağılmaz. Hazır
görüntüden elden geçirilmiş ortama geçmek 27 dakika ek hazırlık ister ve tek bir kalemi — aygıt
sayısı ile araç izlerini birlikte denetleyen `k02` — kanıta çevirir. Elden geçirilmişten gerçeğe
yakına geçmek 30 dakika ek hazırlık ve dört kat uzun pencere ister; karşılığında `k03` ile `k04`
kanıta, `k12` ile `k13` temize döner. İkinci adım birincinin biraz üzerinde bir hazırlık maliyetiyle
dört kat iş görür, ama bunu pencere süresini 280 dakikadan 840 dakikaya çıkararak yapar. Hazırlık
ucuz, pencere pahalıdır ve ikisi ayrı kalemlerdir.

İki kalem hiçbir ortamda karara bağlanamıyor: `k05` ve `k07`. İkisi de ağ yanıtlarının tek
düzeliğini denetliyor ve o ipucu hiçbir ortamda gizlenmiyor. Yedi kötü kalemin ikisi, çözümleme
ortamının kalitesinden bağımsız olarak **belirsiz** kalır. Bu iki kalem elle incelemeye devredilir
ve raporda "çözümleme karara bağlayamadı" satırıyla yer alır.

## Kanıt, Temiz ve Yanlış Kanıt

Aday–kanıt farkı burada üç değerli okunur. On dört kalem çözümlemeye aday olarak gelir. Hazır
görüntüde 3'ü kanıta dönüşür, 4'ü temiz çıkar, 7'si belirsiz kalır. En iyi ortamda 6 kanıt, 6 temiz
ve 2 belirsiz vardır. Karara bağlanan kalem sayısı **7'den 12'ye** çıkar.

Temiz çıkan kalemler kanıt kadar değerlidir. Bir kalemin bütün davranışları görüldü ve hiçbiri
belirleyici değilse o kalem kuyruktan düşer; bu, aday listesini kısaltan tek mekanizmadır. Ama
"temiz" kararının koşulu katıdır: kalem gizlenmemiş **ve** hiçbir davranışı bastırılmamış olmalıdır.
Bastırılmış tek bir davranış varsa karar temize değil belirsize gider. Bu katılık kasıtlıdır, çünkü
gevşetildiğinde `k05` ve `k07` sessizce temiz sayılır.

Ters yönde bir hata her ortamda duruyor: **yanlış kanıt** sütunu üçünde de 1. Meşru bir kalem,
belirleyici sayılan bir davranışı gösteriyor ve çözümleme onu kanıt olarak işaretliyor. Hazırlığı
artırmak, pencereyi uzatmak ve ipuçlarını gizlemek bu satırı değiştirmez, çünkü eksik olan gözlem
değil **bağlamdır**. Sanal alan davranışı görür; o davranışın yerinde olup olmadığını, kalemin hangi
işi yapmak üzere kurulduğunu görmez. Bu yüzden çözümleme çıktısı tek başına bir karar değil, bir
karara girdidir.

## Bedel ve Karşı Tarafa Düşen İz

Üçüncü tablo maliyeti veriyor ve tek yönlü artıyor. Hazırlık 8 dakikadan 65'e, gözlem 70'ten 840'a
çıkıyor. Elle inceleme ters yönde gidiyor — 210 dakikadan 60'a — ama düşüş artışı karşılamıyor:
toplam 288 dakikadan 965 dakikaya, üç katından fazlasına çıkıyor. Karşılığında karara bağlanan
kalem beş tane artıyor ve kaçan kötü kalem 5'ten 2'ye iniyor. Kalem başına ödenen bedel yaklaşık
135 dakikadır.

Son sütun bu kursta ilk kez görülen bir iz türüdür. Hedef sistemlerde üretilen kayıt **sıfırdır**;
çözümleme hedef ortamda koşmaz, hiçbir isteği hedefe ulaşmaz. Ama gözlem sırasında dış bağlantı
denemesi yapan kalem sayısı 3'ten 5'e çıkıyor ve bu denemeler bir yere gider. Denetimli ağ bunları
gerçek bir hedefe ulaştırmasa bile, denemenin kendisi ve zamanlaması karşı tarafa bir şey söyleyecek
biçimde dışarı sızabilir. Çözümleme ortamı ne kadar gerçeğe yakınsa kalem o kadar çok davranış
gösterir; gösterdiği her davranış aynı zamanda **incelendiğinin işaretidir**.

Bu, kursun iz sütununu ikiye ayırır: savunmanın gördüğü iz ve karşı tarafın görebileceği iz.
İkisinin yönü terstir. Savunmanın gördüğü iz değerlendirmenin kurum içinde şeffaf yürüdüğünün
işaretidir ve fazlalığı yalnız gürültü yaratır. Karşı tarafa düşen iz ise geri alınamaz: bir kalemin
incelendiğinin öğrenilmesi, o kalemi kullananın davranışını değiştirmesine yeter ve sonraki bütün
ölçümleri bozar. Bir sonraki ders ikincisini çok daha keskin bir biçimde ölçecektir.

## Özet

- On dört kalemin hazır bir görüntüde beşi ortamı fark edip belirleyici davranışını göstermez; ortam
  elden geçtikçe bu sayı 2'ye iner ve gözlenen davranış 22'den 27'ye çıkar.
- Gizlenme ile kısa pencere ayrı sorunlardır: birincisi ipucu gizlemekle, ikincisi pencereyi
  uzatmakla çözülür ve bazı kalemler ikisini birden ister.
- Bir ortam ipucu hiçbir ortamda gizlenemez, çünkü gizlemek kalemin gerçek bir hedefe ulaşmasını
  gerektirir ve bu kapsam dışıdır; yedi kötü kalemin ikisi bu nedenle her ortamda belirsiz kalır.
- Karara bağlanan kalem 7'den 12'ye çıkar; temiz çıkan kalem, aday listesini kısaltan tek
  mekanizmadır ve koşulu katıdır.
- Yanlış kanıt üç ortamda da 1'dir; eksik olan gözlem değil bağlamdır ve hazırlıkla kapanmaz.
- Toplam süre 288 dakikadan 965 dakikaya çıkar; hedefte üretilen kayıt sıfırdır ama dış bağlantı
  denemesi yapan kalem sayısı 3'ten 5'e çıkarak karşı tarafa iz bırakır.

## Sonraki Adım

Bu derste tek bir çözümleme ortamının kararı ölçüldü ve iki kalem karara bağlanamadan kaldı. Bir
kalemi karara bağlamanın ikinci bir yolu daha vardır: aynı kalemi **çok sayıda bağımsız motora**
sorup çıkan sonuçları birleştirmek. Bu yol çözümleme süresini dakikalardan saniyelere indirir ve
karşılığında yeni bir soru getirir — birbiriyle çelişen sonuçlar nasıl birleştirilir.

Sonraki ders çoklu motor itibar servislerini bu eksende ele alır. Aynı kalem kümesi çok sayıda
motordan geçirilir, **çoğunluk kararının** yanlış pozitif ve yanlış negatif oranı eşik eşik ölçülür
ve tek motora güvenmenin bedeli sayılır. Bunun yanında gizlilik bedeli hesaplanır: bir dosyayı
dışarıdaki bir servise göndermek onu yayımlamaktır ve kurgu ölçüm ağındaki kalemlerin bir bölümü
abone verisi taşır.
