New pages
- 15:26, 27 March 2025 EvoSec 2025W Lecture 21 (hist | edit) [3,631 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/burgess-nspw2018.pdf Burgess, "After the BlockCloud Apocalypse." (NSPW 2018)] ==Discussion Questions== * Which predictions were the most plausible? implausible? * What relevant advancements/developments (technical or otherwise) were missed in the timeline that could change the envisioned trajectory? * What can we do to avoid a blockcloud apocalypse? ==Notes==")
- 15:30, 25 March 2025 EvoSec 2025W Lecture 20 (hist | edit) [4,572 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/somayaji-nspw97.pdf Somayaji, "Principles of a Computer Immune System." (NSPW 1997)] * [https://homeostasis.scs.carleton.ca/~soma/pubs/nspw-2007-biopanel.pdf Somayaji, "Panel: The Future of Biologically-Inspired Security: Is There Anything Left to Learn?" (NSPW 2008)] ==Discussion Questions== * How does evolution relate to biologically-inspired security? * How does trust relate to biologically-inspired sec...")
- 15:35, 20 March 2025 EvoSec 2025W Lecture 19 (hist | edit) [2,905 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/findlay-ccsw2020.pdf Findlay, "bpfbox: Simple Precise Process Confinement with eBPF." (CCSW 2020)] * [https://homeostasis.scs.carleton.ca/~soma/pubs/findlay-bpfcontain2021.pdf Findlay, "Bpfcontain: Fixing the soft underbelly of container security." (arXiv 2021)] ==Discussion Questions== * Is the complexity of Linux security mechanisms due more to functional requirements or evolutionary processes? * What is...")
- 18:36, 18 March 2025 EvoSec 2025W Lecture 18 (hist | edit) [2,615 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/dabbour-nspw2020.pdf Dabbour, "Towards In-Band Non-Cryptographic Authentication." (NSPW 2020)] * [https://homeostasis.scs.carleton.ca/~soma/pubs/bfoster-gecco-2010.pdf Foster, "Object-Level Recombination of Commodity Applications." (GECCO 2010)] ==Notes== <pre> Lecture 18 ---------- G1 - can be more complex to detect imposters in practice because to do so because 1) you won't consider it a possibility, and...")
- 15:17, 15 March 2025 COMP3000 Operating Systems W25: Tutorial 9 (hist | edit) [8,969 bytes] Lianyingzhao (talk | contribs) (Created page with "By the end of this tutorial, you will have a basic familiarity with the Docker platform and be able to run, operate, and customize containers, and create simple containers of your own. You will see how kernel building blocks like namespaces make containers possible. ==General Instructions (same for all tutorials)== <div class="mw-collapsible mw-collapsed"> Click on Expand to view. <div class="mw-collapsible-content"> Tutorials are graded based on participation and effo...")
- 14:25, 13 March 2025 EvoSec 2025W Lecture 17 (hist | edit) [3,894 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/amatrawy-acns-05.pdf Matrawy, "Mitigating Network Denial-of-Service Through Diversity-Based Traffic Management." (ACNS 2005)] * [https://homeostasis.scs.carleton.ca/~soma/pubs/inoue-lisa2007.pdf Inoue, "NetADHICT: A Tool for Understanding Network Traffic." (LISA 2007)] ==Discussion Questions== ==Notes==")
- 15:31, 11 March 2025 EvoSec 2025W Lecture 16 (hist | edit) [4,164 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/yli-acsac-05.pdf Li, "Securing Email Archives through User Modeling." (ACSAC 2005)] * [https://homeostasis.scs.carleton.ca/~soma/pubs/li-catx2013.pdf Li, "Fine-grained Access Control using Email Social Networks." (CATX 2013)] ==Discussion Questions== Feel free to only address a subset or none of the following questions in your discussion! * What does it take to define "normal"? In what contexts is it easi...")
- 06:01, 7 March 2025 COMP3000 Operating Systems W25: Tutorial 8 (hist | edit) [7,159 bytes] Lianyingzhao (talk | contribs) (Created page with "In this tutorial, you’ll be learning about how virtual addresses are mapped to physical addresses (the address translation) and continue to use kernel modules to extract information that only the kernel has access to. In particular, the kernel module performs a 5-level page table walk to find out the physical address corresponding to a userspace virtual address. In addition to what was discussed in the class, You can also read [https://en.wikipedia.org/wiki/Intel_5-lev...")
- 16:23, 6 March 2025 EvoSec 2025W Lecture 15 (hist | edit) [3,166 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/obada-usec2017.pdf Obada-Obieh, "“Don’t Break My Heart!”: User Security Strategies for Online Dating." (USEC 2017)] * [https://homeostasis.scs.carleton.ca/~soma/pubs/obada-nspw2017.pdf Obada-Obieh, "Can I believe you?: Establishing Trust in Computer Mediated Introductions." (NSPW 2017)] ==Discussion Questions== * How different is dating from other introduction problems today? * How central is reputat...")
- 16:32, 4 March 2025 EvoSec 2025W Lecture 14 (hist | edit) [2,662 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/somayaji-nspw2013.pdf Somayaji, "Towards Narrative Authentication: or, against boring authentication." (NSPW 2013)] ==Discussion Questions== * How quickly can you verify that another person knows the same story that you do? Can someone who doesn't know the story fool you easily? * Are there stories that are known to friends and family but that are not written down anywhere? * Could any social media or fina...")
- 03:12, 3 March 2025 COMP3000 Operating Systems W25: Tutorial 7 (hist | edit) [9,122 bytes] Lianyingzhao (talk | contribs) (Created page with "In this tutorial you'll be learning about Linux kernel modules, part of which are device drivers. You’ll create several kernel modules and see how to interact with device drivers using special files (e.g., character device) and their file operations as an interface. You can also have a better understanding of special files by doing so. ==General Instructions (same for all tutorials)== <div class="mw-collapsible mw-collapsed"> Click on Expand to view. <div class="mw-...")
- 02:34, 3 March 2025 COMP3000 Operating Systems W25: Tutorial 7 Not Using SCS OpenStack (hist | edit) [1,877 bytes] Lianyingzhao (talk | contribs) (Created page with "If you are not using our course VM for some reason, you might encounter problems and you can refer to the instructions below. Although they are by no means comprehensive to solve the problems, they can in many cases and serve as pointers about where to look. ==Modules fail to build== If you see errors (not just warnings) after running <tt>make</tt> and no <tt>.ko</tt> file is produced, you may have installed a version of Ubuntu that is too minimal. But you can fix it by...")
- 15:28, 27 February 2025 EvoSec 2025W Lecture 13 (hist | edit) [2,666 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/somayaji-cset2009.pdf Somayaji, "Evaluating Security Products with Clinical Trials." (CSET 2009)] ==Discussion Questions== * What is the relationship between trust in medical interventions and clinical trials versus lab experiments? * What is the relationship between trust in security interventions and lab experiments currently? * For a security trial to be valid, would the product being tested be allowed...")
- 15:29, 25 February 2025 EvoSec 2025W Lecture 12 (hist | edit) [2,132 bytes] Soma (talk | contribs) (Created page with "==Readings== * [https://homeostasis.scs.carleton.ca/~soma/pubs/oda-asia-08.pdf Oda, "Content Provider Conflict on the Modern Web." (ASIA 2008)] ==Discussion Questions== While these are questions to consider, please focus your discussion on what your group finds interesting related to the paper. * How do modern security technologies like [https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS CORS], [https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP CSP], and [htt...")
- 03:25, 21 February 2025 COMP3000 Operating Systems W25: Tutorial 6 (hist | edit) [5,795 bytes] Lianyingzhao (talk | contribs) (Created page with "In this tutorial you will be learning about two implementations of the [https://en.wikipedia.org/wiki/Producer%E2%80%93consumer_problem producer-consumer problem], a classic example of a concurrency problem. The [http://pages.cs.wisc.edu/~remzi/OSTEP/ class textbook] covers concurrency in great detail in Chapters 25-34, and the producer-consumer problem is covered in [http://pages.cs.wisc.edu/~remzi/OSTEP/threads-cv.pdf Chapter 30 (Condition Variables)] and [http://pages...")
- 17:58, 6 February 2025 EvoSec 2025W Lecture 11 (hist | edit) [3,177 bytes] Soma (talk | contribs) (Created page with "<pre> Lecture 9 --------- What is entropy? (G1) - least diverse -> least entropy So maybe increasing entropy (disorder) would increase security? - multiple kinds of software, hosts, etc But that seems chaotic and thus insecure? Entropy on a specific graph - hosts can have some number of vulns - edges represent the vulns a host has - cannot remove all edges by assumption - hosts always have some - increase entropy -> more disorder in edges Adding new kinds of s...")
- 16:36, 4 February 2025 EvoSec 2025W Lecture 10 (hist | edit) [1,922 bytes] Soma (talk | contribs) (Created page with "==Discussion Questions== * What is the basic model behind both of these systems? Hint: focus on the figures! * What aspect(s) of security are these models capturing? What are they missing? Today you'll be teaching the class, i.e., I'll be asking questions as if I don't understand things.")
- 01:32, 31 January 2025 EvoSec 2025W Lecture 9 (hist | edit) [833 bytes] Soma (talk | contribs) (Created page with "==Discussion Questions== * What is the basic model behind both of these systems? Hint: focus on the figures! * What aspect(s) of security are these models capturing? What are they missing?")
- 16:26, 30 January 2025 EvoSec 2025W Lecture 8 (hist | edit) [4,061 bytes] Soma (talk | contribs) (Created page with "==Discussion Questions== * How does Tierra work? Specifically, how does program control flow work, how do programs reproduce, and how do they die? * To what extent is Tierra a simple model of the computer security problem?")
- 07:11, 30 January 2025 COMP3000 Operating Systems W25: Tutorial 5 (hist | edit) [9,417 bytes] Lianyingzhao (talk | contribs) (Created page with "In this tutorial you will be learning about files and filesystems by experimenting with and extending [https://people.scs.carleton.ca/~lianyingzhao/comp3000/w25/tut5/3000test.c 3000test.c], and creating and manipulating local filesystems. '''WARNING:''' Several of the commands here can lead to system corruption and data loss if not properly used. You have been warned. Please use a VM and make backups, when necessary. ==General Instructions (same for all tutorials)== <d...")
- 22:15, 28 January 2025 EvoSec 2025W Lecture 7 (hist | edit) [2,896 bytes] Soma (talk | contribs) (Created page with "<pre> Lecture 7 --------- SYMBIOSIS Biology questions - what seemed particularly confusing? - swallowing but not digesting? - eukaryotic vs prokaryotic cells - endosymbiosis - microtubules, basal body - how did prokaryotic cells cooperate? cells are encapsulated by membranes - polar/non-polar structures **--------- ^^^ a fat molecule in a membrane (phospolipid) the ** is the polar head, the ---- is the nonpolar body polar = has a bit of a charge nonpol...")
- 05:22, 24 January 2025 COMP3000 Operating Systems W25: Tutorial 4 (hist | edit) [7,033 bytes] Lianyingzhao (talk | contribs) (Created page with "In this tutorial, you will learn about how user accounts are managed and how the login process works through exploring [https://people.scs.carleton.ca/~lianyingzhao/comp3000/w25/tut4/3000userlogin.c 3000userlogin.c]. You’ll also have a better understanding of the permission system and the shell/terminal environment. ==General Instructions (same for all tutorials)== <div class="mw-collapsible mw-collapsed"> Click on Expand to view. <div class="mw-collapsible-content">...")
- 00:50, 24 January 2025 EvoSec 2025W Lecture 6 (hist | edit) [2,626 bytes] Soma (talk | contribs) (Created page with "<pre> Lecture 6 --------- - GFS & Chubby - trust & security - projects, set a schedule What is the problem they are solving? (Why were these built?) - for indexing the web! - i.e., download a copy of the web and process it - many web crawlers grabbing pages, images, etc and needing somewhere to store them Only way to make this work is to have LOTS of computers storing LOTS of data in parallel - how to coordinate? So in GFS, what is a file? - not a regular UNI...")
- 16:35, 21 January 2025 EvoSec 2025W Lecture 5 (hist | edit) [4,728 bytes] Soma (talk | contribs) (Created page with "==Discussion Questions== * What parts of the papers were not clear to you? * What was the trust model of BOINC & OceanStore? * Do we currently use systems that are like BOINC & OceanStore? Why or why not?")
- 06:36, 18 January 2025 COMP3000 Operating Systems W25: Tutorial 3 (hist | edit) [7,574 bytes] Lianyingzhao (talk | contribs) (Created page with "In this tutorial, you will be experimenting with and extending [https://people.scs.carleton.ca/~lianyingzhao/comp3000/w25/tut3/3000shell.c 3000shell.c], a proof-of-concept program to show you how a Linux shell works. Also, 3000shell's source code will be used as the basis for further modifications in upcoming assignments. ==General Instructions (same for all tutorials)== <div class="mw-collapsible mw-collapsed"> Click on Expand to view. <div class="mw-collapsible-conte...")
- 16:34, 16 January 2025 EvoSec 2025W Lecture 4 (hist | edit) [3,742 bytes] Soma (talk | contribs) (Created page with "==Discussion Questions== * What did you not understand in the readings? Specifically, what biological terms/concepts would you like to learn more about? * How applicable are these readings to computational systems, in your opinion? ==Notes==")
- 16:48, 15 January 2025 EvoSec 2025W Lecture 3 (hist | edit) [1,935 bytes] Soma (talk | contribs) (Created page with "<pre> Lecture 3 --------- Perspectives on Trust G1 - waking up - do you trust that nothing bad will happen, or you just get up because you have to? - we can decouple, but can machines decouple trust from action? - continuous vs discrete trust - "levels of trust" - how does that affect actions G2 - game theory - prisoner's dilemma, agents are adversaries? where is the sociality of trust - not a full view - trust as black and white vs probability G3 -...")
- 22:12, 9 January 2025 EvoSec 2025W Lecture 2 (hist | edit) [6,498 bytes] Soma (talk | contribs) (Created page with "<pre> Lecture 2 --------- cooperation & trust in the context of evolution Darwinian evolution - population of individuals - reproduction w/ variation + selection life is a game of survival - if you don't survive you're dead your life is a resource for others - can help them live, achieve their goals so Darwinian evolution leads to "fight for survival" thinking - kinda sounds like the Internet today right? - only the secure survive The metaphors of computer s...")
- 22:02, 9 January 2025 EvoSec 2025W Lecture 1 (hist | edit) [3,585 bytes] Soma (talk | contribs) (Created page with "<pre> Lecture 1 --------- Welcome to Evolutionary Security! - lectures are recorded, but that is just for private use - you'll have access, but they won't be public * Grading, expectations * What this course is about * My history - 1984: first computers (Atari 400, Apple //c, Apple IIgs) - 1989: AI - Medicine + computers? - 1990-1994: MIT - started as biology major, ended up a math major - took premed classes + CS classes (CS theory) - computational...")
- 23:23, 8 January 2025 COMP3000 Operating Systems W25: Tutorial 2 (hist | edit) [10,108 bytes] Lianyingzhao (talk | contribs) (Created page with "In this tutorial, you will revisit the lifecyle of a program discussed in class, from source code, to an executable (binary image), and further to loading it into the address space. Then from a different angle, you can see when in execution, how the program (now a process) makes different types of calls to function, and how its memory is laid out. Meanwhile, we can also see how a programmer can make use of existing code (libraries). ==General Instructions (same for all...")
- 07:09, 4 January 2025 COMP3000 Operating Systems W25: Tutorial 1 (hist | edit) [15,530 bytes] Lianyingzhao (talk | contribs) (Created page with "'''Note: this page's purpose is to host publicly available material linked from Brightspace. Please use Brightspace as the primary source of information to stay updated.''' This first tutorial will prepare you for subsequent tutorials. You will familiarize yourself with the OS environment and, in particular, learn the basics of command-line interaction in Linux (Ubuntu). ==General Instructions (same for all tutorials)== <div class="mw-collapsible mw-collapsed"> Click...")
- 03:17, 4 January 2025 COMP3000 Operating Systems W25: Downloading files from your Openstack VM (hist | edit) [2,814 bytes] Lianyingzhao (talk | contribs) (Created page with "'''Note: this page's purpose is to host publicly available material linked from Brightspace. Please use Brightspace as the primary source of information to stay updated.''' You will need to transfer files between the Openstack VM and your own PC from time to time, for example, when submitting your tutorial/assignment work. As your laptop/desktop does not have a fixed IP the VM can connect to, it is always better to initiate the connection <b>from your PC to the VM</b>,...")
- 04:17, 3 January 2025 COMP3000 Operating Systems W25: Connecting to SCS Openstack (hist | edit) [2,285 bytes] Lianyingzhao (talk | contribs) (Created page with "'''Note: this page's purpose is to host publicly available material linked from Brightspace. Please use Brightspace as the primary source of information to stay updated.''' If you want to access the openstack environment during a video call (or when watching a movie online), please do not leave the Carleton VPN connected. You may also want to avoid your personal online activities going through the VPN or just simply need more convenience. Here are some alternative optio...")
- 19:03, 1 January 2025 EvoSec 2025W: Course Outline (hist | edit) [11,168 bytes] Soma (talk | contribs) (Created page with "==Course Information== *'''Course Number:''' COMP 5900H/4900H *'''Term:''' Winter 2025 *'''Title:''' Evolutionary Security *'''Institution:''' Carleton University, School of Computer Science *'''Instructor:''' [https://people.scs.carleton.ca/~soma Anil Somayaji] (anil.somayaji at carleton.ca): office hours by appointment *'''Lectures:''' Tues. and Thurs. 11:35-12:55 via online videoconferencing (see [https://brightspace.carleton.ca Brightspace] for the link), January 7-...")
- 18:48, 1 January 2025 Evolutionary Security: Winter 2025 (hist | edit) [7,609 bytes] Soma (talk | contribs) (Created page with "==Course Outline== Course outline for Evolutionary Security.")
- 00:09, 31 December 2024 COMP3000 Operating Systems W25: Openstack Instructions (hist | edit) [1,663 bytes] Lianyingzhao (talk | contribs) (Created page with "You can create a VM instance on the [https://carleton.ca/scs/tech-support/scs-open-stack/ SCS openstack] cluster for the tutorials, by doing the following: (obvious steps are skipped) # [https://carleton.ca/its/help-centre/remote-access/ Connect to Carleton's VPN]. # Log in to [https://openstack-stein.scs.carleton.ca/ https://openstack-stein.scs.carleton.ca/] # Most of you would need to refresh your SCS account to have the right entitlements for our course (or you may...")