330 likes | 1.13k Views
Database Security/Privacy and Social Networking Alex Mack Table of Contents Data Security How to secure a database API Privacy protection for social networking APIs De-anonymizing social networks Fly-by Night: Mitigating the privacy risks of social networking
E N D
Table of Contents • Data Security • How to secure a database • API • Privacy protection for social networking APIs • De-anonymizing social networks • Fly-by Night: Mitigating the privacy risks of social networking • Persona: an online social network with user-defined privacy • Conclusion • References
Data Security • The practice of keeping data protected from corruption and unauthorized access. • Options for locking down your data from software solutions to hardware mechanisms: • Encryption • Strong User Authentication • Backup Solutions
Encryption • A security feature for thriving networks and active home users alike • It uses mathematical schemes and algorithms to scramble data into unreadable text • Full-disk encryption enables you to encrypt every piece of data on a disk or hard disk drive. It is used in conjunction with software components • Full-disk encryption referred to as end-based or end-point full disk encryption
Strong User Authentication • A single sign-on process is a form authentication that allows you to log into applications, files, folders and even an entire computer system • Some systems will cancel a session if your machine has been idle for a certain amount of time, requiring that you prove authentication once again to re-enter • The single sign-on scheme is also implemented into strong user authentication systems • It requires individuals to login using multiple factors of authentication which, includes a password, a one-time password, a smart card or even a fingerprint
Backup Solutions • A reliable backup solution will allow you to restore your data instead of starting completely from scratch • Your data could be compromised by viruses, or by someone entering your computer to steal data by sliding through a security hole in the operating system
How to secure a database • Enable Security Controls: Make sure to check the security controls and enable all of the security features before allowing anyone access • Check the Patch Level: Perform a full assessment of the database to fix any existing vulnerabilities in the system • Exclude Copying of the Database: The chief IT administrator of the database, has no control over the data once the database has been copied, so database copying should be excluded as it poses an internal threat to security
How to secure a database(cont.) • Restrict Access: Designate who is allowed administrator privileges, and make sure the backups are stored in an encrypted format and restrict access to XML files • Existing Databases: Use database discovery tools to monitor all of the existing databases to ensure that information is encrypted, there are no vulnerabilities, and that there are no duplicates
How to secure a database(cont.) • Shared Data: IT administrators can subset a database which, provides a separate type of restricted access with fake information substituted for the sensitive information. • This allows developers and new employees to use a database for testing and training without exposing confidential or sensitive information.
API(Application Programming Interface) • Interface implemented by a software program to enable interaction with other software • Applications, libraries, and operating systems determine the vocabulary and calling conventions the programmer should employ to use API services • Routines, data structures, object classes and protocols are used to communicate between the consumer and implementer of the API
Privacy protection for social networking APIs • Social Network Platforms • Privacy in Social Networks • Privacy-by-Proxy • Analysis • Related Work
Social Network Platforms • Facebook is a popular social networking site with over thirty million users • Facebook applications have a homepage and a profile box, whose content are proxied through Facebook Markup Language (FBML) • A user interacts with an application’s homepage by passing an ID and session key to a third party through the Facebook server.
Social Network Platforms(cont.) • Applications on the third party’s server requests detailed information about the user including friends, and members of the user’s networks. • They send output back to the Facebook server for display. The server transforms FBML into JavaScript. • OpenSocial provides a set of APIs for its partner sites to implement.
Social Network Platforms(cont.) • APIs give third parties access to social graph and personal user data, and containers can give gadgets access to canvas pages and profiles. • Gadgets are XML files with JavaScript and HTML that can be hosted anywhere. • OpenSocial has the same privacy risks as Facebook, since gadgets can request and store user data on external servers.
Privacy in Social Networks • OpenSocial sites let third parties access the information of users who directly install an application. • Application developers can see user data, even if they are not friends of users at the web interface level. • Host social networking sites have a responsibility to protect user data by displaying a Terms of Service warning screen, every time a user adds an application.
Privacy in Social Networks(cont.) • Third parties have a Terms of Service, but the path of the information can not be monitored by host sites once it has been released from the database. • Social networking sites can not always not trust third parties, to follow their Terms of Service to protect user privacy.
Privacy-by-Proxy • Privacy-by-proxy does not provide any personal data to the third party developer. • Applications display information to users using FBML. FBML include tags that abstract user data and handle user input without providing private data to the application. • The proxy server checks application homepages to decide if data should be displayed. If the user viewing the page has appropriate privileges to see the identical data, data is retrieved and displayed.
Privacy-by-Proxy(cont.) • Conditional tags let applications display output that depends on private data unavailable to the application. • Images are permissible only if the social network server caches the images so no leaking requests are sent to external servers. • Application users are identified to the third party with an application-specific ID number. • User Ids are encrypted using a symmetric encryption function keyed with the application ID and a secret kept by the server.
Privacy-by-Proxy(cont.) • If the social networking site carries friend privileges to the second degree, those user accounts can be included in the friend list. • A user can select friends from a list, when the proprietary form input tag transforms into a functioning HTML form input tag. • When the form is submitted, the friend’s encrypted ID is sent to the third party. • Some information is meant to be completely public for the purpose of user identification.
Privacy-by-Proxy(cont.) • An artificial restriction is placed on personally identifying public information to prevent de-anonymization. • This is to prevent an attack in which the application developer installs the application and use it, to learn the mapping between application-encrypted and real user Ids. • Public data attacks are combated by limiting an application’s ability to display public information to only those IDs in the current user’s contact list.
Analysis • In a social graph attack, the attacker locates herself/himself by being the first user to install an application. • Attackers can compare their friends’ friend lists to their own friends to look for patterns. • These attacks are limited, however, since the chain of de-anonymization would end when they run out of outside information to compare the graph structures to. • Attacks on social graphs are either active or passive.
Analysis(cont.) • The active attacker creates a unique subgraph to locate herself in the graph and friends the target nodes. • A passive attacker colludes with a coalition of the targets’ friends that defines a unique subgraph.
Related Work • Work has been done on the problem of preserving statistical characteristics of data sets without revealing the unique identity of database members. • Selective private function evaluation is a specific instance of secure function evaluation, in which a client wishes to compute some function over a server’s data set, but neither party should learn more than the response • This might be useful for large-scale studies of properties of a social network, but does not provide the information needed for applications.
De-anonymizing social networks • Operators of online social networks are increasingly sharing potentially sensitive information about users and their relationships with advertisers, application developers, and data-mining researchers. • Privacy is typically protected by anonymization, which is removing names, addresses, etc. A new de-anonymization algorithm is used to analyzing privacy and anonymity in social networks.
De-anonymizing social networks(cont.) • The algorithm is based purely on the network topology, does not require creation of a large number of dummy "sybil" nodes, is robust to noise and all existing defenses, and works even when the overlap between the target network and the adversary's auxiliary information is small.
Fly-by Night: Mitigating the privacy risks of social networking(cont.) • Privacy risks are mitigating by presenting a new architecture for protecting information published through the social networking sites, through encryption. • The architecture makes a trade-off between security and usability in the interests of affecting users' workflow and maintaining universal accessibility. • A prototype Facebook application that implements the architecture, addresses some of the limitations of the Facebook platform through proxy cryptography.
Persona: an online social network with user-defined privacy • Persona hides user data with attribute-based encryption (ABE), allowing users to apply policies over who may view their data. • Persona provides the functionality of existing online social networks with additional privacy benefits. • Persona has replicates Facebook applications and provided acceptable performance when browsing privacy-enhanced web pages, even on mobile devices.
Conclusion • In conclusion, databases and social networks are protected by several methods such as encryption, user authentication, backup solutions, etc. Though there is room for error during the process of security, programmers are working efficiently with network servers to make sure that a user’s privacy is a not at risk of being compromised.
References • http://www.spamlaws.com/data-security.html • http://www.spamlaws.com/database-security.html • www.cs.virginia.edu/felt/privacybyproxy.pdf • http://www.computer.org/portal/web/csdl/doi/10.1109/SP.2009.22 • http://portal.acm.org/citation.cfm?id=1456405 • http://doi.acm.org/10.1145/1594977.1592585 • http://en.wikipedia.org/wiki/API