• Kamalesh Babulal's avatar
    livepatch: Validate module/old func name length · 6e9df95b
    Kamalesh Babulal authored
    livepatch module author can pass module name/old function name with more
    than the defined character limit. With obj->name length greater than
    MODULE_NAME_LEN, the livepatch module gets loaded but waits forever on
    the module specified by obj->name to be loaded. It also populates a /sys
    directory with an untruncated object name.
    
    In the case of funcs->old_name length greater then KSYM_NAME_LEN, it
    would not match against any of the symbol table entries. Instead loop
    through the symbol table comparing them against a nonexisting function,
    which can be avoided.
    
    The same issues apply, to misspelled/incorrect names. At least gatekeep
    the modules with over the limit string length, by checking for their
    length during livepatch module registration.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarKamalesh Babulal <kamalesh@linux.vnet.ibm.com>
    Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    6e9df95b
core.c 24 KB