Project Description

Look into things that make security/code reviews of rust code easier and play with cargo-crev.

Is there a lint or other automatic way like a deny compiler directive, to check a rust crate doesn't write any files? Can we come up with a list of these implicit capabilities in the standard library to make it easier to know which places to review? Maybe the crate cap-std can be inspiration? Is there a way to sandbox cargo build scripts?

cargo-crev allows coordination of reviews via a web of trust. How can it be extended with categories to differentiate a review that attests that the crate is e.g. safe to run with trusted input or fully sound? How can relation of these categories, like a proper sub-category, be made machine readable? See a draft of how machines could assist in collaborative review for more general ideas.

Goal for this Hackweek

cargo-crev doesn't support relating to GPG/OpenPGP yet: https://github.com/crev-dev/cargo-crev/issues/58 .

cargo-geiger which is also used by cargo-crev walks the source in a simplicst way ( https://github.com/rust-secure-code/cargo-geiger/blob/master/geiger/src/geigersynvisitor.rs ) so it will miss uses in macros. clippy has an easy to use lint for disallowed methods https://rust-lang.github.io/rust-clippy/master/index.html#disallowed_methods but I don't know if there are any uses it will miss.

Made it possible to walk repos and thus find reviews from people you did not yet trust: https://github.com/crev-dev/cargo-crev/pull/480

Resources

Looking for hackers with the skills:

rust security

This project is part of:

Hack Week 21

Activity

  • over 2 years ago: fbonazzi liked this project.
  • over 2 years ago: jzerebecki started this project.
  • over 2 years ago: jzerebecki added keyword "security" to this project.
  • over 2 years ago: jzerebecki added keyword "rust" to this project.
  • over 2 years ago: jzerebecki originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    Implement a CLI tool for Trento - trentoctl by nkopliku

    Description

    Implement a trentoctl CLI for...


    Hacking on sched_ext by flonnegren

    Description

    Sched_ext upstream has some i...


    Write an url shortener in Rust (And learn in the way) by szarate

    So I have 469.icu :), it's currently doing noth...


    Better diff'ing experience by MSirringhaus

    Description

    For diff-ing directories, I usu...


    Grapesss: a physical Shamir's Secret Sharing application [ESP32-C3 + Mobile] by ecandino

    <img src="https://i.imgur.com/ndfnzHo.png" alt=...


    OIDC Loginproxy by toe

    Description

    Reverse proxies can be a useful...


    Kanidm: A safe and modern IDM system by firstyear

    Kanidm is an IDM system written in Rust for mod...


    Linux Security and Practice by r1chard-lyu

    Description

    This project focuses on discove...


    Contributing to Linux Kernel security by pperego

    Description

    A couple of weeks ago, I foun...


    Migrate from Docker to Podman by tjyrinki_suse

    Description

    I'd like to continue my [form...