Can you fool me? Towards automatically checking protocol gullibility Milan StanojevićRatul Mahajan Todd MillsteinMadanlal Musuvathi UCLAMicrosoft Research.

Slides:



Advertisements
Similar presentations
Dynamic Source Routing (DSR) algorithm is simple and best suited for high mobility nodes in wireless ad hoc networks. Due to high mobility in ad-hoc network,
Advertisements

CTO Office Reliability & Security Distinctions and Interactions Hal Lockhart BEA Systems.
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
© 2007 Levente Buttyán and Jean-Pierre Hubaux Security and Cooperation in Wireless Networks Chapter 4: Naming and addressing.
Packet Leashes: Defense Against Wormhole Attacks Authors: Yih-Chun Hu (CMU), Adrian Perrig (CMU), David Johnson (Rice)
Computer Science 1 CSC 774 Advanced Network Security Enhancing Source-Location Privacy in Sensor Network Routing (ICDCS ’05) Brian Rogers Nov. 21, 2005.
Monday, June 01, 2015 ARRIVE: Algorithm for Robust Routing in Volatile Environments 1 NEST Retreat, Lake Tahoe, June
MAC Layer (Mis)behaviors Christophe Augier - CSE Summer 2003.
Transport Layer3-1 Congestion Control. Transport Layer3-2 Principles of Congestion Control Congestion: r informally: “too many sources sending too much.
Secure Data Communication in Mobile Ad Hoc Networks Authors: Panagiotis Papadimitratos and Zygmunt J Haas Presented by Sarah Casey Authors: Panagiotis.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
1 Congestion Control. Transport Layer3-2 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for.
ExOR:Opportunistic Multi-Hop Routing For Wireless Networks
Low Delay Marking for TCP in Wireless Ad Hoc Networks Choong-Soo Lee, Mingzhe Li Emmanuel Agu, Mark Claypool, Robert Kinicki Worcester Polytechnic Institute.
Gentian Jakllari, Stephan Eidenbenz, Nick Hengartner, Srikanth V. Krishnamurthy & Michalis Faloutsos Paper in Infocom 2008 Link Positions Matter: A Non-Commutative.
Problem Spaces & Search CSE 473. © Daniel S. Weld Topics Agents & Environments Problem Spaces Search & Constraint Satisfaction Knowledge Repr’n.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
Aleksandar Kuzmanovic & Edward W. Knightly A Performance vs. Trust Perspective in the Design of End-Point Congestion Control Protocols.
1 Sustaining Cooperation in Multi-Hop Wireless Networks Ratul Mahajan, Maya Rodrig, David Wetherall and John Zahorjan University of Washington Presented.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168)
ExOR: Opportunistic Multi-Hop Routing For Wireless Networks Sanjit Biswas & Robert Morris.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #8 Explicit Congestion Notification (RFC 3168) Limited Transmit.
17/10/2003TCP performance over ad-hoc mobile networks. 1 LCCN – summer 2003 Uri Silbershtein Roi Dayagi Nir Hasson.
Applying Dynamic Analysis to Test Corner Cases First Penka Vassileva Markova Madanlal Musuvathi.
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
Chapter 9 Classification And Forwarding. Outline.
 Structured peer to peer overlay networks are resilient – but not secure.  Even a small fraction of malicious nodes may result in failure of correct.
Gursharan Singh Tatla Transport Layer 16-May
ExOR: Opportunistic Multi-Hop Routing for Wireless Networks Sigcomm 2005 Sanjit Biswas and Robert Morris MIT Computer Science and Artificial Intelligence.
Virtual LANs. VLAN introduction VLANs logically segment switched networks based on the functions, project teams, or applications of the organization regardless.
Made with OpenOffice.org 1 TCP Multi-Home Options Arifumi Matsumoto Graduate School of Informatics, Kyoto University, Japan
Computer System Lifecycle Chapter 1. Introduction Computer System users, administrators, and designers are all interested in performance evaluation. Whether.
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
Securing Every Bit: Authenticated Broadcast in Wireless Networks Dan Alistarh, Seth Gilbert, Rachid Guerraoui, Zarko Milosevic, and Calvin Newport.
Security for the Optimized Link- State Routing Protocol for Wireless Ad Hoc Networks Stephen Asherson Computer Science MSc Student DNA Lab 1.
Executable specification of cryptofraglets with Maude for security verification Fabio Martinelli and Marinella Petrocchi IIT-CNR, Pisa Italy presented.
A Virtual Honeypot Framework Author: Niels Provos Published in: CITI Report 03-1 Presenter: Tao Li.
1 Impact of transmission errors on TCP performance (Nitin Vaidya)
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Data Link Layer Part I – Designing Issues and Elementary.
1 Internet Control Message Protocol (ICMP) Used to send error and control messages. It is a necessary part of the TCP/IP suite. It is above the IP module.
A VIRTUAL HONEYPOT FRAMEWORK Author : Niels Provos Publication: Usenix Security Symposium Presenter: Hiral Chhaya for CAP6103.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
A Dynamic Packet Stamping Methodology for DDoS Defense Project Presentation by Maitreya Natu, Kireeti Valicherla, Namratha Hundigopal CISC 859 University.
ACM SIGACT News Distributed Computing Column 9 Abstract This paper covers the distributed systems issues, concentrating on some problems related to distributed.
Encouraging Cooperation in Multi-Hop Wireless Networks Ratul Mahajan, Maya Rodrig, David Wetherall and John Zahorjan University of Washington, June 2004.
© 2007 Levente Buttyán and Jean-Pierre Hubaux Security and Cooperation in Wireless Networks Chapter 4: Naming and addressing.
Network Protocols Network Systems Security Mort Anvari.
Xiong Junjie Node-level debugging based on finite state machine in wireless sensor networks.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Authentication has three means of authentication Verifies user has permission to access network 1.Open authentication : Each WLAN client can be.
Race conditions and synchronization issues Exploiting UNIX.
RIP Routing Protocol. 2 Routing Recall: There are two parts to routing IP packets: 1. How to pass a packet from an input interface to the output interface.
INF3190 – Home Exam 2. Goal The goal of this exercise is to provide network layer reliability for the monitoring/administration tool presented in “home.
Multi-addressed Multipath TCP draft-ford-mptcp-multiaddressed-02 Alan Ford Costin Raiciu, Mark Handley.
Process-to-Process Delivery:
The Transport Layer introduction fundamental problems in networking
Internet Networking recitation #9
Video Multicast over the Internet (IEEE Network, March/April 1999)
Multi-addressed Multipath TCP
CAE: A Collusion Attack against Privacy-preserving Data Aggregation Schemes Wei Yang University of Science and Technology of China (USTC) Contact Me.
Self Organized Networks
Chapter 15 – Part 2 Networks The Internal Operating System
Internet Networking recitation #10
ExOR:Opportunistic Multi-Hop Routing For Wireless Networks
Network Architecture By Dr. Shadi Masadeh 1.
Leveraging Textual Specifications for Grammar-based Fuzzing of Network Protocols Samuel Jero, Maria Leonor Pacheco, Dan Goldwasser, Cristina Nita-Rotaru.
TCP Overview.
Impact of transmission errors on TCP performance
Presentation transcript:

Can you fool me? Towards automatically checking protocol gullibility Milan StanojevićRatul Mahajan Todd MillsteinMadanlal Musuvathi UCLAMicrosoft Research

Protocol gullibility Gullibility tendency to believe too readily and therefore be easily deceived [thefreedictionary.com] Protocol gullibility tendency of the protocol participants to believe too readily and therefore be easily deceived by manipulative participants The protocol can be subverted without the knowledge of the honest participants ratul | hotnets | 20082

Congested Gullibility of the ECN protocol ECN receiver can deceive the sender into sending faster [Wetherall 2001] ratul | hotnets | C=0 C=1 Send slower Faithful reflection C=0 C=1 Congested C=0 Send faster Incorrect reflection

More examples of protocol gullibility TCP receiver can deceive the sender into sending faster Three separate manipulation mechanisms [Savage 1999] Nodes can lie about connectivity in routing protocols Nodes can refuse to relay packets in multi-hop wireless networks Several manipulation mechanisms exist for DHTs ratul | hotnets | 20084

Why care about protocol gullibility? Gullibility is a different form of protocol weakness ≠ bugs ≠ security problems of auth., integrity, and privacy Manipulation by legitimate participants instead of external agents Gullible protocols fail to achieve their goal in the presence of manipulation Modern protocols are regularly used between entities that should not trust each other Blind trust is foolhardy: hijacked or buggy participants ratul | hotnets | 20085

Our work Develop methods to automatically uncover protocol gullibility This paper represents a baby step: Poses and formalizes the problem Identifies key challenges and helpful techniques Implements a preliminary checker ratul | hotnets | 20086

Problem formulation Two-player game between angelic and demonic components The angelic component consists of honest participants Follows the protocol Non-determinism is allowed The demonic component consists of manipulators Not limited by the protocol; can do anything Collusion is allowed The protocol is gullible if is there exists a strategy for the demonic component that violates a desirable property ratul | hotnets | 20087

Challenges in determining gullibility 1.Practical search over demonic strategies 2.Determining when a strategy succeeds 3.Dependence on network conditions ratul | hotnets | 20088

Challenge 1: Practical strategy search The space of demonic strategies Any bit-pattern can be sent in a packet 2 ^12000 possibilities for a 1500-byte packet Some strategies may involve packet sequences Proposed techniques to make search tractable Consider only the header part of the packet Consider only syntactically correct packets Consider limited-history strategies Exploit independence of header fields Program analysis (in a few slides) ratul | hotnets | 20089

Challenge 2: Determining when a strategy has been successful Want to go beyond non-binary properties but hard to predict protocol behavior in arbitrary conditions E.g., throughput of a TCP receiver Solution: Compare with reference behavior under the same network conditions Non-determinism precludes direct one-to-one comparison against reference behavior E.g., TCP throughput depends on exact packets lost Solution: Statistical comparison over multiple runs ratul | hotnets |

Challenge 3: Dependence on network conditions Some strategies succeed only under particular network conditions E.g., the ECN manipulation has no impact in the absence of congestion Proposed solution: Search over the space of network conditions Assume paths between pairs of participants are independent Check if the strategy succeeds under any condition ratul | hotnets |

Our preliminary gullibility checker Checks protocol implementations Assumes all headers fields are independent Single-step strategies (no history) Built on top of MACE [Killian 2005] Explores angelic non-determinism using simulation Explores demonic strategies as modifications of the reference implementation itself Modify outgoing packets (implemented) Add or drop packets (not yet implemented) ratul | hotnets |

Inputs to the checker 1. Network configuration 2. Properties to be checked Specified in terms of implementation variables 3. Protocol header format 4. A packet modifier class Field Type Default strategies for demonic component Fixed, CkSumNone Enum, RangeTry each value, pick at random SeqNumSubtract or add a constant IdPick at random OtherUser-specified ratul | hotnets |

Case study: ECN We implement a version of the ECN protocol in MACE Specify throughput as the property to be preserved ratul | hotnets | Set bit to 0Set bit to 1Set bit randomly Congestion probability Packets / timer Congestion probability Packets / timer Congestion probability Manipulative receiver Reference receiver

Next: Program analysis to further reduce search space Infer independent header fields Infer inputs that are ignored by honest participants E.g., If (IP.version != 4) ignore ; E.g., If (Ack.SeqNum NOT IN CongWin) ignore; Infer inputs that impact relevant state variables E.g., If (Ack.SeqNum > LastSeqNum) pktsSent++; Hope to leverage work on taint analysis, directed random testing, and symbolic execution ratul | hotnets |

Conclusions and future work Gullibility is a major vulnerability in modern protocols Important to develop methods for automatic detection Our work scratches the surface of the problem Poses the problem and outlines the challenges Our preliminary methods show promise Future work: Evaluate more complex protocols Design principles for non-gullibility ratul | hotnets |