hacksaw

Hardware-centric Linux kernel debloater

https://github.com/microsoft/hacksaw

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 4 committers (25.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.5%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

Hardware-centric Linux kernel debloater

Basic Info
  • Host: GitHub
  • Owner: microsoft
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 306 KB
Statistics
  • Stars: 12
  • Watchers: 6
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created over 2 years ago · Last pushed over 2 years ago
Metadata Files
Readme License Code of conduct Citation Security Support

README.md

Hacksaw

Hacksaw is a prototype toolkit to debloat Linux kernel based on hardware device inventory and dependency analysis. In particular, it customizes a given system disk image for a target hardware platform such as a cloud environment (e.g., an Azure VM) or a bare-metal machine. It was presented at ACM CCS 2023.

Usage

Hacksaw consists of numerous scripts and binaries managing its three main procedures: hardware database building, dependency analysis, and system image patching. We prepare Docker/Container environments to properly use them and a test script to run them in a proper order. For example, you can debloat a Ubuntu cloud image for a default QEMU-KVM environment like below:

sh $ pushd test $ wget https://cloud-images.ubuntu.com/mantic/current/mantic-server-cloudimg-amd64.img $ ./run.sh -b 1 -p hwprof/qemu-kvm.txt -i mantic-server-cloudimg-amd64.img $ popd

The initial execution of run.sh could take several hours depending on your machine specification and require a lot of storage because it will compile Linux kernel 2-3 times. However, the hardware database and dependency analysis results can be reused later depending on (major) kernel version, kernel build configuration, and device inventory.

Further instruction will be added later.

CCS 2023 Artifact Evaluation

A version of Hacksaw for the CCS 2023 artifact evaluation can be found at https://github.com/microsoft/hacksaw/tree/ccs23ae.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Owner

  • Name: Microsoft
  • Login: microsoft
  • Kind: organization
  • Email: opensource@microsoft.com
  • Location: Redmond, WA

Open source projects and samples from Microsoft

Citation (CITATION.cff)

authors:
    - family-names: Hu
      given-names:  Zhenghao
      affiliation:  "New York University"
    - family-names: Lee
      given-names:  Sangho 
      affiliation:  "Microsoft Research"
    - family-names: Peinado 
      given-names:  Marcus
      affiliation:  "Microsoft Research"
cff-version: 1.2.0
message: "If you use this software, please cite the following article."
preferred-citation:
  type: conference-paper
  authors:
    - family-names: Hu
      given-names:  Zhenghao
      affiliation:  "New York University"
    - family-names: Lee
      given-names:  Sangho 
      affiliation:  "Microsoft Research"
    - family-names: Peinado 
      given-names:  Marcus
      affiliation:  "Microsoft Research"
  title: "Hacksaw: Hardware-Centric Kernel Debloating via Device Inventory and Dependency Analysis"
  collection-title: "Proceedings of the 30th ACM Conference on Computer and Communications Security (CCS 2023)"
  year: 2023
  month: 11

GitHub Events

Total
  • Watch event: 2
Last Year
  • Watch event: 2

Committers

Last synced: 12 months ago

All Time
  • Total Commits: 147
  • Total Committers: 4
  • Avg Commits per committer: 36.75
  • Development Distribution Score (DDS): 0.136
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Sangho Lee s****s@g****m 127
hu h****h@n****u 14
Microsoft Open Source m****e 5
microsoft-github-operations[bot] 5****] 1
Committer Domains (Top 20 + Academic)
nyu.edu: 1

Issues and Pull Requests

Last synced: 12 months ago

All Time
  • Total issues: 2
  • Total pull requests: 14
  • Average time to close issues: 6 days
  • Average time to close pull requests: about 1 hour
  • Total issue authors: 2
  • Total pull request authors: 1
  • Average comments per issue: 2.0
  • Average comments per pull request: 0.14
  • Merged pull requests: 13
  • Bot issues: 1
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • microsoft-github-policy-service[bot] (1)
  • sangho2 (1)
Pull Request Authors
  • sangho2 (14)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

.github/workflows/codeql.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • github/codeql-action/analyze v2 composite
  • github/codeql-action/init v2 composite
docker/Dockerfile docker
  • python 3.10.12-slim build
docker/rtti/Dockerfile docker
  • hacksaw 0.1 build