Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
21
Cevap
1019
Tıklama
0
Öne Çıkarma
VERİTABANIM HACKLENMİŞ, ACİL YARDIM
B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

Resmi bir dairenin web sitesi ile ilgileniyorum. Haber sitesi benzeri bir bölüm var. Bu bölümde asp ve access veritabanı kullanıyorum.
Ama bu sabah veritabanındaki haberlere ulaşmaya çalışınca birisi bir not bırakmış. Sanırım veritabanında istediği değişikliği yapabiliyor.
Bunu nasıl yapıyor ve bunun önlemini nasıl alabilirim.
Yardımcı olacaklar için şimdiden teşekkürler.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

Yok mu bu konuda bilgisi olan biri



S
20 yıl (715 mesaj)
Yüzbaşı

slm;

örnek olarak açıklamaya çalışıcam sana.diyelimkiwww.serkan.com domainin var. ve haber.asp dosyan. eğerwww.serkan.com/haber.asp dosyası çalıştığında orda bulunan herhangi bir butonu tıkladığında( oku,gönder,yaz vs. vs.) browserda dataları çektiğin database in adı ve yolu yazar.access ile oluşturduğun mdb, host ettiğin yerdewww.serkan.com directory sinin altında bulunuyorsa girebilir datana.(örneğin:www.serkan.com/data.mdb şeklinde browsera yazarsa direk database'ini açar.) sana tavsiyem mdb dosyanı sürekli olarakwww.serkan.com hostunun üst directory'sine bırakman. bu şekilde yolu üstten okuyamaz.çünkü hep ..../ gibi bişeyler görecektir. kafası çalışıyomuş elemanın.


Bu mesaja 1 cevap geldi.
B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

quote:

Orjinalden alıntı: serkanblg

slm;

örnek olarak açıklamaya çalışıcam sana.diyelimkiwww.serkan.com domainin var. ve haber.asp dosyan. eğerwww.serkan.com/haber.asp dosyası çalıştığında orda bulunan herhangi bir butonu tıkladığında( oku,gönder,yaz vs. vs.) browserda dataları çektiğin database in adı ve yolu yazar.access ile oluşturduğun mdb, host ettiğin yerdewww.serkan.com directory sinin altında bulunuyorsa girebilir datana.(örneğin:www.serkan.com/data.mdb şeklinde browsera yazarsa direk database'ini açar.) sana tavsiyem mdb dosyanı sürekli olarakwww.serkan.com hostunun üst directory'sine bırakman. bu şekilde yolu üstten okuyamaz.çünkü hep ..../ gibi bişeyler görecektir. kafası çalışıyomuş elemanın.


Bilgiler için teşekkürler. Durum aynen dediğin gibi. veritabanı, senin örnekteki gibiwww.sekran.com/db/data.mdb şeklindedir.
Bunuwww.serkan.com un dışına aldığımda nasıl bir yol tanımlayabilirim, bir de bunun için sunucuda o klasöre yazma izni verilmesi gerekiyor mu?

Edit: Ayrıca bunu söylediğin şekilde okuyabildiğini kabul edelim. Peki bunun üzerinde değişiklik yaptıktan sonra tekrar mdb dosyasını db klasörüne atabilir mi?
ve ftp kullanıcı adı ve şifresini bilmeden asp dosyaları üzerinde değişiklik yapabilir mi?





< Bu mesaj bu kişi tarafından değiştirildi bprince -- 10 Temmuz 2006; 14:42:35 >
Bu mesaja 1 cevap geldi.
S
20 yıl (715 mesaj)
Yüzbaşı

sayfayı kendinmi host ediyosun?


Bu mesaja 1 cevap geldi.
B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

quote:

Orjinalden alıntı: serkanblg

sayfayı kendinmi host ediyosun?


Hayır ama gereken değişiklikleri yaptırabilirim.


Bu mesaja 1 cevap geldi.
S
20 yıl (715 mesaj)
Yüzbaşı

örneğin web siten website adında bir folder da bulunuyosa website gibi bir folder daha oluştur.adıda database olsun...tabi haber.asp website folderında duruyo.mdb dosyanı website folderından al yeni oluşturduğun database adındaki folder a yerleştir. sonra haber.asp dosyanı aç. mdb yolunu yazdığın kısımda değişiklik yapıcaksın.

../ dediğinde bir üst folder demektir!!!!

yolun eski hali ;direk olarak data.mdb
yolun yeni hali ;../database/data.mdb

sadece bukadar.

gelelim soruna... eleman browserawww.serkan.com/data.mdb dediğinde bilgisayarında access yüklü olması yeterli onun için.çünkü kendi localinde açtığı data.mdb zatenwww.serkan.com/data.mdb şeklinde açılmış demektir.save dediğinde direk senin web sitende bulunan data.mdy kaydeder, siler vs... ONUN BİLGİSAYARINDA DATA MDB YOKTUR ÇÜNKÜ:) kendine ii bak.


Bu mesaja 1 cevap geldi.
B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

quote:

Orjinalden alıntı: serkanblg

örneğin web siten website adında bir folder da bulunuyosa website gibi bir folder daha oluştur.adıda database olsun...tabi haber.asp website folderında duruyo.mdb dosyanı website folderından al yeni oluşturduğun database adındaki folder a yerleştir. sonra haber.asp dosyanı aç. mdb yolunu yazdığın kısımda değişiklik yapıcaksın.

../ dediğinde bir üst folder demektir!!!!

yolun eski hali ;direk olarak data.mdb
yolun yeni hali ;../database/data.mdb

sadece bukadar.

gelelim soruna... eleman browserawww.serkan.com/data.mdb dediğinde bilgisayarında access yüklü olması yeterli onun için.çünkü kendi localinde açtığı data.mdb zatenwww.serkan.com/data.mdb şeklinde açılmış demektir.save dediğinde direk senin web sitende bulunan data.mdy kaydeder, siler vs... ONUN BİLGİSAYARINDA DATA MDB YOKTUR ÇÜNKÜ:) kendine ii bak.


Buraya kadar sorun yok.
Benim klasör yapım tamamen şöyle.

wwwroot (tüm sitenin bulunduğu klasör)
....aspdosyalarının klasörü
....db klasörü
....haber klasörü

bu durumda zaten db klasörüne ulaşmak için haber klasörünün içenden bir adet ../ kullanarak db ye ulaşıyorum.
wwwroot ile aynı seviyede bir klasörü açtırdığım ve buna yazma izni verdirdiğim zaman bu oluşturacağım klasör sitenin dışında bir klasör olacağı için haber klasörünün içinden bu klasöre ulaşıp veritabanı ile ilgili işlemler yaptırabilirmiyim? Normal yordamlar kullanarak şu anda db klasörüne ulaştığım şekilde bir ../ fazladan koyarsam alacak mı?

Yani şu anda ../db/data.mdb şeklinde ulaşıyor iken ../../db/data.mdb şeklinde ulaşabilecekmiyim?


Bu mesaja 1 cevap geldi.
S
20 yıl (715 mesaj)
Yüzbaşı

şunu söyliyeyim sana dosyalama şeklin yanlış...

wwwroot tek bir host IIS klasörüdür. yani her yenibir web site için wwwroot da ayrı birer folderın olması gerek. sen wwwroot u tekbir web sitesi için kullanmışsın.oysa birden fazla web site barındırabilirsin.yani website1 , website2 vs. senin tercihindir bişey diyemem.

dediğin şeklide olmaz.yani wwwroot gibi bir folder oluşturamazsın.oluştursanda IIS anlamaz.
senin dediğin şekilde ise bu eleman senin mdb ne ulaşamaz hiçbir şekilde emin ol. tek ftp bilmem ne şifrelerini bilirse ulaşabilir.www.serkan.com dediğinde adam zaten senin rootuna girmiş demek be arkadaşım...yani wwwroot unun içinde:)

bir önceki mesajda belirttiğim gibi yapını oluşturursan mdb dosyanı açamaz arkadaşım.çok karışık yapmışsın dosya planlamanı. tür bazında değilde web site şeklinde yapman gerekirdi.neyse artık. yapını dediğim şekilde yap lütfen.


Bu mesaja 1 cevap geldi.
B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

sanırım net anlatamadım konuyu. Zannederim sen local bazda düşünerek cevap veriyorsun yoksa ben mi yanlış anlıyorum.
Bahsettiğim wwwroot benim pc de olan wwwroot değil, sunucudaki wwwroot klasörü.

Bu resmi bir kuruluşa ait ve serverda her il için bir wwwroot klasörü oluşturulmuş.
wwwroot klasörünü ben oluşturmadım. Ftp ile bağlandığımda wwwroot klasörü ile karşılaşıyorum ve doğal olarak dosyalaramı ve klasörlerimi bunun içine attım. yaniwww.serkan.com dediğimizde direk wwwroot klasörüne gidiyor. bunun içinde ayrı klasör oluşturduğum zaman sayfa açılmıyor. zaten asp sayfalarım wwwroot un içindeki xxxx klasöründe bulunuyor ve wwwroot un içine koyduğum bir default.asp dosyası ile xxx klasörünün içindeki dosyalara yönlendiriyorum.

www.serkan.com yazdığımda direk wwwroot un içine gideceği için wwwroot ile aynı seviyede bir klasöre datalara attığım zaman oraya yol tanımlayabilecek miyim. eğer tanımlayamayacaksam, veritabanının şifreleyerek bir çözüme gidilebilir mi, bir de bilgin dahilindeyse, şifreleme olayı nasıl olacak?

çok başını ağrıttım. kusura bakmazsın umarım.


Bu mesaja 1 cevap geldi.
S
20 yıl (715 mesaj)
Yüzbaşı

hiç önemli değil.yardımcı olmaya çalışıyorum sana.

öncelikle wwwroot gibi bi klasör oluşturamazsın bunu bilmeni istiyorum.
ben derimki senin alanın wwwrootta bir klasördür.ve senin herşeyin o klasörün içindedir. bu klasör içinde öyle bir yerleştirme yapmalısınki mdb dosyan .asp .html vs. dosyalarının üstünde olsun. özellikle default.asp ana dosyan olduğu için orda olmamalı mdb... istediğin gibi yapabilirsin dizaynını. bir kez daha söylüyorum; öyle bir yerleştirme yapmalısınki mdb dosyan çalıştırdığın asp dosyalarının üst klasöründe olmalı....!!!!

şifreleme yapmak istiyosan eğer mdb dosyanı access ile açtıktan sonra araçlar>güvenlik>veritabanı parolası oluştur...

kolay gelsin.


Bu mesaja 1 cevap geldi.
B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

quote:

Orjinalden alıntı: serkanblg

hiç önemli değil.yardımcı olmaya çalışıyorum sana.

öncelikle wwwroot gibi bi klasör oluşturamazsın bunu bilmeni istiyorum.
ben derimki senin alanın wwwrootta bir klasördür.ve senin herşeyin o klasörün içindedir. bu klasör içinde öyle bir yerleştirme yapmalısınki mdb dosyan .asp .html vs. dosyalarının üstünde olsun. özellikle default.asp ana dosyan olduğu için orda olmamalı mdb... istediğin gibi yapabilirsin dizaynını. bir kez daha söylüyorum; öyle bir yerleştirme yapmalısınki mdb dosyan çalıştırdığın asp dosyalarının üst klasöründe olmalı....!!!!

şifreleme yapmak istiyosan eğer mdb dosyanı access ile açtıktan sonra araçlar>güvenlik>veritabanı parolası oluştur...

kolay gelsin.



sanırım şimdi anladım ne demek istediğini.
wwwroot
.....db klasörü
.....asp (aspdosyalarının klasörü)
..........asp dosyaları

şeklinde bir yapıdan bahsediyorsun. ancakwww.serkan.com yazınca direk wwwroot klasörüne gidiyor. orada default.asp olmayınca diğer sayfalar nasıl açılacak.

Ya da şöyle izah edeyim
wwwroot sunucudaki klasör olsun
wwwroot içinde her il için ayrılmış birer klasör var. bu klasörler her ilin ismi isimlendirilmiş

örnek:
wwwroot
..... adana
...........wwwroot (benim bahsettiğim wwwroot budur)
...............db
...............default.asp
...............xxxx klasörü (diğer asp dosyalarının bulunduğu klasör)
...............haber klasörü

........... adiyaman
................ wwwroot
.
.
.
..... afyon gibi...

bu durumda senin söylemek istediğin şu sanırım. db klasörünü adana klasörünün içinde oluştur diyorsun. Bu durumda;
1. buraya erişim sağlayabilirmiyim ( çünküwww.serkan.com adresi yazıldığında koyu renkle işaretlediğim wwwroot klasörüne gidiyor)
2. default.asp dosyasını koyu renkli wwwroot içine atmasam sayfa bulunamadı hatası alıyorum.


Şifrelem nasıl olacak? asp içinde nasıl olacak anlamındaydı, yani bağlantı yaparken hangi ifadeyi kullanacaz demek istemiştim.





< Bu mesaj bu kişi tarafından değiştirildi bprince -- 10 Temmuz 2006; 16:44:17 >
Bu mesaja 1 cevap geldi.
S
20 yıl (715 mesaj)
Yüzbaşı

kesinlikle ve kesinlikle adanadan sonra bir DATABAE adında bir klasör oluşturacaksın ve mdb dosyanı bunun içine bırakacaksın. default.asp de senin belirttiğin koyu renkli wwwroot da duracak.zaten host firması adana.serkan.com sub domaini için tanımlamasını bu şekilde yapmıştır IIS e...

asp şifreleme hakkında pek bi bilgim yok. ama istediğin şey pek normal değil.adam zaten senin mdb ye yazıyo çiziyo. senin database şifre vermen gerek. açamasın yani...


Bu mesaja 1 cevap geldi.
B
20 yıl (387 mesaj)
Yüzbaşı
Konu Sahibi

bunları deneyecem. herşey için teşekkürler.


Bu mesaja 1 cevap geldi.
S
20 yıl (715 mesaj)
Yüzbaşı

İ
20 yıl (1289 mesaj)
Binbaşı

Asla Ve asla hazır script kullanmayın arkadaşlar ! veritabanınızı download edebilecekleri gibi SQL İnjection gibi bir çok tehlikeyle karşı karşıya kalırsınız.

Sunucunuzda Https:// hizmeti varsa veritabanlarını kesinlikle bu klasör altında tutun download edilemez. SQL İnjectiona karşı formlardan aldığınız değerleri Mutlaka (",',/) gibi ifadelere karşı korumaya alın. Asp ile ilgileniyorsanız Replace ile yapabilirsiniz. Asp.Net 'te String.Indexof() fonksiyonlarını kullanabilirsiniz.


Bu mesaja 1 cevap geldi.
F
20 yıl (9725 mesaj)
Yarbay

Bu direkt database in hemde access ve net uzerinden gorebilme nasıl oluyormuski burası biraz sallama geldi bana o dosyayı indirmeden olmaz cunki access de akıs seklinde bir net baglantısı olmaz hemde browserdan! asp ile yapılanı sadece serverin yerelde okudaklarını bize postalamasıdır kasıt bu ise eger.


Bu mesaja 2 cevap geldi.
İ
20 yıl (1289 mesaj)
Binbaşı

quote:

Orjinalden alıntı: fsh77

Bu direkt database in hemde access ve net uzerinden gorebilme nasıl oluyormuski burası biraz sallama geldi bana o dosyayı indirmeden olmaz cunki access de akıs seklinde bir net baglantısı olmaz hemde browserdan! asp ile yapılanı sadece serverin yerelde okudaklarını bize postalamasıdır kasıt bu ise eger.



Bu sorun download etmeden olabiliyor Mesela amatörce hazırlanmış sistemlerde kullanıcı adına

Admin '/" gibi ifadelerle istediğin şifreyi yazarak bağlanılabiliyor. Burada tam karşılığını yazmıyorum. Scriptin özellikle bir admin bölümü varsa dikkatli olmak lazım. Yoksa http protokolü ile web üzerindeki bir streame direk yazılamaz :)



S
20 yıl (715 mesaj)
Yüzbaşı

quote:

Orjinalden alıntı: fsh77

Bu direkt database in hemde access ve net uzerinden gorebilme nasıl oluyormuski burası biraz sallama geldi bana o dosyayı indirmeden olmaz cunki access de akıs seklinde bir net baglantısı olmaz hemde browserdan! asp ile yapılanı sadece serverin yerelde okudaklarını bize postalamasıdır kasıt bu ise eger.


sallama yapmıycak kadar en az senin kadar dilime ve bilgime hakimmim. adam gibi konuş.


Bu mesaja 1 cevap geldi.
D
20 yıl (795 mesaj)
Yüzbaşı

öncelikle saldırı yapan sahış, mdb klasörüne ulassa bile icerisinde yönetici sifresi ve kullanıcı adı yoksa
herhangi bir islem yapamaz sadece dosyayı indirir icindeki haberleri görüt mort olur kapatır dosyayı
ancak MDB klasöründe yönetici giris sifrelerin gözüküyorsa buda demektirki adam sifreleri görüp sayfana
bağlanıp sonra acces klasörüne kayıtlı haber bırakabilmiş. bu adam sadece accesin yolunu görerek bir işlem
yapamaz. Genel mantık budur.

2. olarak ftp ye baglantıgın zaman wwwroot klasorun kullanıcılaranına sayfalarını sundugun klasordur.
bu wwwroot klasorunun içerisinde serverin kurmuş oldugu _private adlı bir dosya olması gerekir.
eger Acces veri tabanlarını bu dosyada saklarsan kimse ulaşamaz. eger bu dosya yoksa
wwwroot klasorunun oldugu sayfada yani içinde deil

resimde görmüş oldugun gibi

< Resime gitmek için tıklayın >

DB klasoru veya DATEBASE klasoru mevcuttur. Acceslerini bunun icerisinde saklayabilirsin
her ../ sembolü bi dosya geri atla demektir, arka dosyayı okutur.
örnegin wwwrootda haber.asp sayfası ve icerisinde mdb yolu

"../datebase/veridosyasi.mdb"
"../DB/veridosyasi.mdb"
"_private/veridosyasi.mdb"

ücüncü olarak bazı Asp Scriptlerde asp de kullanılan OR açığı mevcuttur.
OR açığı nedir:

Kullanıcı adı: Admin
Parola : 'or'

bunları girdigin zaman direk yönetici olarak baglanırsın istedigin eylemi gerceklestirebilirsin
kullanıcı adını bilmiyorsanda


Kullanıcı adı: 'or'
Parola : 'or'

seklindede kullabilirsin kolay gelsin


Bu mesaja 1 cevap geldi.