250 likes | 404 Views
A Socially-Aware Operating System for Trustworthy Computing. Daniela Oliveira 1 , Dhiraj Murthy 1 , Henric Johnson 2 , S. Felix Wu 3 , Roozbeh Nia 3 and Jeff Rowe 3 1 Bowdoin College 2 Blekinge Institute of Technology 3 University of California at Davis.
E N D
A Socially-Aware Operating System for Trustworthy Computing Daniela Oliveira1 ,Dhiraj Murthy1,Henric Johnson2, S. Felix Wu3, Roozbeh Nia3 and Jeff Rowe3 1Bowdoin College 2Blekinge Institute of Technology 3University of California at Davis IEEE Workshop on Semantics, Security and Privacy September 21, 2011
Outline • Introduction • Limitations of Traditional Defense Solutions • The Challenge of Computing with Social Trust • The Socially-Aware OS • Applications, Benefits and Threats • Concluding Remarks
OSNs and the Malware Landscape • OSNs: rise in popularity; • Malware landscape complex; • Internet: social platform • What can be trusted? Internet
A Trustworthy Computing Paradigm • Based on social trust; • OS, architecture and applications should become socially-aware; • OSN users assign/have inferred trust values for friends and objects; • Continuum trusted-untrusted.
Distinguishing Benign x Malicious • Signature, Behavior, Information-flow models: • Automated, rigid and threat-specific. • Shift to Web-based computer paradigm: • Users accomplish most of their computing need with browser.
How can we think differently? • What if we leverage social trust to distinguish a continuum of trusted/untrusted? • Flexibility • Diversity • Stronger security policies
Traditional Defense Solutions • Signature-based • Defeated by code obfuscation, polymorphism, metamorphism • Cannot prevent zero-day attacks • Behavior-based • Susceptible to false positives • Depends of relevant training data • Information flow-based • Usually assumes all data from the Internet as untrusted: too restrictive
What is Missing? • Unpredictability • Diversity • Continuum of trust/untrusted values • Human role
Social Trust • In Sociology: • Essential commodity • Functional pre-requisite for society • Tool for making trustworthy decisions • Risk and uncertainty • An added bonus? • Computing with Social Trust • New research area
The Socially- Aware Framework • Operating systems manages: • Processes; • Memory; • File systems; • I/O devices;
The Socially- Aware Framework • Operating systems manages: • Processes; • Memory; • File systems; • I/O devices; • Social trust
User Trust Repository • People user is connected to: email addresses • Objects: URLs, files, IP addresses, files; • Privacy preserved: only sharable objects danielaseabra@gmail.com Bowdoin College IP: 139.140.214.196/16 http://sourceforge.net/projects/jedit/files/jedit/4.4.1/jedit4.4.1install.exe/download 20 Years of Linux: http://www.cnn.com/2011/TECH/gaming.gadgets/08/25/linux.20/index.html?hpt=hp_bn7 http://www.cc.gatech.edu/~brendan/Virtuoso_Oakland.pdf
Usage Model Alice OSN Server TR User 1 TR User N TR User 2 TR Alice OS Trust-aware syscall interface TR User 3 social_synch() TR: Trust Repository Network TR Alice
Usage Model Alice OSN Server TR User 1 TR User N TR User 2 TR Alice OS Trust-aware syscall interface TR User 3 social_synch() TR: Trust Repository Network TR Alice
Usage Model Alice OSN Server TR User 1 TR User N TR User 2 TR Alice OS Trust-aware syscall interface TR User 3 social_synch() TR: Trust Repository TR Alice Network
Modeling and Inferring Trust • Adaptation of Web of Trust (Richardson et al.’ 03) tij = amount of trust userihas for her friend user j tjk = amount of trust user j has for her friend user k tik = amount of trust user ishould have for user k, not directly connected, function of tij and tjk
T – Personal Trust Matrix NxN matrix, where N is the number of user ti = row vector of user i trust in other users tik = how much user i trusts her friend user k tkj = how much user k trusts her friend user j (tik.tkj) = amount user i trusts user j via k ∑k(tik.tkj) = how much user i trusts user j via any other node.
M – Merged Trust Matrix • Represents trust between any two users • Aggregation function concatenates trusts along paths M(0) = T M(n) = T . M (n-1) Repeat (2) until M(n) = M(n-1) M(i)is the value of M in iteration i. Matrix multiplication definition: Cij=∑k(Aik.Bkj)
How to Infer Trust for Objects? • Personal beliefs: • Asserted by a user to an object in her trust repository bi = user i’s personal belief (trust) on a certain object. b = collection of personal beliefs in a particular object How much a user believes in any sharable object in the network?
The Merged Beliefs Structure (b) • Computes for any user, her belief in any sharable object b(0) = b b(n) = T . b(n-1) or (bi)n =∑k(tik.(bk)n-1) Repeat (2) until b(n) = b(n-1) where: b(i)is the value of b in iteration i.
Applications and Benefits • Streamline security policies and decision-making process: • Restriction of system resources based on trust; • Software installation, URL visit. • Information-flow tracking with refined trust levels; • Anti-SPAM techniques.
Threats to the Model • OSN or OS compromised: • Attacker increases trust values for malicious objects: • System behave as if trustworthy framework was never installed; • High trust values do not mean higher privileges: • The higher the trust, the closer to default levels without social trust • Attacker decreases trust values for benign objects: • DoS attack.
Concluding Remarks • Challenges • Management and reliability of social data/trust: reliability, ethics issues, no standard API; • The socially-aware kernel: managing multiple repositories, performance, usability, Sybil attacks, identity management. • Confidentiality and Security: new vulnerabilities, privacy leaks, exporting trust information.