<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Evren</id>
	<title>Soma-notes - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Evren"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php/Special:Contributions/Evren"/>
	<updated>2026-06-02T22:50:37Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=SystemsSec_2018W_Lecture_13&amp;diff=21551</id>
		<title>SystemsSec 2018W Lecture 13</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=SystemsSec_2018W_Lecture_13&amp;diff=21551"/>
		<updated>2018-03-03T00:46:04Z</updated>

		<summary type="html">&lt;p&gt;Evren: Added Notes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Audio==&lt;br /&gt;
&lt;br /&gt;
[https://homeostasis.scs.carleton.ca/~soma/systemssec-2018w/lectures/comp4108-2018w-lec13-26Feb2018.m4a Lecture 13 Audio]&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&lt;br /&gt;
===Malware===&lt;br /&gt;
* Software judged to be &amp;quot;malicious&amp;quot;, ultimately a value judgment rather than technical/function judgment&lt;br /&gt;
* Depends on your perspective&lt;br /&gt;
* Can be almost anything so, it is often hard to judge whether a particular software contains malicious code&lt;br /&gt;
* Mostly a problem for client machines because it is typically installed by users.&lt;br /&gt;
&lt;br /&gt;
Vulnerability: A hole in defense that is exploitable&lt;br /&gt;
&lt;br /&gt;
Exploit: Code that gets around vulnerability&lt;br /&gt;
&lt;br /&gt;
Malware can use exploits to take advantage of vulnerabilities in the system but it is important to note that a vulnerability in software does not necessarily imply that it is malware.&lt;br /&gt;
&lt;br /&gt;
Developers are often reluctant to take vulnerabilities seriously.&lt;br /&gt;
&lt;br /&gt;
Exploits often used to increase access, i.e. privilege escalation.&lt;br /&gt;
&lt;br /&gt;
===Anti-Malware===&lt;br /&gt;
Software that detects and removes malware. Often uses same mechanisms used in &amp;quot;spyware&amp;quot; or &amp;quot;adware&amp;quot;. It &amp;quot;watches&amp;quot; users.&lt;br /&gt;
&lt;br /&gt;
It is a political process. Platform owners e.g. Microsoft, Apple, Google ultimately decide what gets to run on their platforms.&lt;br /&gt;
&lt;br /&gt;
The problem of anti-malware is really an [https://en.wikipedia.org/wiki/Undecidable_problem undecidable] problem. Anti-malware stops the wide spreading of malware which only matters on a platform that you can install arbitrary code.&lt;br /&gt;
&lt;br /&gt;
So how is it solved in practice? There are a couple of basic strategies.&lt;br /&gt;
* Whitelist - a list of things that are allowed e.g. an invite list for a party&lt;br /&gt;
* Blacklist - a list of anybody but the people on the whitelist e.g. casinos keep a list of people who are not allowed inside the casino&lt;br /&gt;
&lt;br /&gt;
Typical anti-malware for Windows use blacklists(i.e. &amp;quot;malicious&amp;quot; code patterns). The problem with blacklists is that you have to give a list of all the badness in the world. It is a hopeless proposition. They can&#039;t use whitelists because they are not in a position to dictate what is allowed.&lt;br /&gt;
&lt;br /&gt;
Whitelist is much simpler because you just need to list what you think is good.&lt;br /&gt;
&lt;br /&gt;
Security solutions based on whitelists:&lt;br /&gt;
* Signed code&lt;br /&gt;
* App stores&lt;br /&gt;
&lt;br /&gt;
Modern app stores e.g. Google Play, Apple App Store use whitelists, i.e. code that is allowed on your system. This has limits too. How do you have a whitelist and have the number the number of applications scale? For each app submitted to the store, they have to go through a reviewing process that essentially does what anti-malware would do.&lt;br /&gt;
&lt;br /&gt;
Why is Linux less subject to malware issues than Windows? Fewer targets. Also, people that use Linux typically install software from the distribution vendor which has been vetted.&lt;br /&gt;
&lt;br /&gt;
If you are running Windows, what anti-malware should you run? Windows Defender, the anti-malware from Microsoft enabled by default is decent. You have to trust Microsoft anyways and they have incentives to make sure their anti-malware solution does not compromise the performance of their platform and that the big threats are taken care of.&lt;br /&gt;
&lt;br /&gt;
===iOS===&lt;br /&gt;
* Apple takes aggressive steps to lock down system, they don&#039;t allow arbitrary code to be installed&lt;br /&gt;
* Provides system level virtualization&lt;br /&gt;
* Applications runs in containers each with their own copy of the file system.&lt;br /&gt;
&lt;br /&gt;
You can get around the whitelist on iOS but you have to be a developer and decide which devices you want to run your code on.&lt;br /&gt;
&lt;br /&gt;
This is very different from Android, where you instead get a very elaborate permissions model (i.e. capabilities).&lt;br /&gt;
&lt;br /&gt;
====Jailbreak====&lt;br /&gt;
* Remove software restrictions imposed by manufacturer (e.g. Apple)&lt;br /&gt;
* Eliminates system level virtualization (i.e. containers) so that processes can &amp;quot;see&amp;quot; each other&lt;br /&gt;
* Compromises the security of an iPhone&lt;br /&gt;
* Technical term that refers to BSD jails&lt;/div&gt;</summary>
		<author><name>Evren</name></author>
	</entry>
</feed>