示例#1
0
def dotransform(request, response):

    pkts = rdpcap(request.value)
    aps = []

    for p in pkts:
        if p.haslayer(Dot11Beacon) or p.haslayer(Dot11ProbeResp):
            ssid = p[Dot11Elt].info
            bssid = p[Dot11].addr3
            channel = int(ord(p[Dot11Elt:3].info))
            capability = p.sprintf(
                "{Dot11Beacon:%Dot11Beacon.cap%}{Dot11ProbeResp:%Dot11ProbeResp.cap%}"
            )
            if re.search("privacy", capability):
                enc = 'Y'
            else:
                enc = 'N'

            entity = ssid, bssid, str(channel), enc
            if entity not in aps:
                aps.append(entity)

    for ssid, bssid, channel, enc in aps:
        e = AccessPoint(ssid + ':' + bssid)
        e.apbssid = bssid
        e.apchannel = channel
        e.apenc = enc
        e.linklabel = 'Channel:' + channel + '\nEncryption:' + enc
        e.linkcolor = 0xFF4000
        response += e
    return response
示例#2
0
def dotransform(request, response):
  
  pkts = rdpcap(request.value)
  aps = []
  
  for p in pkts:
    if p.haslayer(Dot11Beacon) or p.haslayer(Dot11ProbeResp):
      ssid = p[Dot11Elt].info
      bssid = p[Dot11].addr3    
      channel = int(ord(p[Dot11Elt:3].info))
      capability = p.sprintf("{Dot11Beacon:%Dot11Beacon.cap%}{Dot11ProbeResp:%Dot11ProbeResp.cap%}")
      if re.search("privacy", capability):
	enc = 'Y'
      else: enc  = 'N'

      entity = ssid, bssid, str(channel), enc
      if entity not in aps:
	aps.append(entity)
  
  for ssid, bssid, channel, enc in aps:
    e = AccessPoint(ssid + ':' + bssid)
    e.apbssid = bssid
    e.apchannel = channel
    e.apenc = enc
    e.linklabel = 'Channel:' + channel + '\nEncryption:' + enc
    e.linkcolor = 0xFF4000
    response += e
  return response