---
# System prepended metadata

title: changes
tags: [IsoPhase]

---

---
tags: IsoPhase
title: changes
---

# Attacks:
- Data exfilration
- Memory corruption
- Stack corruption
- Memory re-writing 
- DoS attack
- Deserialization attacks
- Injection attacks
- Out-of-bound write

# Testing related works:



| Work | Source? | Implemented? | Language? | Category|
| -------- | -------- | -------- |-------- | ----|
| [CodeJail](https://www.comp.nus.edu.sg/~liangzk/papers/esorics12.pdf)     | No     |      |            | A|
| [privman](https://www.usenix.org/legacy/publications/library/proceedings/usenix03/tech/freenix03/full_papers/kilpatrick/kilpatrick.pdf) | [Yes](https://github.com/seancomeau/privman) | | | A|
| [secage](https://ipads.se.sjtu.edu.cn/_media/publications/secage-ccs15.pdf) | No| | | B|
| [ptrsplit](https://www.cse.psu.edu/~gxt29/papers/ptrsplit.pdf) | [Maybe](https://github.com/ZiwenWan/Program-Dependence-Graph-in-LLVM) | | | B|
| [program-mandering](https://www.cse.psu.edu/~trj1/papers/ccs19.pdf) | [Maybe](https://github.com/ZiwenWan/Program-Dependence-Graph-in-LLVM) | | | B|
| [ProgramCutter](https://ink.library.smu.edu.sg/cgi/viewcontent.cgi?article=6009&context=sis_research) | No | | | B|
| [Privtrans](https://www.usenix.org/legacy/publications/library/proceedings/sec04/tech/full_papers/brumley/brumley.pdf) | No |  | | B |
| [Cali](https://publications.cispa.saarland/3382/1/CALI_compiler_assisted_library_isolation.pdf) | [Yes](https://github.com/cali-library-isolation/Cali-library-isolation) | | | C|
| [Enclosure](https://hexhive.epfl.ch/publications/files/21ASPLOS.pdf) | [Yes](https://github.com/aghosn/enclosures) | | | D |
|[Wedge](https://www.usenix.org/legacy/event/nsdi08/tech/full_papers/bittau/bittau.pdf) | [No](http://nrg.cs.ucl.ac.uk/wedge/) | | | E |


# Rebutal links:
- https://docs.google.com/document/d/1FAKo6al9bihLeH50tEmiAoD-BiWcvd8iwghbrrHMUUk/edit
- https://docs.google.com/document/d/1PMpUToWo7QungvBOdRYLzPNBKDHIOEXoSPQ_hrg8ni8/edit

# Edits
- 94 and 95 are same references
- ![](https://i.imgur.com/lUvgApc.png)
- update the figure of design with correct sections

# Experiments to do:
- Perf evaluation of motivating example w.r.t # of IPC
- check for partitioning related works
    - Download the code and run it
    - inconsistencies 
    - check representation of fig 2 if it is natural and true
    - under-using their capability of the tool
    - # of IPCs -> fair comparison

# Tasks:
## Resources:


## Literature review
Papers:
- [Wedge](http://ntp-0.cs.ucl.ac.uk/staff/B.Karp/wedge-nsdi2008.pdf)
    - user defined partitioning
    - provides interface for analysis
- [Cali](https://publications.cispa.saarland/3382/1/CALI_compiler_assisted_library_isolation.pdf)
    - libraries are only separated
    - Each library is it's own process and hence isolated
- [Codejail](https://link.springer.com/content/pdf/10.1007/978-3-642-33167-1_49.pdf)
    - partitions automatically library functions
    - requires all library functions to be described by developer
- [privman](https://www.usenix.org/conference/2003-usenix-annual-technical-conference/privman-library-partitioning-applications)
    - source code partitioning
    - library that partitions code
- [PtrSplit](https://www.cse.psu.edu/~gxt29/papers/ptrsplit.pdf): 
    - partitions annotated pointers into separated processes
    - uses static analysis to separate annotated variables and related code
    - PtrSplit tracks data flows, it marshals complex objects for IPC communication between the compartments.
- [HAKC](https://www.ndss-symposium.org/wp-content/uploads/2022-26-paper.pdf)
    - Kernel level isolation
    - manually assign policies
- [Enclosure](https://hexhive.epfl.ch/publications/files/21ASPLOS.pdf)
    - Isolation technique
    - manual annotation required for isolating library functions
> can you revisit some of those existing code partitioning papers?
a few key points to see is
(1) whether a paper provides/suggests how to partition or it simply says how to partition is up to the user.
if they suggest, please summarize how it would
(2) if they do not say how to partition (and no examples given), how you would do based on the paper.
- [SeCage](https://www.researchgate.net/publication/286109587_Thwarting_Memory_Disclosure_with_Efficient_Hypervisor-enforced_Intra-domain_Isolation)

## More related works:
- 
change to => expected
![](https://i.imgur.com/lerlAus.png)

Remove numpy
![](https://i.imgur.com/u38dYld.png)

# Intro changes
<!--  
mail: freepart2022@gmail.com
pass: 123freepart456

-->