380 likes | 491 Vues
The paper presents a secure routing protocol for sensor networks to ensure reliable communication despite the constraints of resource-limited nodes. It explores various security techniques, including prevention, detection, recovery, and resilience, to defend against multiple routing attacks such as blackhole, wormhole, and denial of service. The proposed architecture utilizes a clean-slate approach to establish unique network addresses and routing tables, ensuring secure point-to-point routing suitable for diverse applications like burglar alarms and emergency response systems.
E N D
Secure Sensor RoutingA Clean-Slate Approach Bryan Parno, Mark Luk, Evan Gaustad, Adrian Perrig Carnegie Mellon University
Sensor Networks • Thousands of nodes, each with: • A CPU and ~10 KB of RAM • A radio • Sensors (e.g., heat, motion, sound) • Limited power • Communicate via multi-hop routing • Applications: burglar alarms, emergency response, industrial uses All require secure routing!
Attacks on Routing • Inject incorrect routing information or alter setup/update messages • Compromise sensors • Provide malicious routing data/messages • Suppress (selectively) routing messages • Specific attacks: • Blackhole • Wormhole • Replication • Denial of Service • Sybil • Rushing • Slander • Framing
Consequences of Routing Attacks • Controlling routing allows the attacker to control the network’s communication • Can view, modify, and/or drop messages • Create loops to exhaust legitimate nodes • Prevent or subvert proper network functionality
Techniques for Secure Routing • Prevention • Harden protocols by restricting participants’ actions • Typically employs cryptography • Only forestalls known attacks • Detection & Recovery • Monitor behavior for malicious activity • Eliminate malicious participants • Must be able to distinguish anomalous behavior and accurately assign blame • Resilience • Maintain availability even under unpredicted attacks • Provide graceful performance degradation
Previous Work • Sensor routing • Most assume trusted environment • INSENS only applicable to certain topologies • SIGF requires GPS • Other secure routing protocols • Typically rely on a single technique • Prevention: S-BGP, Ariadne • Detection & Recovery: Watchdog, Pathrater, Secure Traceroute • Resilience: INSENS • Inappropriate for resource-constrained sensor nodes • Require PKI or excessive amounts of memory, computation or communication
Goals • Start from a clean-slate • Incorporate all three security techniques • Prevention, detection & recovery, and resilience • Provide highly secure, highly available point-to-point routing • Necessary in many applications, e.g., Geographic Hash Tables (GHTs), key establishment, etc. • Minimize resource utilization
Outline • Introduction • Overview and Assumptions • Address and Routing Setup • Forwarding • Detection and Recovery • Simulation and Implementation
Our Routing Protocol Architecture • Establish routing tables and network addresses • Use prevention techniques to thwart active attackers • Detect and recover from attempts to deviate from the protocol or to launch additional attacks • Apply resilient routing techniques to forward packets • Uses the securely established routing tables and network addresses
Assumptions • Network authority (NA) uses a public/private keypair {KNA , K-1NA} • Each sensor node preloaded with: • Network authority’s public key KNA • Unique IDx • Certificate: Sig(K-1NA, IDx) • Signature scheme optimizes for verification • Intended for networks of primarily stationary sensors
Outline • Introduction • Overview and Assumptions • Address and Routing Setup • Forwarding • Detection and Recovery • Simulation and Implementation
Node Routing ID Address Table A 0.1 B 0.0 C 1.1 D 1.0 Address and Route Setup Overview • Goal: • Assign a unique network address to each node • Populate each node’s routing table • Accomplished with a recursive grouping algorithm • Initially, each sensor constitutes its own group • Groups repeatedly merge until all nodes belong to same group • Each time a node’s group merges, the node adds one bit to its network address and one entry to its routing table
Recursive Grouping Algorithm • Groups act in an asynchronous, distributed fashion • Each group: • Collects information about its neighbors • Proposes to merge with smallest neighboring group • Based on number of nodes in the group • Ties broken based on group ID • This metric keeps addresses and routing tables small • Mutual proposal triggers merge • Entire process is deterministic for a given topology • Limits the damage an attacker can inflict
Calculating Network Addresses • Assume G and G’ decide to merge • Each node in G independently extends its network address by one bit based on: • Nodes in G’ make similar changes
Populating Routing Tables • Assume G and G’ decide to merge • Each node in G records the neighbor from whom it heard about G’ in its current routing table slot D G G’ G
Sample Routing Table 1.1.0
Outline • Introduction • Overview and Assumptions • Address and Routing Setup • Forwarding • Detection and Recovery • Simulation and Implementation
Forwarding • Basic forwarding similar to area-style forwarding • Given a destination network address route towards node with longest matching prefix • Path length in logical hops bound by log(n) • A logical hop may require several physical hops
Forwarding Example Message from 1.1.0 to 0.0.0 1.1.0 0.1.1 0.0.1 1.1.0
Outline • Introduction • Overview and Assumptions • Address and Routing Setup • Forwarding • Detection and Recovery • Threats • Detecting Grouping Deviations • Eliminating Malicious Nodes • Simulation and Implementation
Threats • Compromised nodes may lie about group size or ID to subvert route setup • Compromised nodes may claim multiple IDs or try to simultaneously group with several other nodes
Detecting Grouping Deviations • Maintain a Grouping Verification Tree (GVT) for each group during recursive grouping • Prevents attacker from lying about group ID or size • Based on a hash tree construction • Before two groups merge, they verify each other’s GVT • Integrity of the GVTs insures integrity of the recursive grouping algorithm • Final GVT covers all nodes in the network • Can be used to authenticate any node’s network address
Background: Hash Trees • Employ a one-way hash function H: {0,1}*→{0,1}ρto create one-way data structures • The Merkle Tree is one such data structure • Each internal node calculated as: Parent = H(ChildL || ChildR) • Authenticates a leaf node given the root value and nodes along the path to the root
Group ID Computation • Assume G and G’ decide to merge • Each node in G independently calculates the new group ID as:
GVT Formation • One GVT per group • GVT leaves are IDs of nodes in the group • Internal nodes represent intermediate group IDs • Each node maintains information about its branch of the GVT • Specifically, the group ID and size of each merge partner
λ GVT Verification • Before merging, group G verifies the GVT for G’ (and vice versa) • G’ announces its group ID (and size) • Group G sends a challenge value to G’ • The challenge uniquely selects a node in G’ • Chosen node sends its certificate and GVT information to G • Nodes in G verify the GVT values Responder Challenger
Eliminating Malicious Nodes • Legitimate nodes use the Honeybee mechanism to eliminate malicious nodes • To revoke malicious node M, legitimate node L broadcasts: • IDL, IDM, and a signature • Legitimate nodes revoke M and L • Prevents a compromised node from revoking more than one legitimate node
Outline • Introduction • Overview and Assumptions • Address and Routing Setup • Forwarding • Detection and Recovery • Simulation and Implementation
Simulations • Comparison against Beacon Vector Routing (BVR) protocol [NSDI 2005] • Optimized for efficiency • No security included • Experimental Setup: • 500 nodes, random deployment, DOI radio model • Summary of Results: • Our routing success rate: 100% • Paths longer than shortest path • Distributes overhead evenly throughout network • Better than BVR, even in topologies with voids
Metric: Path Stretch • Stretch = Protocol Path Length / Optimal Path Length • Optimistic for BVR: does not include failed BVR routes
~ 168,000 messages Metric: Load Distribution - Uniform
~ 26,000 messages Metric: Load Distribution - Irregular
Implementation • Developed in NesC on TinyOS using Telos sensor nodes • Source code to be available soon • Challenges overcome: • Reliable Broadcast • Asynchronicity • Asymmetric Links • Ongoing work to expand the current testbed
Other Contributions • Techniques for resilient forwarding • Duplicate detection • Proofs of performance and correctness • Implementation details
Conclusions • Secure sensor routing is an important and difficult problem • Most previous techniques assume a trusted environment or use a single security technique • We design a protocol incorporating all three security techniques that still compares favorably to insecure protocols
Thank you! parno@cmu.edu