-
Notifications
You must be signed in to change notification settings - Fork 382
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
iana-time-zone v0.1.{43,44}: Use after free in MacOS / iOS implementation #1366
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome thank you! 💜
url = "https://github.com/strawlab/iana-time-zone/pull/54" | ||
references = ["https://github.com/strawlab/iana-time-zone/pull/50#discussion_r945353515"] | ||
categories = ["memory-corruption"] | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Kijewski btw may want to add informational = "unsound"
here so it goes more as a warning instead of full error
But up to you - ought to give an option which one to use :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for the review! Yes, informational = "unsound"
sounds like the right categorization. :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great - Thank you for being responsible and proactive maintainer - welcome aboard contributing 🚢 🚀
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also just realised this may have been memory-exposure vs memory-corruption ?
corruption is where attacker can potentially modify memory where as exposure is exposing random bits
if you would like to fix the category feel free to send another PR :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, you are right. I opened #1368. :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ta. merged 🚢
In iana-time-zone v0.1.43 a use-after-free bug in the MacOS / iOS implementation was introduced. The copied system time zone was released before its name was copied. If the system time zone was changed between the call of `CFRelease()` and `str::to_owned()`, random memory would be copied.
In iana-time-zone v0.1.43 a use-after-free bug in the MacOS / iOS implementation was introduced.
The copied system time zone was released before its name was copied.
If the system time zone was changed between the call of
CFRelease
andstr::to_owned()
,random memory would be copied.