Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle...
Transcript of Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle...
![Page 1: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/1.jpg)
Race Condition Attack Countermeasures
Topics
Race Condition Page 1
![Page 2: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/2.jpg)
What is Race Condition
Race Condition Page 2
![Page 3: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/3.jpg)
A Vulnerable Program
Race Condition Page 3
![Page 4: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/4.jpg)
Another Vulnerable Program
Race Condition Page 4
![Page 5: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/5.jpg)
How to Attack
Race Condition Page 5
![Page 6: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/6.jpg)
Attacking Script
Race Condition Page 6
![Page 7: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/7.jpg)
Question
Here is another piece of code int flag; …… if (flag == 0) { write_to_file(f); } else { // print out eror }
Race Condition Page 7
![Page 8: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/8.jpg)
Countermeasures
Race Condition Page 8
![Page 9: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/9.jpg)
Make Operation Atomic
Race Condition Page 9
![Page 10: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/10.jpg)
Check‐Use‐Repeating Approach
Race Condition Page 10
![Page 11: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/11.jpg)
Race Condition Page 11
![Page 12: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/12.jpg)
Ubuntu's Sticky Link Protection
Turn on the protection
What the protection mean
The result
Race Condition Page 12
![Page 13: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/13.jpg)
Least Privilege Principle
Race Condition Page 13
![Page 14: Race Condition Attack Countermeasures€¦ · Race Condition Page 12 . Least Privilege Principle Race Condition Page 13 . Question We are thinking about using the least‐privilege](https://reader033.fdocuments.in/reader033/viewer/2022052017/602f863758f62f425607876f/html5/thumbnails/14.jpg)
Question
We are thinking about using the least‐privilege principle to defend against the buffer‐overflow attack. Namely, before executing the vulnerable function, we disable the root privilege; after the vulnerable function returns, we enable the privilege back.
Does this work? Why or why not?
Race Condition Page 14