This document provides an overview of building a distributed sensor network called the Harbinger Sensor Network Project (HSNP) for collecting wireless traffic data and performing analytics. The HSNP has three stages: 1) creating sensor nodes using inexpensive hardware like Raspberry Pis to passively collect wireless data, 2) centralized data management to aggregate the sensor data, and 3) analytics and visualizations of the collected data. The document outlines the objectives, requirements, hardware suggestions, data schema, sensor code, and considerations for designing and deploying the sensor network grid.
2. rbx@rbx:~# whoami
Tim Fowler
Prinicpal IT Security Consultant
Mountainsec, LLC
@roobixx
3. rbx@rbx:~# info
Christian
Member of WNCInfoSec & Proverbs Hackers
OSWP
Open Source Advocate
Lover/Hater of all things Wifi
Triathlete*
* A Work in Progress
10. HSNP: Objectives
Create a distributed sensor network for data
collection and traffic flow / migratory pathway
analysis
Create analytics engine for data processing and
visualization rendering
14. Harbinger Sensor Network Project
Harbinger is a wireless sensor network project
for historical trend and predictive analysis
Unlike other sensor projects, Harbinger is
completely passive on the airwaves, making it
virtually undetectable.
Harbinger is an open source project that is
licensed under the GPL v3
15. HSNP: Requirements
Must be open source
Must be as hardware agnostic as possible to
keep cost down and allow for the use of
whatever platform is available.
Keep dependencies & requirements to a
minimum
Must scale
16. HSNP: Project Breakdown
The HSNP has three primary components which
breakdown into stages of development
Stage 1: Sensor Node(s)
Stage 2: Centralized Data Management
Stage 3: Analytics and Data Visualizations
20. HSNP: Data Requirements
● Clients
– Probe Requests
– Date which client appeared in the network
– Last seen in the network
● Access Points
– Probe Responses
– Time of Responses
31. HSNP: Designing the “Grid”
Questions to consider when deploying sensors
● Where are the choke points?
● Can a device in the grid be seen by multiple
nodes?
● What happens if a node(s) goes down??
32. HSNP: Deploying the Nodes
Depending on how expansive your coverage
area is will dictate how many nodes are
required for your grid.
33. HSNP: Deploying the Nodes
● Start my surveying the landscape!
● Use Wigle or Kismet to map all Access Points
within your desired coverage area
● You will use this data to fine tune your node
placements
34. HSNP: Node Placement
● Determine the exact area you desire to cover
● Estimate where the choke points in your grid
are at that require coverage.
● Test a sensor at each point looking for the
Access Points that are within rang of the sensor
● Cross-reference the Wigle scan to determine
your sensors effective range at current
placement.
35. HSNP: Effective Range of Detection
● ERD will vary from sensor to sensor even if
they are all the same hardware configuration
37. ERD is highly variable and will change
frequently.
Constant calibration is require to maintain
accurate data within the grid
38. Stage 2: Centralized Data Management
● Not a lot to say on this at this point but
obviously being able to gather all of the sensor
data into a single location for processing is
necessary.