[PATCH 00/15] Authenticated variable tests (LP: #1384134)
Ivan Hu
ivan.hu at canonical.com
Wed Oct 22 09:35:45 UTC 2014
These patches add the tests for the authenticated variable setting via
setvariable UEFI runtime service. These tests are base on the
EFI_VARIABLE_AUTHENTICATION_2 descriptor which setvariable with
attribute EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS is set.
These authenticated variables(include digest, signed content etc.) are
generated followed by the UEFI spec. 2.4, section 7.2.1.
* Create authenticated variable test
This test checks the setvariable with the new authenticated variable which
was created with TIME_BASED_AUTHENTICATED.
* Authenticated variable test with the same authenticated variable
With one existing variable, but set the same authenticated
variable, firmware should check the authenticated variable and
return EFI_SECURITY_VIOLATION.
* Authenticated variable test with another valid authenticated variable
With one existing variable, but set authenticated variable, which created
by another valid key, firmware should check the authenticated variable
and return return EFI_SECURITY_VIOLATION.
* Append authenticated variable test
This test add the normal append operation and then check the total data size
and the data.
* Update authenticated variable test
This test update the new authenticated variable created by the same key but
a new timestame and data.
* Authenticated variable test with old authenticated variable
Set the old data and timestamp authenticated variable, firmware should
check and return EFI_SECURITY_VIOLATION.
* Delete authenticated variable test
Test for deleting the test authenticated variable.
* Authenticated variable test with invalid modified data
This test sets the authenticated variable with invalid modified data,
firmware should check the data and return EFI_SECURITY_VIOLATION.
* Authenticated variable test with invalid modified timestamp
This test sets the authenticated variable with invalid timestamp, not the
same timestamp as the one hashed in the authenticated variable, firmware
should check it and return EFI_SECURITY_VIOLATION.
* Authenticated variable test with different guid
This test sets the authenticated variable with invalid guid, not the same
guid as the one hashed in the authenticated variable, firmware should check
it and return EFI_SECURITY_VIOLATION.
* Authenticated variable test with invalid attributes
This test sets the authenticated variable with the invalid attributes. The
authenticated variable is followed EFI_VARIABLE_AUTHENTICATION_2 descriptor,
set the authenticated variable with invalid
EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS instead of
EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS attribute,
firmware should return EFI_SECURITY_VIOLATION.
* Test with both authenticated attributes are set
Set the authitecated variable with both
EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS and the
EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS attributes, firmware
should return EFI_INVALID_PARAMETER.
* Set and delete authenticated variable created by different key test
After previous test authenticated variable was deleted, test with setting and
deleting another authenticated variable which created by different key.
Ivan Hu (15):
uefirtauthvar: add the test for creating authenticated variable
uefirtauthvar: cleanup environment before testing
uefirtauthvar: add test with setting the same authenticated variable
uefirtauthvar: add test for setting authenticated variable created by
another key
uefirtauthvar: add the normal append operation test
uefirtauthvar: add test update the authenticated variable
uefirtauthvar: add setting old authenticated variable test
uefirtauthvar: delete authenticated variable test
uefirtauthvar: setting authenticated variable with invalid modified
data test
uefirtauthvar: setting authenticated variable with invalid modified
timestamp
uefirtauthvar: setting authenticated variable with different guid
test
uefirtauthvar: setting authenticated variable with invalid attribute
test
uefirtauthvar: test with both authenticated attributes are set
uefirtauthvar: Set and delete authenticated variable created by
different key test
uefirtauthvar: cleanup environment for another authenticated variable
src/Makefile.am | 3 +-
src/uefi/uefirtauthvar/authvardefs.h | 998 ++++++++++++++++++++++++++++++++
src/uefi/uefirtauthvar/uefirtauthvar.c | 837 ++++++++++++++++++++++++++
3 files changed, 1837 insertions(+), 1 deletion(-)
create mode 100644 src/uefi/uefirtauthvar/authvardefs.h
create mode 100644 src/uefi/uefirtauthvar/uefirtauthvar.c
--
1.7.9.5
More information about the fwts-devel
mailing list