• Daniel Borkmann's avatar
    bpf, selftests: Add test case trying to taint map value pointer · b1a7288d
    Daniel Borkmann authored
    Add a test case which tries to taint map value pointer arithmetic into a
    unknown scalar with subsequent export through the map.
    
    Before fix:
    
      # ./test_verifier 1186
      #1186/u map access: trying to leak tained dst reg FAIL
      Unexpected success to load!
      verification time 24 usec
      stack depth 8
      processed 15 insns (limit 1000000) max_states_per_insn 0 total_states 1 peak_states 1 mark_read 1
      #1186/p map access: trying to leak tained dst reg FAIL
      Unexpected success to load!
      verification time 8 usec
      stack depth 8
      processed 15 insns (limit 1000000) max_states_per_insn 0 total_states 1 peak_states 1 mark_read 1
      Summary: 0 PASSED, 0 SKIPPED, 2 FAILED
    
    After fix:
    
      # ./test_verifier 1186
      #1186/u map access: trying to leak tained dst reg OK
      #1186/p map access: trying to leak tained dst reg OK
      Summary: 2 PASSED, 0 SKIPPED, 0 FAILED
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    Reviewed-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
    Acked-by: default avatarAlexei Starovoitov <ast@kernel.org>
    b1a7288d
value_ptr_arith.c 35.9 KB