2013년 12월 13일 금요일

[Python] Linux에서 이더넷 정보 가져오기

#!/usr/bin/env python
"""
ifconfig
exman@medialand.co.kr
"""

import string,socket,fcntl,IN

def ifconfig(ifname):
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    ifr = ifname+'\0'*(16-len(ifname))+chr(socket.AF_INET)+15*'\0'

    try:
        r= fcntl.ioctl(s.fileno(),0x8927,ifr)
        hwaddr = map(ord,r[18:24])
    except IOError:
        s.close()
        return None

    try:
        r= fcntl.ioctl(s.fileno(),0x8915,ifr)
        addr = string.join(map(str,map(ord,r[20:24])),'.')
    except IOError:
        s.close()
        return None

    try:
        r= fcntl.ioctl(s.fileno(),0x8919,ifr)
        broadaddr = string.join(map(str,map(ord,r[20:24])),'.')
    except IOError:
        s.close()
        return None

    try:
        r= fcntl.ioctl(s.fileno(),0x891b,ifr)
        netmask = string.join(map(str,map(ord,r[20:24])),'.')
    except IOError:
        s.close()
        return None

    s.close()
    return hwaddr,addr,broadaddr,netmask

if __name__=='__main__':
    print ifconfig('eth0')
    print ifconfig('eth0:0')
    print ifconfig('eth0:1')
    print ifconfig('eth1')
    print ifconfig('lo')

마이크로소프트 Outlook의 권한 상승 취약점(CVE-2023-23397) 제로데이 취약점

  면책 조항  이 블로그에는 민감한 정보가 포함되어 있습니다. 그러나 이 정보는 일부 공개적으로 알려져 있기 때문에 모든 정보를 삭제하지 않기로 결정했습니다. 공격의 간단성과 사용자 상호작용이 필요하지 않는 사실 때문에 모든 사용자가 즉시 시스템을 ...