[PHP] MAC Adresse auslesen?

Dieses Thema im Forum "Webentwicklung" wurde erstellt von splashed, 8. Dezember 2009 .

Schlagworte:
  1. 8. Dezember 2009
    Zuletzt von einem Moderator bearbeitet: 15. April 2017
    MAC Adresse auslesen?

    Hallo!
    ist es möglich die MAC-Adresse eines Computers auszulesen, der Gerade auf meine PHP zugreift?
    Ich bin auf das hier gestoßen, nur weiß ich nicht wie ich dieses Script benutzte und die MAC adresse in eine Variable bringe

    PHP:
    function  getMac  $Ip ) { 
          if (
    strtoupper ( substr ( PHP_OS 0 3 )) ===  'WIN' ) { 
             
    $output  shell_exec ( "nbtstat -a  $Ip " ); 
             
    $output  explode ( "\n" , $output ); 
             
    $mac_line  explode  ( "=" $output sizeof ( $output )- ]); 
             
    $sMacAddress  trim ( $mac_line [ 1 ]); 
          } else { 
             
    $location  = ` which arp `; 
             
    $arpTable  = ` $location  -n  $Ip `; 
             
    $arpSplitted  split ( "\n" , $arpTable ); 
        
             foreach (
    $arpSplitted  as  $value ) { 
           
                
    $valueSplitted  split ( " " , $value ); 
           
                foreach (
    $valueSplitted  as  $spLine ) { 
              
                   if (
    preg_match ( "/ $Ip /" , $spLine )) { 
                      
    reset ( $valueSplitted ); 
                 
                      foreach (
    $valueSplitted  as  $spLine ) { 
                         if (
    preg_match ( "/[0-9a-f][0-9a-f][:-]"
                                        
    "[0-9a-f][0-9a-f][:-]"
                                        
    "[0-9a-f][0-9a-f][:-]"
                                        
    "[0-9a-f][0-9a-f][:-]"
                                        
    "[0-9a-f][0-9a-f][:-]"
                                        
    "[0-9a-f][0-9a-f]/i" , $spLine )) { 
                            
    $sMacAddress  $spLine
                            break; 
                         } 
                      } 
                   } 
                } 
             } 
          } 
          return 
    $sMacAddress
       }  
    Quelle:
    PHP:
     MAC Adresse auslesen  RR : Board [/ URL ]
     
  2. 8. Dezember 2009
    AW: MAC Adresse auslesen?

    Du packst die Funktion einfach in ne PHP auf deinem Server/PC und rufst die Funktion auf indem du die IP an die Funktion übergibst..
    zB
    PHP:
    echo  getMac ( 192.168.0.99 );
    und dir wird dann die MAC-Adresse zurückgegeben..
    Code:
    geht aber nur, wenn NetBIOS bei dem anderen aktiviert ist und ich glaube im Internet wird das eh nit funzen...
    Bei dem Part bin ich mir nit sicher^^
     
  3. 8. Dezember 2009
    AW: MAC Adresse auslesen?

    gibt es eine andere Möglichkeit die MAC adresse auszulesen?
     
  4. 8. Dezember 2009
    AW: MAC Adresse auslesen?

    Dazu gibts leider keine Möglichkeit. Die MAC-Addresse wird nur vom ARP-Protokoll auf Ebene 2 des OSI-Modells benutzt. Und weiter oben (Layer 3 oder höher) wird keine MAC mehr verwendet. Von daher hast du absolut keine Chance über den Protokollstack an die MAC-Addresse zu kommen.

    edit: Das script oben ermittelt nur die Mac-Addresse des PCs, auf dem das script ausgeführt wird.
     
  5. 8. Dezember 2009
    AW: MAC Adresse auslesen?

    ne es ermittelt schlicht und einfach die MAC anhand der IP, die man eingibt..
    Und das auch über Windows Bordmittel..
    Wenn du die Konsole aufmachst und dort nbtstat -a IP.Adr.es.se eingibst, bekommst die MAC-Adresse insofern du in dem internen Netzwerk der IP bist...

    Wie Pyro schon sagte... Du kannst die MAC-Adresse nicht einfach nur anhand der Verbindungen auf deinen Server ermitteln...
    Da musste den Leuten, deren MAC-Adressen du haben willst schon ne Art "Trojaner" unterschieben, der dann zB auf ein Script auf deinem Server zugreift und die MAC-Adresse in die DB schreibt oder so
     
  6. 9. Dezember 2009
    AW: MAC Adresse auslesen?

    Wie funktioniert denn das ARP eigentlich im Internet? Denn ich kann mir schlecht vorstellen, dass wirklich wie im internen Netz an den Broadcast gesendet wird -> viel zu hohes Datenaufkommen.

    Aber gesetzt dem Fall, das ARP-Paket wird wirklich bis zum Zielserver gesendet, könnte man die MAC über (Win)Pcap auslesen. Allerdings müsste man das dann noch irgendwie in das PHP-Skript einbinden.
     
  7. 9. Dezember 2009
    AW: MAC Adresse auslesen?

    Pyro sagte aber, dass die MAC-Adresse nur bis zur Ebene 2 des OSI-Schichtmodells gesendet wird..
    Was das interne Netzwerk ist.. Und ab Schicht 3, was das Internet ist, wird keine MAC-Adresse mehr versendet...

    Zitat von Wiki:
    MfG
     
  8. 9. Dezember 2009
    AW: MAC Adresse auslesen?

    Broadcast im Internet?
    Also im Ernst, was habt ihr denn geraucht...

    Das mit der MAC-Adresse kannst du vergessen, die wird zwischen deinem Rechner und dem nächsten Router benutzt, nicht weiter.
     
  9. 10. Dezember 2009
    AW: MAC Adresse auslesen?

    Also ich schlage dir ernsthaft vor erstens ein bisschen netter zu sein, zweitens meinen Post richtig zu lesen ("Denn ich kann mir schlecht vorstellen...") und drittens nicht genau das, was Erazor gesagt hat einfach zu wiederholen...
     
  10. 10. Dezember 2009
    AW: MAC Adresse auslesen?

    aber pyro hat das auch schon gesagt, also ging grafix evtl. davon aus das du ned lesen kannst ^^
     
  11. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.