<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Web Sitelerindeki En Yaygın Güvenlik Açıkları</title>
	<atom:link href="http://www.huysuzadam.com/2007/10/08/web-sitelerindeki-en-yaygin-guvenlik-aciklari/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.huysuzadam.com/2007/10/08/web-sitelerindeki-en-yaygin-guvenlik-aciklari/</link>
	<description>Web teknolojileri ile ilgili teknik bir blog...</description>
	<lastBuildDate>Sun, 15 Jan 2012 03:25:43 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: M.Ozan Hazer</title>
		<link>http://www.huysuzadam.com/2007/10/08/web-sitelerindeki-en-yaygin-guvenlik-aciklari/comment-page-1/#comment-174</link>
		<dc:creator>M.Ozan Hazer</dc:creator>
		<pubDate>Mon, 08 Oct 2007 10:41:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.huysuzadam.com/2007/10/08/web-sitelerindeki-en-yaygin-guvenlik-aciklari/#comment-174</guid>
		<description>A ve B sayfaları aynı sitedeyse session işinizi görecektir. A sayfasında bir session değişkenine bir key atayın, sonra B&#039;yi çağırırken o key&#039;i de gönderin, B dosyasının içinden session değişkeni ile gönderilen key&#039;i karşılaştırın.

A ve B ayrı sitelerdeyse işler biraz karışıyor. Ana mantık yine aynı, bir key göndereceksiniz, sonra onu kontrol edeceksiniz. Bu key&#039;in kötü niyetli kişiler tarafından taklit edilememesi gerekli. Tek yönlü encryption algoritmalarından birini de devreye sokmanız lazım. 

İlk aklıma gelen klasik PKI yapısı: Bir tane herkesin görebileceği anahtar kelime (public key) ve bir tane de sadece sizin ulaşabileceğiniz bir özel anahtar kelime (private key) düşünün. 

Public key + private key bileşimini tek yönlü encryption&#039;dan çıkan sonucu (hash) ve public key&#039;i B sayfasına göndereceksiniz. Sonra B dosyasının içinde yine private + public key&#039;i aynı algoritmadan geçirip çıkan sonucun gönderilen hash ile aynı olup olmadığını kontrol edeceksiniz.

Tek yönlü algoritma olarak md5 ya da sha1 kullanabilirsiniz.
Dikkat etmeniz gereken public key&#039;in her seferinde farklı olması. 
Ayrıca public key ve private key ne kadar uzun olursa, kullanılan algoritma da ne kadar uzun olursa deneme yanılma ile bulunma ihtimali o kadar düşer. Mesela sha1 md5&#039;ten daha güçlüdür.

Public ve private key&#039;i yanyana koymak yerine atıyorum &quot;private&#039;ın 3. karakterinden sonra araya public key&#039;i sıkıştır, ondan sonra algoritmayı uygula&quot; gibi işleri karıştırıcı önlemlerle paranoyaklığın sınırlarını istediğiniz kadar zorlayabilirsiniz :)</description>
		<content:encoded><![CDATA[<p>A ve B sayfaları aynı sitedeyse session işinizi görecektir. A sayfasında bir session değişkenine bir key atayın, sonra B&#8217;yi çağırırken o key&#8217;i de gönderin, B dosyasının içinden session değişkeni ile gönderilen key&#8217;i karşılaştırın.</p>
<p>A ve B ayrı sitelerdeyse işler biraz karışıyor. Ana mantık yine aynı, bir key göndereceksiniz, sonra onu kontrol edeceksiniz. Bu key&#8217;in kötü niyetli kişiler tarafından taklit edilememesi gerekli. Tek yönlü encryption algoritmalarından birini de devreye sokmanız lazım. </p>
<p>İlk aklıma gelen klasik PKI yapısı: Bir tane herkesin görebileceği anahtar kelime (public key) ve bir tane de sadece sizin ulaşabileceğiniz bir özel anahtar kelime (private key) düşünün. </p>
<p>Public key + private key bileşimini tek yönlü encryption&#8217;dan çıkan sonucu (hash) ve public key&#8217;i B sayfasına göndereceksiniz. Sonra B dosyasının içinde yine private + public key&#8217;i aynı algoritmadan geçirip çıkan sonucun gönderilen hash ile aynı olup olmadığını kontrol edeceksiniz.</p>
<p>Tek yönlü algoritma olarak md5 ya da sha1 kullanabilirsiniz.<br />
Dikkat etmeniz gereken public key&#8217;in her seferinde farklı olması.<br />
Ayrıca public key ve private key ne kadar uzun olursa, kullanılan algoritma da ne kadar uzun olursa deneme yanılma ile bulunma ihtimali o kadar düşer. Mesela sha1 md5&#8242;ten daha güçlüdür.</p>
<p>Public ve private key&#8217;i yanyana koymak yerine atıyorum &#8220;private&#8217;ın 3. karakterinden sonra araya public key&#8217;i sıkıştır, ondan sonra algoritmayı uygula&#8221; gibi işleri karıştırıcı önlemlerle paranoyaklığın sınırlarını istediğiniz kadar zorlayabilirsiniz :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ahmet</title>
		<link>http://www.huysuzadam.com/2007/10/08/web-sitelerindeki-en-yaygin-guvenlik-aciklari/comment-page-1/#comment-173</link>
		<dc:creator>ahmet</dc:creator>
		<pubDate>Mon, 08 Oct 2007 09:43:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.huysuzadam.com/2007/10/08/web-sitelerindeki-en-yaygin-guvenlik-aciklari/#comment-173</guid>
		<description>HTTP_REFERRER güvenli değil madem bununla ilgili bir sorum olacak:

A sayfasını kullanarak B sayfasından veri çekiyorum. Fakat B sayfasına yalnızca A sayfasının ulaşabilmesini istiyorum. Başka hiçbir kimsenin veya dış uygulamanın B sayfasına ulaşmasını istemiyorum. HTTP_REFERRER kontrolü dışında bunu nasıl yapabiliriz?</description>
		<content:encoded><![CDATA[<p>HTTP_REFERRER güvenli değil madem bununla ilgili bir sorum olacak:</p>
<p>A sayfasını kullanarak B sayfasından veri çekiyorum. Fakat B sayfasına yalnızca A sayfasının ulaşabilmesini istiyorum. Başka hiçbir kimsenin veya dış uygulamanın B sayfasına ulaşmasını istemiyorum. HTTP_REFERRER kontrolü dışında bunu nasıl yapabiliriz?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

