benzinlikteki genç adam

çekil git lan şeytan!


asp.net, formlarda sürekli hidden inputlar içerisinde __VIEWSTATE ve __EVENTVALIDATION değerleri saklıyor. bunlar her istekte değişiyor.

aspx bir sayfaya POST yapacaksanız, ilk önce anasayfaya bir istek yapıp session bilgilerinizi almanız, bu ilk istekte yukarıdaki değişkenlerin değerlerini almanız gerekiyor.

|<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="(.*?)" />|

gibi bir regEx deseni ile alıp, değeri urlencode() fonksiyonundan geçirmeniz gerekiyor. Zira, benim denemememde 23307 karakter olan(!) bu değerin içinde + gibi karakterler var. Veri yollanırken + karakterleri boşluk haline geçtiği için, invalid viewstate şeklinde hata mesajı alıyorsunuz. Dolayısıyla urlencode() gerekli.

İkinci istekte de - asıl istekte - birinci istekteki session bilgilerini de kullanmanız gerekli.

örnek olarak bebek.com'a giriş yapan bir PHP betiği

Makale gibi cevap yazmışım zaten buradan bakıverin.

XMLHTTP ve PHP işbirliğiyle ufak bir yerinde düzenleme uygulaması hazırladım. buradan test edip, kodlarına buradan ulaşabilirsiniz.