Witam. Nie wiedziałem jak nazwać temat. Postaram się opisać problem.
Chce zrobić program logujący się na pewną strone/portal. Gdy sprawdziłem wysyłany przez przegladarke POST , udalo mi sie dojść do tego ,że składa się on z loginu ,id (wejscia?), oraz hasla zahashowanego w md5.
Hasło hashuje w md5 przy pomocy klucza md5c ,ktory znajduje się w kodzie strony z logowaniem. Przy kazdym wejsciu na strone(z logowaniem) generuje sie nowy md5c i podmieniajac md5c z poprzedniej strony wywali nam ,ze bledne haslo badz login.
I teraz pytanie czy da się na taką stronę zalogować przez program? Jesli tak to jak? Probowalem :
WebClient wc = new WebClient();
kod = wc.DownloadString();
//.. wyciagam z kodu md5c , tworze md5 sklejam postdata
oraz zwyklym Getem w HttpWebRequest i potem kod z tego co zwroci HttpWebResponse, z tego kodu biore md5c i kolejny HttpWebRequest z postdata z md5c z kodu :).
Niestety w obu przypadkach w GETcie dostaje adres strony z bledem logowania. Md5 tworze dobrze wiec nie w tym problem. Najprawdopodobniej kazdy tworzony HttpWebRequest to tak jakby wejscie na strone logowania wiec jest tworzony nowy md5c i id ,ktore jednak nie wiem jak odczytać ,żeby potem wysłać :) W efekcie wysyłam POST z poprawnym postdata jednak dla innego logowania(poprzedniego).
Mam nadzieje ,ze ktos zrozumial chociaz problem wydaje sie byc skomplikowany.
PS. Czy na pewno jesli w postdata mam pole login[data] to mam to zapisać jako login%5Bdatalogin%5D ? Czy to przy zapisie do tablicy bytow sie nie zamienia ?