# Kaynak Kod Analizi ve SAST Hizmetleri

**URL:** https://securesys.com.tr/tr/hizmetler/kaynak-kod-analizi-sast-hizmeti

Modern yazılım projelerinde güvenlik yalnızca uygulama production ortamına alındıktan sonra yapılan penetration testlerinden ibaret değildir. Güvenlik açıklarının mümkün olduğunca geliştirme aşamasında tespit edilmesi, remediation maliyetini azaltır, release süreçlerini hızlandırır ve kritik zafiyetlerin production ortamına ulaşma riskini düşürür.

SecureSys **Kaynak Kod Analizi ve SAST Hizmetleri**, yazılım kaynak kodlarının güvenlik açısından incelenmesi, statik analiz araçlarının devreye alınması, güvenli kodlama hatalarının tespit edilmesi ve bulguların geliştirici ekiplerle birlikte remediation süreçlerine taşınmasını kapsar.

Hizmet kapsamında;

- Static Application Security Testing – SAST,
- Secure Code Review,
- Source Code Security,
- Software Composition Analysis – SCA,
- Secret Scanning,
- Dependency Security,
- CI/CD entegrasyonu,
- Security Gate,
- Vulnerability Validation,
- Remediation Support

süreçleri birlikte ele alınabilir.

Yaklaşımımız:

**Source Code → SAST → SCA → Secret Scan → Validation → Remediation → CI/CD Security Gate**

döngüsüne dayanır.

Amaç yalnızca scanner çıktısı üretmek değil, yazılım ekiplerinin gerçekten aksiyon alabileceği, önceliklendirilmiş ve teknik olarak doğrulanmış güvenlik görünürlüğü oluşturmaktır.

### Kaynak Kod Analizi Nedir?

Kaynak Kod Analizi, uygulamanın kaynak kodunun güvenlik, kalite ve güvenli yazılım geliştirme prensipleri açısından incelenmesidir.

Kaynak kod analizi;

- otomatik SAST araçları,
- manuel code review,
- dependency analizi,
- secure coding kontrolleri

ile gerçekleştirilebilir.

Bu sayede uygulama production ortamına alınmadan önce potansiyel güvenlik problemleri tespit edilebilir.

### SAST Nedir?

SAST, **Static Application Security Testing** kavramının kısaltmasıdır.

SAST teknolojileri uygulamayı çalıştırmadan kaynak kod, bytecode veya binary üzerinde statik analiz gerçekleştirir.

Amaç;

- güvenli olmayan kod yapıları,
- injection riskleri,
- authentication problemleri,
- authorization hataları,
- hassas veri kullanımı,
- insecure API kullanımı

gibi güvenlik problemlerinin erken aşamada tespit edilmesidir.

### SAST Nasıl Çalışır?

SAST araçları kaynak kodu parse ederek uygulamanın veri akışlarını, fonksiyon çağrılarını ve potansiyel riskli kod yapılarını analiz eder.

Örneğin kullanıcıdan alınan bir input doğrudan SQL sorgusuna gönderiliyorsa SAST sistemi bu veri akışını takip ederek SQL Injection riski oluşturabilir.

Temel akış:

**User Input → Application Logic → Sensitive Function**

şeklinde analiz edilir.

### SAST ve DAST Arasındaki Fark

SAST ve DAST birbirini tamamlayan iki farklı Application Security yöntemidir.

#### SAST

Kaynak kodu analiz eder.

#### DAST

Çalışan uygulamayı dışarıdan test eder.

SAST daha erken aşamada güvenlik problemi tespit edebilirken DAST uygulamanın gerçek runtime davranışını analiz eder.

### SAST ve Penetrasyon Testi Arasındaki Fark

SAST otomatik veya yarı otomatik olarak kaynak kodu analiz eder.

Penetration Testing ise çalışan sistem üzerinde saldırgan bakış açısıyla güvenlik testi gerçekleştirir.

SAST;

- tekrarlanabilir,
- otomatik,
- CI/CD uyumlu

bir yaklaşım sunar.

Pentest ise;

- business logic,
- authorization bypass,
- attack chaining,
- runtime behavior

gibi daha karmaşık güvenlik problemlerini ortaya çıkarabilir.

Bu nedenle iki yaklaşım birlikte kullanılmalıdır.

### Secure Code Review

Secure Code Review, kaynak kodun uzman güvenlik analistleri tarafından manuel olarak incelenmesidir.

Manuel inceleme özellikle otomatik SAST araçlarının tespit etmekte zorlandığı;

- business logic,
- authorization,
- custom cryptography,
- privilege management,
- security architecture

problemlerini ortaya çıkarabilir.

### Otomatik ve Manuel Kaynak Kod Analizi

SecureSys kaynak kod güvenliğinde iki yaklaşımı birlikte kullanabilir:

#### Automated SAST

Geniş kod tabanlarında hızlı analiz sağlar.

#### Manual Secure Code Review

Kritik ve karmaşık fonksiyonların daha derin analiz edilmesini sağlar.

Bu yaklaşım özellikle kritik uygulamalarda daha güçlü sonuç üretir.

### Kaynak Kod Güvenliği Neden Önemlidir?

Production ortamında tespit edilen güvenlik açıklarının remediation maliyeti geliştirme aşamasında bulunan hatalara göre daha yüksek olabilir.

Kaynak kod analizi;

- güvenlik hatalarının erken tespit edilmesini,
- geliştirici farkındalığının artırılmasını,
- release riskinin azaltılmasını,
- tekrar eden güvenlik hatalarının önlenmesini

sağlayabilir.

### Shift Left Security

Kaynak kod analizi, Shift Left Security yaklaşımının temel bileşenlerinden biridir.

Güvenlik kontrollerinin yazılım geliştirme sürecinin başlangıcına taşınması hedeflenir.

Örnek:

**Developer → Commit → SAST → Fix → Merge**

modeli uygulanabilir.

### Secure SDLC ve SAST

Secure Software Development Lifecycle içerisinde SAST;

- coding,
- pull request,
- build,
- release

aşamalarına entegre edilebilir.

Bu sayede güvenlik kontrolleri tek seferlik proje faaliyeti olmaktan çıkar.

### Kaynak Kod Analizinde Tespit Edilebilecek Riskler

SAST sistemleri teknoloji ve kullanılan analiz motoruna bağlı olarak birçok güvenlik problemine işaret edebilir.

Örnek riskler:

- SQL Injection,
- Cross-Site Scripting,
- Command Injection,
- Path Traversal,
- XXE,
- SSRF,
- insecure deserialization,
- weak cryptography,
- hardcoded credentials,
- insecure random,
- sensitive data exposure,
- unsafe file handling.

### SQL Injection Kaynak Kod Analizi

SQL Injection problemleri genellikle kullanıcı inputlarının güvenli olmayan şekilde SQL query içerisinde kullanılmasından kaynaklanır.

Riskli yaklaşım:

**User Input → Dynamic SQL Query**

Güvenli yaklaşımda parameterized query veya prepared statement kullanılabilir.

SAST bu veri akışlarını otomatik olarak analiz edebilir.

### XSS Kaynak Kod Analizi

Cross-Site Scripting problemleri kullanıcı kontrollü verilerin uygun encoding veya sanitization yapılmadan HTML çıktısına yazılması sonucu oluşabilir.

SAST, input-to-output veri akışlarını analiz ederek potansiyel XSS risklerini belirleyebilir.

### Command Injection

Kullanıcı inputunun işletim sistemi komutlarına aktarılması Command Injection riski oluşturabilir.

SAST riskli command execution fonksiyonlarını analiz edebilir.

### Path Traversal

Dosya yollarının kullanıcı girdilerine göre kontrolsüz oluşturulması kullanıcıların izin verilmeyen dosyalara erişmesine neden olabilir.

SAST bu tür file system access pattern'lerini tespit edebilir.

### SSRF

Server-Side Request Forgery riskleri uygulamanın kullanıcı kontrollü URL'lere server tarafından request göndermesi durumunda oluşabilir.

SAST veri akışlarını analiz ederek potansiyel SSRF noktalarını belirleyebilir.

### XXE

XML parser konfigürasyonlarının güvenli olmaması XML External Entity saldırılarına neden olabilir.

Kaynak kod analizi riskli XML parser kullanımını tespit edebilir.

### Insecure Deserialization

Güvenilmeyen verinin kontrolsüz şekilde deserialize edilmesi bazı teknolojilerde kritik güvenlik riskleri oluşturabilir.

SAST bu kullanım modellerini analiz edebilir.

### Authentication Güvenliği

Kaynak kod analizi authentication süreçlerindeki güvenlik problemlerini tespit etmeye yardımcı olabilir.

Örneğin;

- insecure session management,
- password handling,
- weak authentication flow,
- unsafe token validation

kontrol edilebilir.

### Authorization Analizi

Authorization problemleri yalnızca otomatik scanner ile her zaman tespit edilemez.

Kritik role ve permission kontrolleri Secure Code Review ile incelenebilir.

### Hardcoded Credential

Kaynak kod içerisinde;

- password,
- database password,
- API key,
- access token,
- private key

bulunması ciddi güvenlik riski oluşturur.

SAST ve Secret Scanning sistemleri bu bilgileri tespit edebilir.

### Secret Scanning

Secret Scanning özellikle Git repository ve commit history üzerinde hassas credential'ları arar.

Örneğin;

- AWS key,
- API token,
- private certificate,
- database credential

tespit edilebilir.

### Git History Analizi

Bir secret mevcut koddan silinmiş olsa bile eski Git commit'lerinde bulunabilir.

Bu nedenle secret scanning yalnızca son source code versiyonunda değil commit history üzerinde de uygulanabilir.

### Credential Rotation

Kaynak kodda bulunan credential yalnızca silinmemelidir.

Ele geçirilmiş olabileceği varsayılarak credential rotate edilmelidir.

### Secure Secret Management

Credential bilgileri source code yerine;

- Vault,
- secret manager,
- environment variable,
- workload identity

gibi güvenli mekanizmalarda tutulabilir.

### Cryptography Analizi

Kaynak kod içerisinde zayıf veya yanlış cryptographic implementation bulunabilir.

Örneğin;

- deprecated algorithm,
- hardcoded key,
- weak random,
- insecure cipher mode

riskleri değerlendirilebilir.

### Password Storage

Password'ların plaintext veya geri döndürülebilir encryption ile saklanması ciddi güvenlik riskidir.

Güvenli password hashing algoritmaları kullanılmalıdır.

### Sensitive Data Exposure

Kaynak kod analizi hassas verilerin;

- log,
- error message,
- debug output,
- API response

üzerinden istemeden açığa çıkarılması risklerini belirleyebilir.

### Logging Security

Uygulama loglarına;

- password,
- token,
- personal data,
- credit card data

gibi hassas bilgilerin yazılması engellenmelidir.

### Error Handling

Aşırı detaylı error message'ları saldırganlara sistem mimarisi hakkında bilgi verebilir.

Secure Code Review hata yönetim süreçlerini değerlendirebilir.

### Input Validation

Kullanıcı inputlarının güvenilir kabul edilmesi birçok uygulama güvenliği probleminin temel nedenidir.

Input validation merkezi ve tutarlı şekilde uygulanmalıdır.

### Output Encoding

Özellikle web uygulamalarında farklı context'lere uygun output encoding uygulanması gerekir.

### File Upload Security

Dosya upload fonksiyonlarında;

- extension,
- MIME type,
- file size,
- storage path,
- malware scanning

kontrolleri uygulanmalıdır.

Kaynak kod analizi upload fonksiyonlarını güvenlik açısından inceleyebilir.

### API Security Code Review

Modern uygulamalarda API endpoint'lerinin güvenliği kritik öneme sahiptir.

Code review kapsamında;

- authentication,
- authorization,
- input validation,
- object ownership,
- rate limiting

gibi kontroller değerlendirilebilir.

### REST API Kaynak Kod Analizi

REST API'lerde özellikle IDOR/BOLA ve authorization hataları yüksek risk oluşturabilir.

Bu problemler manuel code review ile daha detaylı analiz edilebilir.

### GraphQL Güvenliği

GraphQL projelerinde;

- authorization,
- introspection,
- query depth,
- resource exhaustion

gibi riskler incelenebilir.

### Mobil Backend Kaynak Kod Analizi

Mobil uygulamaların backend API servisleri de SAST kapsamına dahil edilebilir.

### Web Uygulama Kaynak Kod Analizi

Web uygulamalarında frontend ve backend bileşenleri kullanılan teknolojiye göre analiz edilebilir.

### Mikroservis Kaynak Kod Analizi

Microservices mimarisinde her servisin bağımsız repository veya codebase'i olabilir.

SecureSys tüm servisler için merkezi SAST politikası oluşturabilir.

### Monorepo SAST

Tüm uygulamaların tek repository içinde bulunduğu monorepo yapılarda SAST kapsamı proje bazında yapılandırılabilir.

### Multi-Repo SAST

Çok sayıda repository bulunan kurumlarda merkezi SAST platformu oluşturulabilir.

### SAST Desteklenen Diller

Kullanılan araca bağlı olarak çok sayıda programlama dili analiz edilebilir.

Örneğin;

- Java,
- C# / .NET,
- JavaScript,
- TypeScript,
- Python,
- PHP,
- C/C++,
- Go,
- Kotlin,
- Swift

gibi diller desteklenebilir.

### Java Kaynak Kod Analizi

Java uygulamalarda;

- Spring Security,
- serialization,
- SQL access,
- file operations,
- cryptography

gibi alanlar analiz edilebilir.

### .NET Kaynak Kod Analizi

C# ve .NET uygulamalarda;

- authentication,
- Entity Framework,
- SQL queries,
- ASP.NET security,
- configuration

kontrol edilebilir.

### JavaScript ve TypeScript SAST

Node.js ve frontend/backend JavaScript projelerinde;

- dependency,
- input handling,
- server-side logic,
- secret

riskleri analiz edilebilir.

### Python Kaynak Kod Analizi

Python uygulamalarında;

- Django,
- Flask,
- FastAPI,
- file operations,
- command execution,
- database access

gibi alanlar değerlendirilebilir.

### PHP Kaynak Kod Analizi

PHP uygulamalarında injection, file handling ve authentication riskleri otomatik ve manuel yöntemlerle incelenebilir.

### Go Kaynak Kod Analizi

Cloud-native ve microservice projelerinde kullanılan Go uygulamaları SAST analizine dahil edilebilir.

### Mobil Kaynak Kod Analizi

Android ve iOS uygulamalarında;

- insecure storage,
- API keys,
- cryptography,
- certificate validation,
- sensitive data handling

gibi güvenlik konuları kaynak kod seviyesinde değerlendirilebilir.

### Android Kaynak Kod Analizi

Android Java/Kotlin projelerinde;

- SharedPreferences,
- local database,
- exported component,
- WebView,
- intent handling

kontrolleri gerçekleştirilebilir.

### iOS Kaynak Kod Analizi

Swift ve Objective-C projelerinde;

- Keychain,
- local storage,
- ATS,
- URL scheme,
- certificate handling

gibi alanlar analiz edilebilir.

### Software Composition Analysis – SCA

Modern source code projeleri çok sayıda third-party dependency kullanır.

SAST first-party code'u analiz ederken SCA third-party component'leri analiz eder.

Bu nedenle uygulama güvenliğinde;

#### SAST + SCA

birlikte kullanılmalıdır.

### Dependency Vulnerability

Kullanılan open source library'deki güvenlik açığı uygulamanın kendisini etkileyebilir.

SCA ile vulnerable dependency'ler belirlenebilir.

### Transitive Dependency

Bir package'ın kullandığı başka package'lar da security risk oluşturabilir.

SCA dependency tree üzerinden transitive dependency'leri analiz edebilir.

### Dependency Update

Vulnerable dependency'ler için güvenli versiyon önerileri oluşturulabilir.

### SBOM Oluşturma

Kaynak kod ve dependency analizinden sonra Software Bill of Materials oluşturulabilir.

SBOM uygulamanın kullandığı third-party component'leri merkezi olarak görünür hale getirir.

### CycloneDX ve SPDX

SBOM çıktıları ihtiyaçlara göre CycloneDX veya SPDX formatında üretilebilir.

### Lisans Analizi

Open source component'lerin yalnızca vulnerability değil lisans riskleri de analiz edilebilir.

### Source Code License Compliance

Bazı open source lisanslar yazılım dağıtım modelini etkileyebilir.

SCA çözümleri license visibility sağlayabilir.

### End-of-Life Dependency

Geliştirmesi sona ermiş ve artık patch almayan framework veya package'lar tespit edilebilir.

### SAST CI/CD Entegrasyonu

SAST'ın en önemli avantajlarından biri CI/CD pipeline içerisine entegre edilebilmesidir.

Örnek:

**Developer Commit → Build → SAST → Security Gate → Deployment**

### Pull Request SAST

Her Pull Request açıldığında yalnızca değişen kod üzerinde güvenlik analizi çalıştırılabilir.

Bu yaklaşım developer'a hızlı feedback sağlar.

### Merge Request Security

Kritik vulnerability bulunduğunda Merge Request'in birleştirilmesi engellenebilir.

### Security Gate

Risk seviyesine göre otomatik security gate uygulanabilir.

Örneğin;

**Critical → Block**

**High → Approval**

**Medium → Track**

**Low → Report**

### SAST ve GitLab CI/CD

GitLab kullanan ortamlarda SAST analizleri pipeline job olarak çalıştırılabilir.

### SAST ve GitHub Actions

GitHub repository'lerinde security scan GitHub Actions pipeline'larına entegre edilebilir.

### SAST ve Azure DevOps

Azure DevOps Pipeline içerisinde kaynak kod güvenlik taramaları otomatik hale getirilebilir.

### SAST ve Jenkins

Mevcut Jenkins CI/CD ortamlarına SAST araçları entegre edilebilir.

### Quality Gate ve Security Gate

Yazılım quality ile security sonuçları aynı pipeline içerisinde değerlendirilebilir.

Quality Gate;

- code quality,
- coverage,
- duplication

kontrol ederken Security Gate;

- vulnerability,
- secret,
- dependency

risklerini değerlendirir.

### SAST as a Service

Kendi SAST platformunu kurmak istemeyen kurumlar için analiz servis modeliyle sunulabilir.

SecureSys **SAST as a Service** kapsamında;

- source code scanning,
- finding validation,
- false positive analysis,
- reporting,
- remediation support

hizmetleri sağlayabilir.

### Managed SAST Hizmeti

SAST ürününe sahip olmak tek başına yeterli değildir.

Scanner sonuçlarının sürekli analiz edilmesi gerekir.

SecureSys Managed SAST kapsamında;

- scan scheduling,
- rule tuning,
- finding triage,
- false positive management,
- developer reporting

süreçlerini yönetebilir.

### False Positive Yönetimi

SAST araçları gerçek güvenlik problemi olmayan bulgular üretebilir.

Çok fazla false positive developer ekiplerinin güvenlik araçlarını dikkate almamasına neden olabilir.

SecureSys kritik bulguları uzman analistler tarafından doğrulayabilir.

### True Positive Validation

High ve Critical seviyedeki bulgular manuel olarak analiz edilerek gerçek risk olup olmadığı belirlenebilir.

### Exploitability Analizi

Kod içerisinde vulnerability bulunması her zaman doğrudan exploitable olduğu anlamına gelmez.

Risk;

- application exposure,
- data flow,
- authentication,
- existing controls

ile birlikte değerlendirilmelidir.

### Risk Bazlı Önceliklendirme

SecureSys bulguları yalnızca scanner severity skoruna göre değerlendirmez.

Önceliklendirmede;

- vulnerability severity,
- application criticality,
- internet exposure,
- exploitability,
- data sensitivity

birlikte değerlendirilebilir.

### Vulnerability Triage

Triage sürecinde bulgular;

- gerçek risk,
- false positive,
- accepted risk,
- remediation required

olarak sınıflandırılabilir.

### Remediation Guidance

Her güvenlik bulgusu için geliştiricinin anlayabileceği teknik remediation önerileri hazırlanabilir.

Örneğin sadece:

#### “SQL Injection bulundu.”

demek yerine;

- riskli kod satırı,
- veri akışı,
- örnek güvenli yaklaşım,
- remediation açıklaması

sunulabilir.

### Developer-Friendly Raporlama

SAST raporlarının geliştirici ekip tarafından anlaşılabilir olması önemlidir.

Raporda;

- file,
- line,
- function,
- vulnerability,
- severity,
- recommendation

bilgileri bulunabilir.

### Yönetici SAST Raporu

Üst yönetim için teknik kod satırı detayları yerine;

- toplam uygulama,
- kritik vulnerability,
- remediation trend,
- açık riskler,
- security coverage

özetlenebilir.

### Ticketing Entegrasyonu

SAST bulguları;

- Jira,
- Azure Boards,
- ServiceNow

gibi ticketing sistemlerine otomatik aktarılabilir.

### Vulnerability Ownership

Her bulgu ilgili developer veya application owner'a atanabilir.

### Remediation SLA

Risk seviyesine göre remediation süreleri belirlenebilir.

Örneğin:

**Critical → 7 gün**

**High → 30 gün**

**Medium → 60 gün**

kurum politikasına göre yapılandırılabilir.

### Remediation Takibi

Bulgular kapatılana kadar merkezi olarak takip edilebilir.

### Retest

Developer remediation yaptıktan sonra ilgili kod yeniden analiz edilerek açığın giderildiği doğrulanabilir.

### Delta Scan

Her taramada tüm kaynak kodu analiz etmek yerine yalnızca değişen bölümler taranabilir.

Bu yaklaşım developer feedback süresini azaltabilir.

### Baseline Scan

İlk aşamada tüm codebase taranarak mevcut güvenlik borcu belirlenebilir.

### Legacy Application SAST

Uzun yıllardır kullanılan uygulamalarda binlerce güvenlik bulgusu oluşabilir.

Bu durumda tüm bulguların aynı anda çözülmesi mümkün olmayabilir.

SecureSys risk bazlı remediation roadmap'i oluşturabilir.

### Security Technical Debt

Uzun süre güvenlik kontrolü uygulanmadan geliştirilen yazılımlarda güvenlik teknik borcu oluşabilir.

SAST bu borcun ölçülmesine yardımcı olabilir.

### Application Security Maturity

Kurumun kaynak kod güvenlik olgunluğu;

- secure coding,
- SAST,
- SCA,
- [DevSecOps](/tr/hizmetler/devops-devsecops-hizmetleri),
- remediation,
- metrics

başlıklarında değerlendirilebilir.

### Secure Code Review Checklist

Kritik projelerde teknolojiye özel manuel code review checklist'leri oluşturulabilir.

### OWASP Top 10 ve Kaynak Kod Analizi

SAST kontrolleri OWASP Top 10 riskleriyle ilişkilendirilebilir.

Örneğin;

- Injection,
- Cryptographic Failures,
- Security Misconfiguration,
- Identification and Authentication Failures

gibi risk alanları analiz edilebilir.

### OWASP ASVS

Kritik web uygulamalarının source code ve mimari incelemelerinde OWASP Application Security Verification Standard kullanılabilir.

### OWASP API Security

API kaynak kod analizlerinde OWASP API Security riskleri göz önünde bulundurulabilir.

### CWE Mapping

SAST bulguları Common Weakness Enumeration – CWE kodlarıyla ilişkilendirilebilir.

Bu sayede güvenlik problemlerinin standart sınıflandırması yapılabilir.

### CVE ve CWE Arasındaki Fark

CWE yazılım zayıflık türlerini tanımlar.

CVE ise bilinen belirli vulnerability kayıtlarını ifade eder.

SAST çoğunlukla CWE türündeki coding weakness'leri tespit eder.

SCA ise CVE içeren dependency'leri analiz eder.

### NIST SSDF ve SAST

NIST Secure Software Development Framework, güvenli yazılım geliştirme süreçlerinin SDLC içerisine entegre edilmesini önerir.

SAST bu yaklaşımın teknik uygulamalarından biri olarak kullanılabilir.

### ISO/IEC 27001 ve Kaynak Kod Güvenliği

ISO/IEC 27001 kapsamındaki secure development ve vulnerability management süreçleri kaynak kod analizleriyle desteklenebilir.

### PCI DSS ve Kaynak Kod Analizi

Ödeme uygulamalarında secure coding ve application security kontrolleri PCI DSS gereksinimleri kapsamında önemlidir.

SAST bu süreçleri teknik olarak destekleyebilir.

### KVKK ve Kaynak Kod Güvenliği

Kişisel veri işleyen yazılımlardaki güvenlik açıkları veri ihlaline neden olabilir.

Kaynak kod analizi kişisel veri işleyen uygulamalarda güvenli geliştirme yaklaşımını destekler.

### DORA ve Yazılım Güvenliği

Finans sektöründe kullanılan kritik uygulamaların güvenli geliştirilmesi ve vulnerability'lerin yönetilmesi operasyonel dayanıklılık açısından önemlidir.

### SAST ve DevSecOps

SAST modern DevSecOps pipeline'ının temel güvenlik araçlarından biridir.

Ancak yalnız başına yeterli değildir.

Olgun bir DevSecOps modeli:

**SAST + SCA + Secret Scan + IaC Scan + Container Scan + DAST + Pentest**

kontrollerini birlikte kullanabilir.

### SAST ve Software Supply Chain Security

SAST kurumun yazdığı kaynak kodu analiz ederken [Software Supply Chain Security](/tr/hizmetler/software-supply-chain-security-sbom) third-party dependency ve build zincirini de değerlendirir.

Bu iki alan birlikte yönetilmelidir.

### SAST ve SBOM

SAST ve SBOM farklı amaçlara hizmet eder.

**SAST:** Kaynak kod zayıflıkları.

**SBOM:** Kullanılan yazılım bileşenlerinin envanteri.

İki veri merkezi Application Security dashboard'unda birlikte gösterilebilir.

### SAST ve Platform Engineering

[Internal Developer Platform](/tr/hizmetler/platform-engineering-internal-developer-platform-idp) üzerinde SAST tüm developer ekipleri için varsayılan servis haline getirilebilir.

Golden Path içerisinde SAST otomatik çalıştırılabilir.

### Secure by Default Development

Yeni oluşturulan her repository için otomatik;

- SAST,
- SCA,
- secret scanning,
- branch protection

aktif hale getirilebilir.

### Kaynak Kod Erişim Güvenliği

Source code kurumun önemli fikri mülkiyet varlıklarından biridir.

Repository erişimleri;

- MFA,
- RBAC,
- least privilege,
- audit

kontrolleriyle korunmalıdır.

### Private SAST Ortamı

Kaynak kodun kurum dışına çıkmasının uygun olmadığı durumlarda SAST tamamen on-premise veya private cloud üzerinde kurulabilir.

### Air-Gapped SAST

Savunma, kamu veya kritik sistem projelerinde kaynak kod internet bağlantısı bulunmayan ortamda analiz edilebilir.

SecureSys Air-Gapped SAST mimarisi oluşturabilir.

### Kırmızı Ağ İçerisinde Kaynak Kod Analizi

Kritik yazılım geliştirme ortamlarında;

**Private Git → Private SAST → Private SCA → Private CI/CD**

mimarisi Kırmızı Ağ içerisinde oluşturulabilir.

### Kaynak Kod Gizliliği

Third-party SaaS SAST sistemlerine kaynak kod yüklenmeden önce;

- data residency,
- source code confidentiality,
- vendor access

değerlendirilmelidir.

### On-Premise SAST

Kaynak kodun tamamen kurum içerisinde kalması için on-premise SAST platformları kurulabilir.

### Cloud SAST

Daha esnek projelerde cloud tabanlı SAST servisleri kullanılabilir.

### Hibrit SAST

Bazı repository'ler private ortamda, daha az kritik projeler cloud servislerinde analiz edilebilir.

### SAST Tool Entegrasyonları

SecureSys kurumun mevcut lisans ve teknoloji tercihlerine göre farklı SAST platformlarının entegrasyonuna destek olabilir.

Buradaki temel hedef belirli bir araçtan ziyade sürdürülebilir Application Security süreci oluşturmaktır.

### SonarQube ve Code Quality

SonarQube gibi code quality platformları;

- code smell,
- duplication,
- maintainability,
- bazı security issues

konusunda görünürlük sağlayabilir.

Ancak kapsamlı AppSec gereksinimlerinde specialized SAST teknolojileriyle birlikte değerlendirilmesi gerekebilir.

### Application Security Dashboard

Birden fazla SAST, SCA ve security tool çıktısı merkezi dashboard üzerinde gösterilebilir.

### Security Finding Correlation

Aynı vulnerability'nin farklı araçlardan tekrar tekrar raporlanması engellenebilir.

### Vulnerability Deduplication

Findings normalize edilerek duplicate bulgular azaltılabilir.

### Application Risk Score

Her uygulama için;

- SAST,
- SCA,
- DAST,
- pentest,
- criticality

verilerinden merkezi risk skoru oluşturulabilir.

### Security Coverage

Kurum içerisindeki uygulamaların yüzde kaçında SAST uygulandığı ölçülebilir.

Örneğin:

#### SAST Coverage: %90

### SAST KPI'ları

Ölçülebilecek metrikler;

- taranan uygulama sayısı,
- Critical/High bulgu sayısı,
- Mean Time to Remediate,
- false positive oranı,
- security gate failure,
- scan coverage

olabilir.

### Mean Time to Remediate – MTTR

Güvenlik açığının tespitinden remediation tamamlanmasına kadar geçen süre ölçülebilir.

### Vulnerability Trend

Aylık olarak yeni bulunan ve kapatılan vulnerability sayıları karşılaştırılabilir.

### Developer Security Scorecard

Geliştirme ekiplerine uygulama bazlı security scorecard sunulabilir.

Amaç ekipleri cezalandırmak değil, güvenlik iyileştirmelerini ölçülebilir hale getirmektir.

### Secure Coding Eğitimi ile Entegrasyon

SAST sonuçları geliştirici eğitimlerinin kişiselleştirilmesinde kullanılabilir.

Örneğin ekipte sürekli SQL Injection problemi görülüyorsa ilgili geliştiricilere özel secure coding eğitimi planlanabilir.

### Just-in-Time Security Training

Developer bulguyu incelerken doğrudan ilgili vulnerability hakkında kısa eğitim içeriği gösterilebilir.

### AI Generated Code Security

AI coding assistant kullanımının artması kaynak kod analizini daha önemli hale getirmektedir.

AI tarafından üretilen kod da;

- insecure API,
- vulnerable pattern,
- hardcoded secret,
- weak authentication

içerebilir.

Bu nedenle:

**AI Generated Code → Developer Review → SAST → SCA → Security Gate**

modeli uygulanmalıdır.

### AI Code Review

AI tabanlı araçlar code review sürecini hızlandırabilir.

Ancak security-critical kararların yalnızca AI çıktısına bırakılmaması gerekir.

AI destekli analiz ve insan uzman değerlendirmesi birlikte kullanılabilir.

### Secure AI-Assisted Development

AI coding assistant kullanımında yalnızca kod güvenliği değil;

- source code privacy,
- prompt leakage,
- credential exposure,
- IP risk

de değerlendirilmelidir.

### LLM Application Source Code Security

LLM ve [Generative AI](/tr/hizmetler/llm-generative-ai-cozumleri) uygulamalarının source code'u klasik web uygulama güvenlik risklerinin yanında;

- model API key,
- prompt template,
- tool authorization,
- data source access

gibi yeni riskler içerir.

### AI Agent Kaynak Kod Güvenliği

[Agentic AI](/tr/hizmetler/ai-agent-agentic-ai-cozumleri) sistemlerinde tool calling ve yüksek yetkili API entegrasyonları bulunabilir.

Code review sırasında;

- tool permissions,
- authorization,
- human approval,
- action boundaries

özellikle değerlendirilmelidir.

### SecureSys Kaynak Kod Analizi Hizmet Süreci

#### \1. Uygulama ve Repository Envanteri

Analiz kapsamındaki uygulamalar, diller ve repository'ler belirlenir.

#### \2. Teknoloji Analizi

Framework, dependency manager ve build sistemleri tespit edilir.

#### \3. İlk SAST Taraması

Kaynak kod üzerinde baseline güvenlik analizi gerçekleştirilir.

#### \4. SCA ve Secret Scanning

Third-party component ve hassas credential riskleri analiz edilir.

#### \5. Uzman Doğrulaması

Kritik bulgular manuel olarak incelenir.

#### \6. Risk Önceliklendirmesi

Bulgular uygulama kritikliğine ve exploitability durumuna göre sıralanır.

#### \7. Teknik Raporlama

Developer ekip için kod seviyesinde remediation önerileri hazırlanır.

#### \8. Yönetici Raporu

Toplam risk ve uygulama güvenlik durumu özetlenir.

#### \9. Remediation Desteği

Developer ekiplerin bulguları gidermesine teknik destek sağlanabilir.

#### \10. Retest

Düzeltilen bulgular tekrar kontrol edilir.

#### \11. CI/CD Entegrasyonu

SAST süreçleri otomatik pipeline'a taşınır.

#### \12. Sürekli Yönetim

SAST as a Service veya Managed SAST modeliyle sürekli analiz uygulanabilir.

### Neden SecureSys Kaynak Kod Analizi ve SAST Hizmeti?

Bir SAST aracının binlerce bulgu üretmesi tek başına yazılımı güvenli hale getirmez.

Asıl değer;

**Detection → Validation → Prioritization → Remediation → Retest → Automation**

zincirinin doğru yönetilmesidir.

SecureSys kaynak kod analizini yalnızca otomatik scanner çıktısı olarak değil; DevSecOps, penetration testing ve software supply chain security süreçlerinin bir parçası olarak ele alır.

Bu sayede kurumların güvenlik ekipleri ile developer ekipleri arasında uygulanabilir bir güvenlik modeli oluşturulması hedeflenir.

Yaklaşımımız:

**Find Earlier → Validate Better → Fix Faster → Prevent Recurrence**

prensibine dayanır.

### Sık Sorulan Sorular

#### SAST nedir?

Static Application Security Testing, uygulama kaynak kodunun çalıştırılmadan güvenlik açıkları açısından analiz edilmesini sağlayan yöntemdir.

#### Kaynak kod analizi ile SAST aynı şey midir?

SAST kaynak kod analizinin otomatik bileşenidir. Kaynak kod analizi manuel Secure Code Review çalışmalarını da kapsayabilir.

#### SAST penetration testinin yerine geçer mi?

Hayır. SAST kaynak kod zayıflıklarını analiz eder; penetration test ise çalışan uygulamadaki gerçek saldırı yollarını değerlendirir.

#### SAST CI/CD pipeline'a entegre edilebilir mi?

Evet. Commit, Pull Request, build veya release aşamalarında otomatik SAST çalıştırılabilir.

#### SAST kaynak kodu dışarı gönderir mi?

Kullanılan ürüne bağlıdır. Kaynak kod gizliliği kritikse on-premise veya Air-Gapped SAST mimarileri kullanılabilir.

#### SAST hangi programlama dillerini destekler?

Kullanılan platforma göre Java, C#, JavaScript, TypeScript, Python, PHP, Go, Kotlin, Swift ve birçok farklı dil analiz edilebilir.

#### SAST ve SCA arasındaki fark nedir?

SAST kurumun yazdığı kaynak kodu, SCA ise third-party ve open source dependency'leri analiz eder.

#### SAST false positive üretir mi?

Evet. Bu nedenle özellikle High ve Critical bulguların uzman analistler tarafından doğrulanması önemlidir.

#### Mobil uygulama kaynak kodu analiz edilebilir mi?

Evet. Android ve iOS kaynak kodları teknolojiye uygun SAST ve manuel code review yöntemleriyle analiz edilebilir.

#### AI tarafından üretilen kod SAST'tan geçirilmeli midir?

Evet. AI-generated code da normal kaynak kodla aynı güvenlik kontrollerinden geçirilmelidir.

### Kaynak Kod Güvenliğinizi SecureSys SAST ile Geliştirme Aşamasında Güçlendirin

Kritik güvenlik açıklarını uygulama production ortamına alındıktan sonra bulmak yerine geliştirme sürecinde tespit etmek hem güvenliği hem de yazılım geliştirme hızını artırabilir.

SecureSys Kaynak Kod Analizi ve SAST Hizmetleri ile;

**Source Code → SAST → SCA → Secret Scanning → Expert Validation → Remediation → CI/CD Security Gate**

süreçlerini tek bir Application Security modeli altında yönetebilirsiniz.

Geliştirici ekiplerinize yalnızca yüzlerce scanner alarmı göndermek yerine gerçek riskleri önceliklendirebilir, kod seviyesinde remediation önerileri sağlayabilir ve tekrar eden güvenlik hatalarını DevSecOps otomasyonu ile daha kod yazılırken engelleyebilirsiniz.

**Kaynak kod güvenlik seviyenizi analiz ettirin, SAST süreçlerinizi CI/CD pipeline'a taşıyın ve güvenliği yazılım geliştirmenin doğal bir parçası haline getirin.**
