Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

First iteration of etc passthrough #850

Closed
wants to merge 8 commits into from

Commits on Aug 17, 2022

  1. [LibOS,PAL,Docs] Introduce etc passthrough

    The first `etc` passthrough file is the `/etc/hostname`. Gramine reads
    the option to global PAL state, and LibOS uses it to create a pseudo file
    with its content. Gramine sanitizes hostname. It requires that it is a valid
    domain. This is a difference from Linux, as Linux accepts any hostname value.
    That said, Linux doesn't assume that the root user tries to exploit it through
    hostname, and Gramine should.
    
    Gramine uses pseudofs for `etc` passthrough.
    
    Signed-off-by: Mariusz Zaborski <[email protected]>
    oshogbo committed Aug 17, 2022
    Configuration menu
    Copy the full SHA
    859723b View commit details
    Browse the repository at this point in the history

Commits on Aug 18, 2022

  1. squash! [LibOS,PAL,Docs] Introduce etc passthrough

    !TODO use this commit message:
    
    [LibOS,PAL,Docs] Introduce etc passthrough (currently only 'hostname')
    
    The first `etc` passthrough file is the `/etc/hostname`. Gramine reads
    the host file to global PAL state, and LibOS uses it to create a pseudo file
    with its content. Gramine sanitizes hostname. It requires that it is a valid
    domain. This is a difference from Linux, as Linux accepts any hostname value.
    That said, Linux doesn't assume that the root user tries to exploit it through
    hostname, and Gramine should.
    
    Gramine uses pseudofs for `etc` passthrough.
    
    Signed-off-by: Mariusz Zaborski <[email protected]>
    oshogbo committed Aug 18, 2022
    Configuration menu
    Copy the full SHA
    1cf2d0b View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2022

  1. fixup! [LibOS,PAL,Docs] Introduce etc passthrough

    Signed-off-by: Mariusz Zaborski <[email protected]>
    oshogbo committed Aug 21, 2022
    Configuration menu
    Copy the full SHA
    5d37058 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2022

  1. Configuration menu
    Copy the full SHA
    971d215 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9dfc095 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2022

  1. Configuration menu
    Copy the full SHA
    3c3c300 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2022

  1. Configuration menu
    Copy the full SHA
    c2491bf View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2022

  1. squash! [LibOS,PAL,Docs] Introduce etc passthrough

    !TODO use this commit message:
    
    [LibOS,PAL,Docs] Introduce `etc` emulation (currently only 'hostname')
    
    Gramine obtains information from a host, sanitizes it, and stores it in
    the global PAL state. Later, LibOS uses it to create a pseudo file
    (using pseudofs filesystem).
    
    The difference between Linux and Gramine is that Gramine expected
    the hostname to be a valid domain - as we assume the host is untrusted.
    In the case of Linux, it doesn't presume that the root user
    tries to exploit it through a malicious hostname.
    
    Signed-off-by: Mariusz Zaborski <[email protected]>
    oshogbo committed Aug 31, 2022
    Configuration menu
    Copy the full SHA
    0890f7e View commit details
    Browse the repository at this point in the history