Php HTTP Flood Protection

PHP de yazılımsal olarak flood dan basit bir şekilde kendimizi koruyabilmek için ağaşıdaki kod parçası sayfanın başına eklenebilir. Yapılan önlem son derece basit derece bir korumadır fakat uygulaması kolay olduğundan tercih edilebilir. Daha detaylı bir koruma için Captcha, Yazılımsal – Donanımsal Firewall, UTM gibi çözümler uygulanabilir. PHP CODE: //—————————————————————————- if (!isset($_SESSION)) { session_start(); } if($_SESSION[‘last_session_request’] […]

PHP IP Adres aralığı engelleme

Belirli bir ip adres aralığını PHP ile engellemek yada belirlemek için kullanabiliriz. Daha sağlam bir güvenlik için tabiki ayarların firewall üzerinde yapılandırılması tavsiye edilir. function ip_in_range( $ip, $range ) { if ( strpos( $range, ‘/’ ) == false ) { $range .= ‘/32’; } // $range is in IP/CIDR format eg 127.0.0.1/24 list( $range, $netmask […]

VPN One Click Installer Script

Merhaba, Bu makaleyi ilk yazdığımda Softether vpn kurulumunu anlatmıştım çünkü 2017 yılında OpenVPN için kolay bir kurulum scripti yoktu. Şimdi Openvpn ve Outline vpn leri de ekleyerek makaleyi güncelliyorum. VPN kurulumunda güvenlik en önde gelmesi gerekir. Tam olarak güvenli bir kurulum gerçekleştirmek için tek komutla kaynağına güvenmeyeceğimiz bir scripti çalıştırmak doğru değildir, her an script […]

Android SSL Pinning Çalışmam

Uzun süredir ilgimi çeken bir konudur ssl pinning aslında. Bu merakım bir android uygulamasını Charles yazılımı ile Man-in-the-middle atağı yaparken karşılaştığım sorunla başladı. Charles’in CA sertifikasını telefona yüklediğim halde uygulamanın yolladığı istekleri kesemiyordum. Öncelikle ssl unpinning üzerine araştırma yaptım ve araya girebilmek için farklı yöntemler keşfettim fakat bu yazımda Curl request yollarken ssl pinning kullanan bir […]

PHP güvenlik tavsiyeleri

PHP de en büyük sıkıntı yaratacak açıklardan biri sql-injection açığıdır. Sql injection açığını çözmek için mysql de yapılan işlemlerde kullanıcıdan gelen değişkenler her zaman $safe_variable = mysql_real_escape_string($unsafe_variable); şeklinde mysql_real_escape_string komutuyla arındırılmalıdır.Mysqli’de ki karşılığı $safe_variable = mysqli_real_escape_string($unsafe_variable); Yada sql injection önlemek için mysqli nin Prepered Statements tipindeki veri girişi kullanılabilir. Aşağıdaki örnekte string girişi yapılacağından bind […]

Linux SSH Güvenlik ve Port Değiştirme

Güvenlik için sunucularda SSH portunun değiştirilmesi çok önemlidir. Port değiştirmek için nano /etc/ssh/sshd_config komutuyla dosyayı açıp Port 22 olan standart portu istediğimiz portla değiştiriyoruz Seçeceğimiz portun 1024 ten büyük 60000 ten de küçük olması tavsiye edilir. Port seçmeden önce netstat -an | grep <portnumber> ile kontrolü sağlanarak kullanımda olmayan bir port olduğundan emin olabiliriz. service sshd […]