Başlangıç olarak .htaccess Nedir ? 

.htaccess (hypertext access file) Genelde Sunucunun Ana dizininde olan
Adı olmayan Ayarlar Uygulamalar Yapışan Dosyadır. Güvenlik ,Yetki, Düzenleme, Ayar, kısıtlama vb.
işlemleri yapabiliyoruz.
Daha Onlarca işlem Ama bu gün Biz Sadece Güvenliğin Bir kısmını Ele Alacağız .

Güvenlik

----------
Dizin Şifreleme



Hedef site Saldırılarında çok büyük Engel Olarak Görüyorum bunu
Mesala Sql injection Yaptık User bilgilerini Çektik Admine Login olacaz.
koyulduk paneli Aramaya /user/admin/ yazdık Karşımıza Yukarıdaki Resim Gibi
login Çıktı Artık bu konuda Deneme Yanılmadan başka Çaremiz Kalmaz ve bu 
önümüze kalın Bir duvar Gibi Engel olur.

Nasıl Yapılır

Bunun için 2 Adet Dosya Oluşturmamız Lazım.
biri .htaccess
diğeri .htpasswd

Bunları Şifrelemek istediğimiz Dizinin içine Atacaz. 

.htaccess içeriği.



AuthType Basic
AuthName "Klasör Açıklaması"
AuthUserFile /home/kullancıadınız/sifrelenecek_dizin/.htpasswd
<Limit GET>
require valid-user
</Limit>


AuthUserFile /home/kullancıadınız/sifrelenecekdizin/.htpasswd


/ den sonrasını kendinize Göre düzenlemeniz Gerekmektedir . 
"sifrelenecekdizin" yerine şifrelemek isteğiniz Sayfayı yazacaksınız 

örnek olarak "/admin/" , "/panel/" gibi 


.htpasswd oluşturma


Bu dosyanın içeriğini kullancı Adı ve şifremizi Yazacaz Yalnız dili Ascı karekterlerden
oluşturuldugundan dolayı vereceğim siteden kullancı adı ve şifre oluşturacağız.

http://www.4webhelp.net/us/password.php

"Name" bölümüne kullanıcı adınızı. "Password" ve "Password Again" bölümüne şifrenizi yazın. 
Daha sonta "encreypter" butonuna tıklayın. 
Çıkan kodu Kopyalıyıp oluşturdgumuz .htpasswd için yapıştırıyoruz.

örnek:
mesela ben kullanıcı adı :black pass:black
yapacam şu şekilde bir kod çıkacak karşıma

black:68hmGImVvL8iY 
ve bu kod değişkendir her yaptıgımızda farklı bir kod çıkacak.

dizin şifreleme bu kadar 2 dosyayıda aynı klasörün için atmamız lazım :) 



----------
Web Scannerlardan korunma

Bu konu çok önemli Biz bu sayede Acunetix sqlmap dirbuster gibi 
Scannerlardan korunmamızı saglıyor bunu yapamak için .htaccess dosyamızın ana dizinde olması
lazım .

Bunu kendinize göre Editleye bilirsiniz Çoğalta bilirsiniz

kod: 



RewriteEngine On
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_USER_AGENT} Acunetix [NC,OR]
RewriteCond %{HTTP_USER_AGENT} dirbuster [NC,OR]
RewriteCond %{HTTP_USER_AGENT} jbrofuzz [NC,OR]
RewriteCond %{HTTP_USER_AGENT} webshag [NC,OR]
RewriteCond %{HTTP_USER_AGENT} nikto [NC,OR]
RewriteCond %{HTTP_USER_AGENT} SF [OR]
RewriteCond %{HTTP_USER_AGENT} sqlmap [NC,OR]
RewriteCond %{HTTP_USER_AGENT} fimap [NC,OR]
RewriteCond %{HTTP_USER_AGENT} nessus [NC,OR]
RewriteCond %{HTTP_USER_AGENT} whatweb [NC,OR]
RewriteCond %{HTTP_USER_AGENT} Openvas [NC,OR]
RewriteCond %{HTTP:Acunetix-Product} ^WVS
RewriteRule ^.* http://127.0.0.1/ [R=301,L]
</IfModule> 


Yukarıdaki komutları kopyalayıp .htaccess dosyanıza yapıştırın.

Yapmamız yeterlidir netten bakıp buldugum tarama araçları bunlar siz düzenliye bilirsiniz 



----------
sql injection Engelleme 

Günümüzün En önemli AÇıklarında Biride Sitemizde bulunan Sql Açıkları.
Belki kod bilgimiz Yok Ve Açıgı kapatamıyoruz veya Öncede Güvenlik İçin
yapmak istiyoruz bunu için .htaccess dosyamızın içerisine vereceğim kodu Katıyoruz 
ve engellemiş oluyoruz ana dizine koymanız gerekmektedir.


RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC,OR]
RewriteCond %{HTTP_REFERER} ^(.*)(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{REQUEST_URI} ^/(,|;|<|>|/{2,999}).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^(java|curl|wget).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|HTTrack|clshttp|archiver|loader|email|harvest|extract|grab|miner).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(libwww|curl|wget|python|scan).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{HTTP_COOKIE} ^.*(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\\.0\\.0\\.1).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{QUERY_STRING} [^a-z](|order|union|declare|char|set|cast|convert|delete|drop|exec|insert|meta|script|select|truncate|update)[^a-z] [NC]
RewriteRule (.*) - [F]


Yukarıdaki komutları kopyalayıp .htaccess dosyanıza yapıştırın.

bu yeterlidir ve Kesin çözüm Değildir Bu Bypass Edilebilir bunu Daha sonraki
makalelerimize Ekliye biliriz.


----------
XSS engelleme 

Geleceğin En büyük açıklarından biri olan xss Bazen çık tehlikeli Sonuçlar 
doğurabiliyor.
Bunu Kesin çözümü Açıgı kapatmak bir diğer yöntem ise .htaccess ile engelleme 
Bu yöntemle muhtemel Saldırılarıda 403 hatası verdirerek önüne Geçiyoruz . 
örnek olarak şunu engellemiş oluyoruz .

yaz.php?id=<script>alert(’Black’)</script>
yaptıgımız anda 403 hatası verecektir. 


kod:

RewriteEngine On
RewriteCond %{QUERY_STRING} base64_encode.*\\(.*\\) [OR]
RewriteCond %{QUERY_STRING} (\\<|<).*script.*(\\>|>) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\\[|\\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\\[|\\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php|forum.php|yaz.php [F,L]

Yukarıdaki komutları kopyalayıp .htaccess dosyanıza yapıştırın.

Dosya isimlerini Kendinize Göre düzenleyin Lütfen


----------


Erişim kısıtlama 
Erişim Kısıtlama ile isteğimiz Domainden gelenlere izin Veriğ Engelleye Biliriz

kod:

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
order deny,allow
allow from http://Cyber-warrior.org
deny from 192.168.1.1
deny from http://google.com
deny from abd.gov


Yukarıdaki komutları kopyalayıp .htaccess dosyanıza yapıştırın.

Şeklinde 
allow from yazarak izin verip 
denny from yazarak engellye biliriz .
ihtiyaca göre çoğaltıla bilir.


----------




.htaccess dosyasını olabildiğince küçük tutmaya çalışın.
Çünkü her dosya isteğinde sunucu tarafından kontrol edilirler.
Ve boyutun büyümesi yavaşlamaya neden olabilir.

.htaccess dosyayı olağınca düzenli turmaya çalıçalım çünkü
kural arttıkça sunucunun dosyayı tanıması zorlaşacaktır.
öneri olarakta
# kullanarak isimlendirip ayırın



.htaccess Kullanımı okadar Genişki Tek makalede Anlatmak imkansız 
Güvenlik için bu makale buraya kadar dahada ekleme yapabilirim .
bir Başka Makalede Buluşmak üzere Selametle :) ééé 

Hakkımda Unknown

Turk DevilZ | Bug Researcher Expert


«
Sonraki
Sonraki Kayıt
»
Önceki
Önceki Kayıt

Hiç yorum yok:

Yorumlar