---
title: Shell Security Hardening
category: product
entity_type: skill
price: ₺369
canonical: https://forgehouse.ai/tr/skiller/shell-security-hardening/
lang: tr
hreflang_alt: https://forgehouse.ai/skills/shell-security-hardening/
last_updated: 2026-06-20
---

# Shell Security Hardening

> Harden production Bash scripts against SQL injection, command injection, stdin bombing, race…

Üretim Bash scriptlerini, shell'leri sessizce bozan enjeksiyon türlerine karşı sertleştirir: heredoc genişlemesiyle SQL enjeksiyonu, FTS5 sorgu enjeksiyonu, komut enjeksiyonu, stdin bombalama ve TOCTOU race condition'ları. Gerçek zafiyet verileri ve sahada sınanmış fix pattern'leri üzerine kuruludur; savunmaları katmanlar (girdi temizleme + literal genişleme + dosya izinleri + kilitleme) ki tek bir delinme verinize ulaşamasın. Kırılgan shell tutkalı ve CI/CD hook'larını varsayılan-güvenli koda dönüştürün.

## Ne için kullanılır
- SQLite veya PostgreSQL sorgulayan shell scriptlerini güvenli kılma
- Mevcut scriptleri enjeksiyon zafiyetlerine karşı denetleme
- CI/CD pipeline hook'larında güvenilmeyen girdiyi işleme
- Heredoc değişken genişlemesi olmadan güvenli SQL oluşturma
- FTS5 tam metin arama sorgularını temizleme
- Uzun çalışan scriptlerde stdin bombalama ve DoS önleme

## Faydalar
- Kanıtlanmış temizleyici fonksiyonlarla SQL, FTS5 ve komut enjeksiyonu açıklarını kapatın
- Araç yollarını sabitleyerek PATH gölgelenen binary'lerden gelen sessiz hatalardan kaçının
- Atomik temp-ve-yeniden-adlandırma ile yazma ortası çökmeden sağlam çıkın
- Güvenli şekilde başarısız olun: bilinmeyen veya bozuk girdi güvenli varsayılana düşer, asla çalışmaz

## Ne içerir
- Güvensiz heredoc SQL'in yerini alan sql_escape() + printf-pipe pattern'i
- MATCH operatörlerini (OR, AND, NOT, NEAR, *, tırnak, parantez) temizleyen fts5_sanitize()
- Sınırlandırılmış stdin okuma, tam sayı doğrulama ve binary yol sabitleme pattern'leri
- Race condition'lara karşı flock kilitleme ve atomik temp+mv yazma
- chmod 600 dosya izni ve bilgi ifşası önleme rehberi
- Red-team inceleme kontrol listesi ve macOS ile Linux platform farklılıkları tablosu

## Kimler için
Veritabanlarına, güvenilmeyen girdiye veya CI/CD pipeline'larına dokunan üretim shell scriptleri yazan ya da inceleyen mühendisler için.

## Nasıl çalışır
Veritabanına veya güvenilmeyen girdiye dokunan her üretim shell script'inde skill'in koştuğu sertleştirme döngüsü, kara kutu yok, yaptığı iş tam olarak bu:
1. Kullanıcı kontrollü her veriyi kaynaktan havuza izle: stdin'den değişkene, oradan SQL'e veya komuta; arada sanitizer olmayan her adım zafiyet adayıdır, tüm script bu çerçeveyle analiz edilir.
2. Heredoc SQL'i tamamen kaldır: sql_escape() artı printf pipe değişkeni sorguya birebir yazar, shell genişlemesi kullanıcı girdisiyle DROP TABLE kaçıramaz.
3. Tam metin arama girdisini ayrıca temizle: FTS5 sanitizer tırnak, joker, gruplama ve boolean operatörlerini (OR, AND, NOT, NEAR) söker, bunlar normal SQL escape'ten kaçar; sorgu koşmadan önce üç bağımsız katman.
4. İçeri giren her şeyi sınırla ve doğrula: head -c stdin'i sert byte limitiyle keser ve bellek bombalamasını önler, case pattern'leri tam sayıları doğrular ve güvenli varsayılana düşer, çağırana güvenilmez.
5. Dosya katmanını kapat: TOCTOU yarışlarına karşı flock ile atomik kilit, temp artı mv ile atomik yazma, veritabanı dosyalarına chmod 600, yol sızdırmayan genel hata mesajları ve $PATH'in getirdiği yerine sabitlenmiş binary yolları.
6. Script çıkmadan önce 10 maddelik red team kontrol listesinden geçir: SQL ve FTS5 injection, komut injection, stdin sınırı, yarış koşulu, izinler, bilgi ifşası ve macOS ile Linux platform farkları.

## Sık sorulanlar
### Scriptlerim yalnızca CI'da çalışıyor, kullanıcı girdisi almıyor; yine de gerekli mi?
CI/CD hook'ları tam da bu yüzden listede: branch adları, commit mesajları ve PR başlıkları shell'e güvenilmeyen girdi olarak akar. Bir script dış kaynaklı bir string'i SQL'e ya da komuta gömüyorsa bu desenler geçerlidir.

### Bash'te SQL injection'ı tam olarak nasıl engelliyor?
Bash'in değişkenleri veritabanı görmeden önce genişlettiği heredoc SQL'i, sql_escape() artı printf-pipe deseniyle değiştirir; tam metin sorguları için MATCH operatörlerini ayıklayan fts5_sanitize() ekler. Savunmalar dosya izinleri ve flock kilitlemesiyle katmanlanır, tek bir atlatma veriye ulaşamaz.

### Repomu otomatik tarayıp açık raporu çıkarır mı?
Hayır. Otomatik tarayıcı değil, red-team kontrol listesi içeren bir sertleştirme desen kütüphanesidir; sanitizer'ları ve desenleri scriptlerinize kendiniz uygularsınız. Otomatik lint için yanına ShellCheck koyun.

## Fiyat
₺369, tek seferlik, abonelik yok. KDV dahil.

İlgili rehber: [Yapay zekâ ile uygulama güvenliği](https://forgehouse.ai/tr/rehberler/yapay-zeka-uygulama-guvenligi/)
