[Babel-users] [babel] Babel MAC auth fails due to packet reordering

Daniel Gröber dxld at darkboxed.org
Sun May 15 21:44:33 BST 2022


On Sat, May 14, 2022 at 12:37:16AM +0200, Toke Høiland-Jørgensen wrote:
> Ah, oops; looks like I got my operator precedence wrong, so the code is
> doing pointer arithmetic instead of adding to the value being pointed
> to...
> 
> Pushed a fixed version here:
> https://github.com/tohojo/bird/tree/babel-ooo-pc
> 
> Could you try if that works better, please? :)

It's still crashing:

#0  __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:65
#1  0x0000555555592773 in bvsnprintf (
    buf=0x7fffffffd770 "babel1: Authentication PC (\367\377\177", size=997, 
    fmt=0x555555638ab9 "s) %u already seen (window start %u, value %x)", 
    fmt at entry=0x555555638aa1 "%s: Authentication PC (%s) %u already seen (window start %u, value %x)", args=args at entry=0x7fffffffdbc0) at lib/printf.c:256
#2  0x00005555555931ed in buffer_vprint (buf=buf at entry=0x7fffffffdb80, 
    fmt=fmt at entry=0x555555638aa1 "%s: Authentication PC (%s) %u already seen (window start %u, value %x)", args=args at entry=0x7fffffffdbc0) at lib/printf.c:531
#3  0x00005555555f81d8 in vlog (class=7, 
    msg=msg at entry=0x555555638aa1 "%s: Authentication PC (%s) %u already seen (window start %u, value %x)", args=args at entry=0x7fffffffdbc0) at sysdep/unix/log.c:219
#4  0x00005555555f83c2 in log_rl (f=f at entry=0x55555567ed50, msg=<optimized out>, 
    msg at entry=0x555555638aa0 "\a%s: Authentication PC (%s) %u already seen (window start %u, value %x)") at sysdep/unix/log.c:262
#5  0x00005555555b5df3 in babel_auth_check_pc (ifa=ifa at entry=0x5555556a2410, 
    msg=msg at entry=0x7fffffffded8) at proto/babel/babel.c:1568
#6  0x00005555555b8738 in babel_auth_check (ifa=ifa at entry=0x5555556a2410, saddr=..., 
    sport=<optimized out>, daddr=..., dport=6696, pkt=0x5555556a5460, 
    trailer=0x5555556a55cb "\020 \022\247\063\345%\215\210\227\334\001з\363\265\331\025O\325f\230tou\313\036g\020\244\256\220Y\354{.(4\366\310\340y\020 \276\205\016ۭ>\257\320e\\\301\360\350\321\375\245m\023\214q\267\257\327\034\270\275v\327V<Ʈ", trailer_len=34) at proto/babel/packets.c:1907
#7  0x00005555555b8b0a in babel_process_packet (ifa=0x5555556a2410, pkt=0x5555556a5460, 
    len=<optimized out>, saddr=..., sport=<optimized out>, daddr=..., dport=6696)
    at proto/babel/packets.c:1492
#8  0x00005555555b8f6b in babel_rx_hook (sk=<optimized out>, len=<optimized out>)
    at proto/babel/packets.c:1585
#9  0x00005555555f5483 in sk_read (s=0x5555556a5310, revents=<optimized out>)
    at sysdep/unix/io.c:1914
#10 0x00005555555f6181 in io_loop () at sysdep/unix/io.c:2349
#11 0x00005555555660e6 in main (argc=<optimized out>, argv=<optimized out>)
    at sysdep/unix/main.c:940

--Daniel



More information about the Babel-users mailing list