Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: inwigilacja :)
Forum PHP.pl > Forum > Przedszkole
phoenix84
pytanie...

moze po kolei to wszystko nie byloby takie trudne... ale interesuje mnie napisanie czegos takiego... nie musi byc gotowy kod... wystarcza kluczowe komendy... ewentulanie proste instrukcje typu "jak to zrobic", bo nie mam pomyslu...

po pierwsze chce sprawdzic czy gosc ma wlaczony komputer... (znalazlem gdzies skrypt, ale nie do konca go kumam, wiec wolalbym go napisac sam, bo wtedy zrozumiem jak dziala)...
jesli ma wlaczony to najlepiej jak bym poznal system operacyjny (do rozroznienia 3: win, Lin i MacOS)
jesli win to czy ma otwarty port 16127 (port Rivchata, czy ma po prostu go uruchomionego... wymyslilem taki sposob sprawdzenia tego, ale mzoe sa inne, lepsze... czekam na propozycje)... bo chce po prostu wiedziec, kto nie korzysta z obowiazkowego komunikatora. Rozroznienie na systemy jest potrzebne, be riv chodzi tylko na win... wiec na innych systemach nie ma mozliwosci odpalenia go (na sile wszystko sie da,ale szkoda zachodu)

takwiec czekam na pomoc...

z gory dzieki

Phoenix
Zbłąkany
system, exec i shell_exec to ci powinno pomoc smile.gif szukasz po numerze ip danego komputera i go pingujesz jesli odpowie to jest wlaczony a jesli nie to jest off biggrin.gif oczywiscie jesli komputer jest w sieci z serwerem i siec ma tylko jedno zewnetrzne ip to nie zadziala takie rozwiazanie, ale moze wpadniesz na inne smile.gif a co do portu to nie mam pomyslu tongue.gif
Vengeance
system() + nmap
i odpowiednie zanalizowanie danych.
powinienes uzyskac czy komp dziala (ping) jaki ma system i czy dane porty ma otwarte. kwestia wyczytania z helpa parametrów uruchomienia.
phoenix84
duzo mi to nie pomoglo...

bo efekt tych trzech komend jest taki:
kod:

  1. <?
  2. $tekst=system(&#092;"ping 192.168.1.123\"); //system( \"ipchains -A input -s 192.168.1.123 -j DENY\" ); 
  3. $efekt=shell_exec( &#092;"ping -c 1 -w 1 192.168.1.123\" ); 
  4. $efekt2=exec( &#092;"ping -c 1 -w 1 192.168.1.123\" ); 
  5. echo &#092;"1: $tekst, 2: $efekt, 3: $efekt2\";
  6. ?>


Efekt na windowsie jest prawidlowy... (mam wszystkie 3 wyniki (w 2 ostatnich zglasza instrukcje obslugi, boskladnia jest jak na win nieprawidlowa))
ale jak skopiuje na linucha to mam: "1: , 2: , 3: "

powiem, ze prawa do pinga ustawilem na wszelki wypadek 777, a i tak pustka...

nie wiecie co moze byc?
i czy da rade w ten sposob banowac na ipchains? bo mysle, ze jak ping pojdzie to i ban powinien pojsc... biggrin.gif tylko jak tego pinga odpalic... tongue.gif
Vengeance
nie mowilem o 'ping' tylko o 'nmap' ktory pinga takze wykonuje. jak mu komp nie odpowie to na 50% jest wylaczony (wiesz firewalle itp. obnizaja prawdopodobienstwo) ;]
phoenix84
ale to nie rozwiazuje problemu, dlaczego zadna z tych 3 komend u mnie nie dziala...
bo w przypadku innych komend (ping, ipchains) efekt jest ten sam, czyli zaden (brak efektu)...

a mozesz mi blizej przyblizyc temat nmap? co to wlasciwie jest, bonie slyszalem?
i skoro inne komendyneichodza, to czy ta pojdzie?

pozdro

Phoenix

dopisane pozniej:

juz wykumalem ten nmap i to w odroznieniu od ping i ipchains dziala... ale chcialbym jeszcze ipchains smile.gif
i nie wiem czemu zwraca pusty wynik...

moze domyslacie sie dlaczego?

bo efekt tego:
  1. <?
  2. $tekst=system(&#092;"ping\");
  3. $cmd = shell_exec( &#092;"nmap\" );
  4. $cmd2 = shell_exec( &#092;"ping\" );
  5. $cmd3 = shell_exec( &#092;"ipchains\" );
  6. $efekt=exec( &#092;"ipchains\" );
  7. echo &#092;"1: $tekst <br><br> 2: $cmd <br><br> 3: $cmd2 <br><br> 4: $cmd3 <br><br> 5: $efekt\";
  8. ?>

jest taki:
  1. <?php
  2. 1: 
  3.  
  4. 2: Nmap V. 3.00 Usage: nmap [Scan Type(s)] [Options] Some Common Scan Types ('*' options require root privileges) * -sS TCP SYN stealth port scan (default if privileged (root)) -sT TCP connect() port scan (default for unprivileged users) * -sU UDP port scan -sP ping scan (Find any reachable machines) * -sF,-sX,-sN Stealth FIN, Xmas, or Null scan (experts only) -sR/-I RPC/Identd scan (use with other scan types) Some Common Options (none are required, most can be combined): * -O Use TCP/IP fingerprinting to guess remote operating system -p ports to scan. Example range: '1-1024,1080,6666,31337' -F Only scans ports listed in nmap-services -v Verbose. Its use is recommended. Use twice for greater effect. -P0 Don't ping hosts (needed to scan www.microsoft.com and others) * -Ddecoy_host1,decoy2[,...] Hide scan using many decoys -T General timing policy -n/-R Never do DNS resolution/Always resolve [default: sometimes resolve] -oN/-oX/-oG Output normal/XML/grepable scan logs to -iL Get targets from file; Use '-' for stdin * -S /-e Specify source address or network interface --interactive Go into interactive mode (then press h for help) Example: nmap -v -sS -O www.my.com 192.168.0.0/16 '192.88-90.*.* SEE THE MAN PAGE FOR MANY MORE OPTIONS, DESCRIPTIONS, AND EXAMPLES 
  5.  
  6. 3: 
  7.  
  8. 4: 
  9.  
  10. 5: 
  11. ?>
Jabol
A może by tak sockety? Tym się można łądnie podłączyć do wszytkich portów... Tylko sprawdź jeszcze jak działą ten komunikator, czy nie lepiej jest np. sprawdzić na serwerze obsługującym użytkowników (jak to jest np. w przypadku GyGy).

ping (ping nie sprawdza porty, tylko ICMP_ECHO), nmap (narzędzie niedostępne na większości serwerów) i ipchains (boże, kto taki idiotyzm wymyślił... ipchains do sprawdzania CUDZYCH portów...) to sobie odpuść.
Jeżeli chcesz coś szellowego to pomyśl ew. o nc, ale to można też załatwić socketami w samym pehapie, co będzie zdecydowanie bardziej eleganckie.
phoenix84
moj problemw tej chwilipoklega na czym ionnym...

bo z jakiegos powodu... tylko uzycie funkcji nmap w php daje jakikolwiekwynik!!! pozostale zwracaja pustke i nie wiem co jest grane?questionmark.gif jak wpisuje komende system, exec czy shell_exec ("cokolwiek nie wliczajac nmap") to mam w wyniku pustke.... I DLACZEGO TAK MAM? I CO ZMIENIC BY TE FUNKCJE ZWRACALY JAKIS WYNIK?questionmark.gif
czachor
Zapytam na wszelki wypadek... Zwróciłeś uwagę na to:
Cytat("Manual - funkcja system()")
If a variable is provided as the second argument, then the return status code of the executed command will be written to this variable.
? Przejrzyj podany tam przykład...
phoenix84
hmmm

nie znalem funkcji wczesniej ale wpisalem cos takiego (nie wiem czy dobrze):

  1. <?php
  2.  
  3. quote (&#092;"exec()\");
  4.  
  5. ?>


i efekty sa takie:

na win na omni:

Fatal error: Call to undefined function: quote() in C:\Program Files\OmniSecure\htdocs\Kamil\testy\banowanie.php on line 6

a na lin na apache tradycyjnie PUSTKA...
nie ma NIC biggrin.gif

nawet nie rozumiem, dlaczego sa rozne reakcje przez rozne serwery...
czyzby omni nie mial quote? biggrin.gif

a moze cos mam w konfigu rozchrzanione?

czy macie pomysly co zrobic?
Jabol
hehe... wiesz czemu nie ma nic? Pewnie dlatego, że wyłączyłeś (albo raczej nie włączyłeś -defaultowo jest wyłączone) pokazywanie błędów. Pokombinuj z wypisywaniem errorów i nie będzie pustki. (hint: php.ini)
czachor
  1. <?php
  2. $strPing = 'ping ' . $ip;
  3. exec($strPing, $strOut);
  4. foreach ($strOut as $strLinia)
  5. {
  6.  $strInfo .= $strLinia . &#092;"n\";
  7. };
  8. echo $strInfo;
  9. ?>

"Quote" to nazwa(?) tej ramki z cytatem smile.gif
phoenix84
co do raportowania bledow to mysle ze mam ok, bo inne wyswietla prawidlowo... dokladnie to mam e_all & -e_notice

a co do rozwiazania 2-argumentowego z ping... to nadal mamy pustke... ale jesli jako argument podam nmap to chodzi...

mam pytanie...

bo testowalem to na komendach: nmap, ping, ipchains i arp... i jakikolwiek wynik mam tylko na nmap... czym ta funkcja moze roznic sie od pozostalych... ze tylko ona zwraca wynik biggrin.gif... podejrzewam, ze rozwiazanie moze byc banalnie proste (typu ustawienie praw do komend, ale ustawilem do nich na wszelki wypadek prawa na 777), ale po prostu nikomu akurat to rozwiazanie nie przychodzi do glowy...

boja nie mam pomyslow dlaczegotak sie dzieje... i dlaczego z jakiegos powodu jest preferowany nmap...

i od czegoto moze zalezec?
tylko od php czy od ogolnej konfiguracji serwa na pld tez (poza prawami)?

co po prostu moze miec wplyw na cos takiego...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.