36 lines
1.5 KiB
Plaintext
36 lines
1.5 KiB
Plaintext
# Copyright 2018 The Chromium OS Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
TIME="SHORT"
|
|
AUTHOR = "The Chromium OS Authors"
|
|
DOC = """
|
|
When mounting a filesystem, Linux provides no way to specify that symlink
|
|
traversal should be blocked on the given filesystem. For user-supplied
|
|
filesystems in particular (sshfs, external storage media, etc.), we wish to
|
|
block symlink traversal to prevent CrOS code (e.g. the Files app) from being
|
|
tricked into following unexpected symlinks. We have added functionality to the
|
|
chromiumos LSM to enable a "nosymfollow" option, which can be provided as part
|
|
of the mount command to ensure the kernel does not allow symlink traversal on
|
|
the filesystem. This test does not test the interaction of the chromiumos LSM
|
|
code with SELinux code. That is done in
|
|
security_NosymfollowMountOption.test_selinux_interaction
|
|
"""
|
|
NAME = "security_NosymfollowMountOption.baseline"
|
|
PURPOSE = """
|
|
Ensure the blocking of symlink traversal on a per-filesystem basis works as
|
|
expected.
|
|
"""
|
|
CRITERIA = """
|
|
This autotest ensures that symlink traversal is blocked on filesystems that
|
|
were mounted with the "nosymfollow" option, as well as that filesystems
|
|
mounted without that option can still traverse symlinks.
|
|
"""
|
|
ATTRIBUTES = "suite:bvt-perbuild"
|
|
TEST_CLASS = "security"
|
|
TEST_CATEGORY = "Functional"
|
|
TEST_TYPE = "client"
|
|
JOB_RETRIES = 2
|
|
|
|
job.run_test("security_NosymfollowMountOption", test_selinux_interaction=False)
|