Bende gonderdikten sonra farkettim, gmail saolsun :)<br><br>
<div><span class="gmail_quote">31.05.2007 tarihinde <b class="gmail_sendername">Bedirhan Urgun</b> &lt;<a href="mailto:urgunb@hotmail.com">urgunb@hotmail.com</a>&gt; yazmış:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
<div><br>&nbsp;Mailin sadece bana gelmis Kerem, listeye forward ettim. Umarim bi sakincasi yoktu. 
<div><span class="e" id="q_112e25405f138199_1"><br><br><br>
<blockquote>
<hr>
Date: Thu, 31 May 2007 15:54:19 +0300<br>From: <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:keremskusmezer@gmail.com" target="_blank">keremskusmezer@gmail.com</a><br>To: <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:urgunb@hotmail.com" target="_blank">
urgunb@hotmail.com</a><br>Subject: Re: [Owasp-turkey] [Fwd: [netsec] WordPress Kritik Guvenlik Acigi]<br><br>
<div>Aynen, sadece bu validasyon rulelarini external bir resource&#39;ta tutuyorsunuz diyelim, external resource config file etc. update olunca validasyon engine tekrardan bu kurallari yukleyip buna gore calismaya basliyor, boylece projenin kodunda bir degisiklik yapmadan bir whitelist&#39;e gore direkt olarak validasyonu saglamish oluyorsunuz. 
</div>
<div>&nbsp;</div>
<div>Public Method olayida public olarak class tarafindan expose edilmis olan methodlarda mesela fxcop tarafindan bu propertylerin null vs. validasyonlarinin mutlaka yapilmasinin force edilmesine dayaniyor.<br><br>&nbsp;</div>

<div><span>31.05.2007 tarihinde <b>Bedirhan Urgun</b> &lt;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:urgunb@hotmail.com" target="_blank">urgunb@hotmail.com</a>&gt; yazmış:</span> 
<blockquote style="PADDING-LEFT: 1ex; BORDER-LEFT: #ccc 1px solid">
<div>&nbsp;<br>&nbsp;yanlis anlamadiysam, runtime&#39;da (yurutme zamaninda) degisiklikleri yapinca bi downtime (kesinti) olmasin diye herhalde.<br><br>
<blockquote>
<hr>
Date: Thu, 31 May 2007 09:19:28 +0100<br>From: <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:ferruh@mavituna.com" target="_blank">ferruh@mavituna.com</a><br>To: <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:keremskusmezer@gmail.com" target="_blank">
keremskusmezer@gmail.com</a><br>CC: <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:owasp-turkey@lists.owasp.org" target="_blank">owasp-turkey@lists.owasp.org</a> 
<div><span><br>Subject: Re: [Owasp-turkey] [Fwd: [netsec] WordPress Kritik Guvenlik Acigi]<br><br>Sadece public ve shared (veya degil) bir methodu cagirsak yeterli degil mi? Yoksa bir noktayi mi kaciriyorum ? <br><br>
<div><span>On 31/05/07, <b>Izzet Kerem Kusmezer</b> &lt;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:keremskusmezer@gmail.com" target="_blank"> keremskusmezer@gmail.com</a>&gt; wrote:</span> 
<blockquote style="PADDING-LEFT: 1ex">
<div>Cut/Paste kesinlikle kod sagligina zararli :) </div>
<div>&nbsp;</div>
<div>Public olarak expose edilen methodlarda library&#39;in durumuna veya input&#39;un nasil olarak geldigine bagli olarak bu kontrol yapilabilir.</div>
<div>Cunku diyelim 3 layer&#39;dada ayni durumu kontrol ettik, bir degisiklik istegi geldigi zaman 3 layer&#39;da ayri ayri olarak degistirilme ihtiyaci doguracak.</div>
<div>&nbsp;</div>
<div>Bundan dolayi validasyon motorunu enterprise library 3&#39;te oldugu gibi, sadece runtime&#39;da calisan bir motor haline getirip, gerekli validasyon kurallarinin uygulanmasini reflection tabanlı bir sistem ile gerceklestirmek ciddi anlamda bakim maliyetlerini dusurecektir kanaatimce. 
<br><br>&nbsp;</div>
<div><span>2007/5/30, volkan uzun &lt;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:vuzun@csusb.edu" target="_blank">vuzun@csusb.edu</a>&gt;:</span> 
<div><span>
<blockquote style="PADDING-LEFT: 1ex">
<div lang="EN-US">
<div><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">&nbsp;</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">
Aralik kontrolleri veya bu tip kontrolleri kategorilendirmek gerekirse :</span></font><br>
<ol type="1">
<li style="COLOR: navy"><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">is katmanina ait kontroller ( business layer) : ornek: satis miktari eliminizdeki maldan cok olamaz : bunu ancak veritabanini check edecek bir katman anlayabilir, 
</span></font>
<li style="COLOR: navy"><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">sunum katmanina ait kontroller ( presentation layer ) : kisinin yasi negatif olamaz, gelis tarihi gidis tarihinden sonra olamaz gibi 
</span></font>
<li style="COLOR: navy"><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">veritabanina kayit ederken kontroller : mesela bir kolon negatif olamaz, null olamaz gibi</span></font> </li>
</li></li></ol><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">&nbsp;</span></font><br>
<div><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Simdi Izzet beyin sorusuna gelirsek, bence evet her modulde ayri ayri kontrol gerekiyor; neden ? cunku her modulu biz yazmiyoruz, bir onceki ya da bir sonraki programcinin kontrolup yapip yapmadigini bilemezsiniz, veya her modulu biz yazmissakta; kodu ileride bakimini yapacak kisi, kodu degisirirken herhangi bir modulu kirabilir. 
</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">ben cut/paste yaparken arada o kadar co kkodun kayboldugunu gordum ki </span></font><font face="Wingdings" color="navy" size="2">
<span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Wingdings">J</span></font><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"> mesela kodu debug ederken, su kontrolu cut ediyim sonra paste ederim derken aa bir bakmissin kod gitmis tarzi soyler cok oldu, bu yuzden kontroller cok cabuk kayboluyor 
</span></font><font face="Wingdings" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Wingdings">J</span></font><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">
 </span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">yani ben oyle yapmam diyorsanizda; iste benim gibileri var; kodunuzun ileride bakimini yapacak kisi benim gibiyse; yandiniz 
</span></font><font face="Wingdings" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Wingdings">J</span></font><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">
 hazirlikli olun</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">&nbsp;</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">
son not : cut/copy + paste = DEVIL yapmayalim </span></font><font face="Wingdings" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Wingdings">J</span></font><font face="Arial" color="navy" size="2">
 <span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"></span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">&nbsp;</span></font><br><font face="Arial" color="navy" size="2">
<span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">&nbsp;</span></font><br>
<div style="TEXT-ALIGN: center" align="center"><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">
<hr align="center" width="100%" size="3">
</span></font></div><b><font face="Tahoma" size="2"><span style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">From:</span></font></b><font face="Tahoma" size="2"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
 Izzet Kerem Kusmezer [mailto: <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:keremskusmezer@gmail.com" target="_blank">keremskusmezer@gmail.com</a>] <br><b><span style="FONT-WEIGHT: bold">Sent:</span>
 </b>Wednesday, May 30, 2007 5:57 AM <br><b><span style="FONT-WEIGHT: bold">To:</span></b> volkan uzun; <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:owasp-turkey@lists.owasp.org" target="_blank">
owasp-turkey@lists.owasp.org</a> 
<div><span><br><b><span style="FONT-WEIGHT: bold">Subject:</span></b> Re: [Owasp-turkey] [Fwd: [netsec] WordPress Kritik Guvenlik Acigi]</span></div></span></font><br><br><br><br>&nbsp;</div>
<div><span><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">&nbsp;</span></font><br>
<p style="MARGIN-BOTTOM: 12pt"><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">Diye girdi denetim kontrolleri her katmanda ayri ayri olarak gerceklestirildi, bu durumda girdiyle ilgili olarak mesela bir aralik kontrolu yapan validasyon kodunu her modulde ayri ayri olarak gerceklestirmek gerekmeyecek mi? 
</span></font></p>
<div><span><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">2007/5/25, volkan uzun &lt;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:vuzun@csusb.edu" target="_blank">vuzun@csusb.edu 
</a>&gt;:</span></font></span> <br>
<div>
<div><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Konunun basini belki biraz kacirdigim icin alakasiz olabilir </span></font><font face="Wingdings" color="navy" size="2">
<span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Wingdings">J</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Ben girdinin her asamada kontrolunden yanayim, cunku girdinin ilk alindigi ( diyelim ki kullanici webden giris yapti ), ortamdan son asamaya dek her zaman ayni programci yazmiyor. 
</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Mesela; ben business katmanindaki kodu yaziyorsam; maalesef ui tarafini yazip; benim siniflarima istekte bulunacak programciya guvenemem herseyi kontrol etmis mi diye; hatta ve hatta test gruplarinin test islemlerinde aciklari bulmasina da guvenemem, benim yapmam gereken yazdigim her module gelecek girdinin sanki sistemi bozmaya calisacak bir kullaniciya ait oldugunu dusunmek; ve ona gore onlem almak olmali. 
</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Butun modulleri ayni programci yazsa bile gene her asamada kontrolden yanayim </span></font><font face="Wingdings" color="navy" size="2">
<span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Wingdings">J</span></font><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"> cunku bu seferde ileride kodun bakimini, optimizasyonunu yapacak kisinin napacagina guvenemem, bir modulu bozup farkinda olmayarak diger module denetimsiz parametre yollayabilir. 
</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">&nbsp;</span></font><br><font face="Arial" color="navy" size="2"><span style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">
&nbsp;</span></font><br>
<div>
<div style="TEXT-ALIGN: center" align="center"><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">
<hr align="center" width="100%" size="3">
</span></font></div><b><font face="Tahoma" size="2"><span style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">From:</span></font></b><font face="Tahoma" size="2"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
 <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:owasp-turkey-bounces@lists.owasp.org" target="_blank">owasp-turkey-bounces@lists.owasp.org</a> [mailto:<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:owasp-turkey-bounces@lists.owasp.org" target="_blank">
 owasp-turkey-bounces@lists.owasp.org</a>] <b><span style="FONT-WEIGHT: bold">On Behalf Of </span></b>Bunyamin DEMIR<br><b><span style="FONT-WEIGHT: bold">Sent:</span></b> Friday, May 25, 2007 9:26 AM<br><b><span style="FONT-WEIGHT: bold">
To:</span></b> <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:burak.dayioglu@pro-g.com.tr" target="_blank">burak.dayioglu@pro-g.com.tr</a>; Ferruh Mavituna; Bedirhan Urgun<br><b><span style="FONT-WEIGHT: bold">
Cc:</span></b> <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:owasp-turkey@lists.owasp.org" target="_blank">owasp-turkey@lists.owasp.org</a><br><span><b><span style="FONT-WEIGHT: bold">Subject:</span>
 </b>Re: [Owasp-turkey] [Fwd: [netsec] WordPress Kritik Guvenlik Acigi]</span></span></font><br>&nbsp;</div><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">&nbsp;</span></font><br>
<div><span>
<p style="MARGIN-BOTTOM: 12pt"><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">Şimdi herkes &quot;girdi denetimi&quot; konusunda mutabık. Hatta ilk &quot;iyi programlama&quot; konulu kitaplar bile bundan bahsetti diyoruz. Zaten burasına kimsenin takıldığı yok. Mevzu denetimin hangi aşamada başlaması? Hangi aşamada yoğulaşması? Hangi aşamada bitmesi? 
<br><br>Dayatma olmasın tabide.. İzlediğim yolu belirteyim. <br><br>Genelde temel kontrolleri en başta yaparım. Yani bir kullanıcını kredi kartı numarası girmiş ise onu aldığım yerde denetlerim. Fakat bir fonksiyon çağırılacaksa. Onu çağıran parametreyi fonksiyonun çağrıldığı yerde-dosyasında denetlerim. 
<br><br>Örneğin,<br><br>Sisteme login olduk. Kullanıcı adı şifre denetlenmesinden geçtik. İçeride bir linke bastığımızda (listele).&nbsp; Giden parametre çağrıldığı yerde zaten biliniyor. Biraz daha açayım. Bu sayfaya gelen talepler ancak ve ancak &quot;listele,goster&quot; olabilir onun dışında gelen her türlü parametreyi salla gitsin. Bu birazda güvenlik kontrolünü parçalara yaymaya yarıyor. Gerçi ilk etapta girdinin kontrolüne daha yakın bir plan. 
<br><br>Umarım anlatabilmişimdir:)<br><br><br></span></font></p>
<div><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">25.05.2007 tarihinde <b><span style="FONT-WEIGHT: bold">Burak DAYIOGLU</span></b> &lt;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:burak.dayioglu@pro-g.com.tr" target="_blank">
 burak.dayioglu@pro-g.com.tr </a>&gt; yazmış:</span></font><br><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">On Fri, 2007-05-25 at 12:16 -0400, Bedirhan Urgun wrote:<br>&gt;&nbsp;&nbsp;neyse sanirim hepimiz ayni seyden yanayiz, tek denetim degil (ama 
<br>&gt; giriste mutlaka olabildigince kisitlilayici bir sekilde) katmanli <br>&gt; denetim gerekli sonra da cikti denetimi (html encode, url encode,<br>&gt; canonicalize v.b.). Ama sanirim her fonksiyonda girdi denetim<br>
&gt; yapilmasi sıkıntıya sokar gelistiriciyi. En azindan ben<br>&gt; dellenirim... :) <br>&gt;&nbsp;&nbsp;bedirhan<br><br>&quot;Dellenecek&quot; bir sey yok. Butun &quot;iyi programlama&quot; kitaplari saglam<br>programlama (robust programming) icin beklenmedik 
<br>parametrelere/girdilere hazirliktan soz eder, konu guvenlik olmadan <br>coook once bile yazilmis &quot;nasil iyi yazarsiniz&quot; kitaplarinin hemen<br>hepsinde bu var... :)<br><br>sevgiler.<br>-burak &quot;muhalif&quot; dayioglu 
<br><br>_______________________________________________<br>Owasp-turkey mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Owasp-turkey@lists.owasp.org" target="_blank">Owasp-turkey@lists.owasp.org 
</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="https://lists.owasp.org/mailman/listinfo/owasp-turkey" target="_blank">https://lists.owasp.org/mailman/listinfo/owasp-turkey</a></span></font><br>&nbsp;</div>
<font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt"><br><br clear="all"><br>-- <br>Bunyamin Demir<br>OWASP-Turkey Chair<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.webguvenligi.org/" target="_blank">
http://www.webguvenligi.org</a> </span></font><br></span></div></div></div>
<p style="MARGIN-BOTTOM: 12pt"><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt"><br>_______________________________________________<br>Owasp-turkey mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Owasp-turkey@lists.owasp.org" target="_blank">
Owasp-turkey@lists.owasp.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="https://lists.owasp.org/mailman/listinfo/owasp-turkey" target="_blank">https://lists.owasp.org/mailman/listinfo/owasp-turkey 
</a></span></font></p></div><font face="Times New Roman" size="3"><span style="FONT-SIZE: 12pt">&nbsp;</span></font><br></span></div></div></div><br>_______________________________________________<br>Owasp-turkey mailing list<br>
<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Owasp-turkey@lists.owasp.org" target="_blank">Owasp-turkey@lists.owasp.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="https://lists.owasp.org/mailman/listinfo/owasp-turkey" target="_blank">
https://lists.owasp.org/mailman/listinfo/owasp-turkey </a><br><br></blockquote></span></div></div><br><br>_______________________________________________<br>Owasp-turkey mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Owasp-turkey@lists.owasp.org" target="_blank">
Owasp-turkey@lists.owasp.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="https://lists.owasp.org/mailman/listinfo/owasp-turkey" target="_blank">https://lists.owasp.org/mailman/listinfo/owasp-turkey 
</a><br><br></blockquote></div><br><br clear="all"><br>-- <br>Ferruh Mavituna<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://ferruh.mavituna.com/" target="_blank">http://ferruh.mavituna.com</a> 
</span></div></blockquote><span><br>
<hr>
Change is good. See what&#39;s different about Windows Live Hotmail. <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.windowslive-hotmail.com/learnmore/default.html?locale=en-us&amp;ocid=RMT_TAGLM_HMWL_reten_changegood_0507" target="_blank">
Check it out!</a></span></div></blockquote></div><br></blockquote><br>
<hr>
Create the ultimate e-mail address book. Import your contacts to Windows Live Hotmail. <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.windowslive-hotmail.com/learnmore/managemail2.html?locale=en-us&amp;ocid=RMT_TAGLM_HMWL_reten_impcont_0507" target="_blank">
Try it!</a></span></div></div></blockquote></div><br>