NSDI 2009: Day 1: Trust and Privacy
Thursday, April 23rd, 2009Best paper awards for the first day:
TrInc: Small Trusted Hardware for Large Distributed Systems
Dave Levin, University of Maryland; John R. Douceur, Jacob R. Lorch, and Thomas Moscibroda, Microsoft Research
Sora: High Performance Software Radio Using General Purpose Multi-core Processors
Kun Tan and Jiansong Zhang, Microsoft Research Asia; Ji Fang, Beijing Jiaotong University; He Liu, Yusheng Ye, and Shen Wang, Tsinghua University; Yongguang Zhang, Haitao Wu, and Wei Wang, Microsoft Research Asia; Geoffrey M. Voelker, University of California, San Diego
Trust and Privacy
Session Chair: Steven Hand, University of Cambridge
TrInc: Small Trusted Hardware for Large Distributed Systems
Dave Levin, University of Maryland; John R. Douceur, Jacob R. Lorch, and Thomas Moscibroda, Microsoft Research
———————————————————
Large number of selfish and malicious behaviours in distributed systems can be described as Equivocation.
Equivocation: say something to A and say something else in conflict with that to B
Goal: A minimal required abstraction for elimination of equivocation
Using a non-decreasing counter and a key, the tool provides a new primitive: unique, once-in-a-lifetime attestation.
Trinket: the implementation as a trusted piece of hardware. The users need to attach this hardware to their system, to gain the benefits of TrInc.
Application 1: trusted log by TrInc
- the log can be changed only by append operation
- implement Attested Append-only Memory (A2M) using abstractions of TrInc
- compared to A2M, the TrInc size is smaller and semantics are simpler
Application 2: prevent under-report in Bit-torrent
- Node A can decide not to tell the other peers about block x that it has. In this way, because a few nodes posses the block, Node A can keep the other peers interested over the time and consequently reduces its own download time.
- The story starts when A receives x and give the receipt ACK to the sender but tells the others that it does not have block x (example of equivocation.)
- Solution: in the ACK of receipt, the node should put the number of blocks that it has and also the last block it has received.
- Again: reduction to monotonic timer and key
TrInc is implemented in Gemalto .NET SmartCards.
Micro benchmark results are not promising: It is very slow.
Perhaps the reason is that the current hardware is not designed to make the TrInc efficient; the future hardwares by keeping Trinc tasks in mind, could be efficient.
Sybil-Resilient Online Content Voting
Nguyen Tran, Bonan Min, Jinyang Li, and Lakshminarayanan Subramanian, New York University
———————————————————————
Websites rely on votes for ranking
Problem: vulnerable to Sybil attacks
Solution: using social networks
Assumption in their proposed system (SumUp): A central collector for votes and also the friendship graph
It uses Max-flow algorithm to collect votes over the graph
Congested edges could be:
- attack edges, because lots of fake identities are connecting to the rest of the graph via those edges.
- honest edges close to collector, because bigger sub-trees are connecting via them to the connector.
How to distinguish attack edges from honest edges?
Solution: capacity assignment to links via ticket distribution
Each node takes one ticket and divide the rest to the next following nodes.
- Nodes closer to main collector would receive more tickets and hence they can afford the congested links connected to them.
- However, nodes connected to attack edges would receive less tickets that is not enough for all fake identities connected to them.
How to obtain the optimal value for total number of tickets (i.e. v)?
Solution: Iterative approach; start with small v and double it after each iteration.
Furthermore, taking advantage of feedbacks from collector, it can do more:
- reduces the capacity on attack edge by penalizing the capacity on links towards the attack edges
- eliminates links with high penalties
It has been evaluated over YouTube, Flicker, and Synthetic graphs.
Q: What if the attacker is close to the collector, then it can be mistaken by a honest node?
A: Yes, it is true.
Bunker: A Privacy-Oriented Platform for Network Tracing
Andrew G. Miklas, University of Toronto; Stefan Saroiu and Alec Wolman, Microsoft Research; Angela Demke Brown, University of Toronto
———————————————————————–
Network tracing raises privacy concerns:
- Accidental disclosure
- Remote attacks over the Internet
- Operational attacks: the attacker has physical access to the hardware
- …
Previous Solutions: Anonymization Techniques to protect sensitive information
- Offline: has high privacy risk
- Online: has high engineering cost
Key insight: Record the data on buffers online and process the buffer offline
- The closed-box environment produces an anonymized trace as its only output.
- Make it safe-on-reboot: upon a reboot, all sensitive data gathered by the system is effectively destroyed.
To implement closed-box environment, they have to restrict I/O in that module.
Concern: How much restriction is sufficient and necessary?!
Debugging: The recoded information are not enough for debugging.
Solution: A debug mode that can be activated by rebooting the system.
Concern: Is there any guaranty that the debugger mode would not be used for normal usage and endanger the privacy of the users?
Security attacks:
A) Attacking the Restricted Interfaces of the Closed-Box VM: basically there is no algorithmic solution. They do their best, but there is no proof for safety.
B) Attack by direct access to the hardware: usually the attacker needs to reboot the system to take the hardware (like memory) off the system. Upon reset signal, all the data would be deleted.
- Concern: What about the attacks that does not reset the system?
They report less boring implementation because they used mostly python and scripts rather than C++!
Q: What about Bugs? They can break the security!
A: Yes, we just can do our best.
Q: People in security community has been working for decades to solve the problem of security, but still the systems are vulnerable against new unpredicted attacks. How can you guaranty the safety of your approach?
A: We have not tried to do any thing in that domain. We just do our best to use the available techniques to provide privacy.