-
Notifications
You must be signed in to change notification settings - Fork 385
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FRR: upgrade to upstream stable/8.1 branch #182
Conversation
9022ede
to
1941149
Compare
4281a66
to
5c85e83
Compare
3eee15e
to
d67abe2
Compare
Does 8.0 resolve the kernel crash introduced in 7.5? If not, we might actually want to go back to 7.2 - that thing is massively annoying and precludes production use when running routed VPN links having to rebuild routing tables on re-init. |
That crash is avoidable by disabling nexthop groups as stated in the issue. There is not much we can do FRR side, it's a kernel bug. I still haven't been able to hit it myself so if you have a easy reliable reproducer, please post it in the ticket. |
@sworleys: Are you referring to the change of the zebra config file? |
As a security person, will also note that |
Yes that config line will disable FRR's use of kernel nexthop groups and therefore the bug will not be hit. It is definitely a kernel bug, I am pretty intimately familiar with the uapi used by kernel nexthop groups and much of the code in the kernel itself. Thanks for the reproducer, can you post it in the FRR issue itself with clear steps (iproute2 commands, configs, etc.) I don't want to annoy the people following this PR since it's not directly related. |
Libyang is only used in FRR to process configs/display operational data. It doesn't communicate over the wire AFAIK, not sure where you are getting that from or why someone would do that. |
@sworleys: I am "getting that" from the state of industry: we live in an age of unrestricted informational warfare. Every system online is being attacked, and must be built to withstand attack. I specifically stated "If this library is being used to process untrusted data" ... so if it is not being used for such function, then the vectors of access to it are limited to only trusted inputs which provides for standoff in the security posture relative to any potential (0day) or existing vulnerability. |
Hopefully you aren't insinuating this, but if you are, I think it's pretty shortsighted of you to think both the FRR team and vyos team don't take security seriously. We have 100s of years between us of writing enterprise grade software and are well aware of how to manage potentially unsafe libraries. FRR is in a few of 3rd party security scans using fuzzers and Static Analyzers that often find and report bugs before ever being released. I don't think anyone would complain if you were to setup more automated scans and helped us track down/fix security bugs before they are in the wild. It would be awesome actually. Patches are always welcome. |
No insult intended (apologies if any was internalized), this what i do for a living/life - offensive security architect (person who plans the red team effort and executes as part of/leading it) and since sane humans dont tend to think security first, i often find that nobody else will call these things out as they should be. Just because projects have been using unsafe practices, does not mean that its OK. FOSS is endemic in this pattern - not blaming people, trying to fix process. I would be glad to set up a CI/CD pipeline, but VyOS is a commercial effort which generates revenue from selling support; and i run a commercial consultancy (a couple). Happy to work out a proper scope of work, cost analysis, and even host the entire thing at some small flat fee in our private clouds (we dont charge the egress/ingress/access fees, we do meter it, but consider those practices predatory) in a B2B context. I'm sure that paying customers would appreciate having vulnerability and code quality reports about their infrastructure. |
Change Summary
Upgrade from FRRouting 7.5.1 to 8.0
Types of changes
Related Task(s)
https://phabricator.vyos.net/T3753
Component(s) name
FRR
Proposed changes
How to test
make test
make testc
Checklist: