{"id":99587,"date":"2021-03-27T10:22:57","date_gmt":"2021-03-27T08:22:57","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vo-freebsd-13-chut-ne-okazalas-halturnaya-realizacziya-wireguard-s-narusheniem-liczenzii-i-uyazvimostyami"},"modified":"2021-03-27T10:22:57","modified_gmt":"2021-03-27T08:22:57","slug":"vo-freebsd-13-chut-ne-okazalas-halturnaya-realizacziya-wireguard-s-narusheniem-liczenzii-i-uyazvimostyami","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/vo-freebsd-13-chut-ne-okazalas-halturnaya-realizacziya-wireguard-s-narusheniem-liczenzii-i-uyazvimostyami","title":{"rendered":"In FreeBSD 13, there was nearly a shoddy implementation of WireGuard with license violations and vulnerabilities.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>The code base from which FreeBSD 13 was derived saw a controversial removal of code implementing the WireGuard VPN protocol, developed at the request of Netgate without consulting the original WireGuard developers, and already included in stable releases of the pfSense distribution. After reviewing the code with Jason A. Donenfeld, the author of the original WireGuard, it became clear that the proposed WireGuard implementation for FreeBSD was a prime example of subpar code, rife with buffer overflows and violating the GPL license.     <\/p>\n<p>The implementation revealed catastrophic flaws in the cryptographic code, with parts of the WireGuard protocol omitted. There were errors that led to kernel crashes and circumvention of protection methods, and fixed-size buffers were used for input data. The quality of the code is evidenced by the presence of stubs instead of checks, which always return the value 'true', forgotten debug printf statements outputting parameters used for encryption, and the use of the sleep function to prevent race conditions.     <\/p>\n<p>Certain parts of the code, such as the crypto_xor function, were transferred from the WireGuard implementation developed for Linux in violation of the GPL license. As a result, Jason Donenfeld, along with Kyle Evans and Matt Dunwoodie (the author of the WireGuard port for OpenBSD), took it upon themselves to redo the problematic implementation and completely replaced the entire code of the developer hired by Netgate within a week. The revised version was released as a separate set of patches, placed in the WireGuard project repository, and has not yet been included in FreeBSD.       <\/p>\n<p>Interestingly, nothing initially foreshadowed trouble. The company Netgate, which wanted to implement WireGuard in the pfSense distribution, hired Matthew Macy, who is well-versed in the FreeBSD kernel and network stack, and who has experience in debugging and developing network drivers for this operating system. Macy was given a flexible schedule without deadlines or interim checks. Developers who collaborated with Macy on FreeBSD described him as a talented and professional programmer, who made no more mistakes than others and reacted appropriately to criticism. The poor quality of the WireGuard implementation code for FreeBSD came as a surprise to them.        <\/p>\n<p>After 9 months of work in December of last year, Macy added his implementation to the HEAD branch without completing reviews and testing by external participants, which was used to build the release of FreeBSD 13. The development was carried out without communication with the developers of the original WireGuard and ports for OpenBSD and NetBSD. In February, Netgate integrated WireGuard into the stable release pfSense 2.5.0 and began shipping firewalls based on it. After issues were identified, the WireGuard code was removed from pfSense.    <\/p>\n<p>Critical vulnerabilities were discovered in the added code, which were exploited in 0-day exploits, but Netgate initially denied the existence of vulnerabilities and attempted to blame the developer of the original WireGuard for assaults and bias, which negatively affected its reputation. The port developer initially dismissed the quality complaints as exaggerated, but after being shown the errors, acknowledged that a critical issue was the lack of proper code quality review in FreeBSD, as the problems went unnoticed for many months (Netgate representatives indicated that public reviews had started as early as August 2020, but individual FreeBSD developers noted that the review in Phabricator was closed by Macy without completion and with disregard for comments). The FreeBSD Core Team responded to the incident with a promise to modernize the code review processes.       <\/p>\n<p>Matthew Maisey, the developer of the problematic port for FreeBSD, commented on the situation by stating that he made a grave mistake by taking on the work without being ready to implement the project. He attributes the resulting outcome to emotional burnout and issues stemming from post-COVID syndrome. However, Maisey did not find the resolve to withdraw from the commitments he had already made and instead attempted to see the project through to completion.     <\/p>\n<p>Maisey's condition may also have been affected by a recent prison sentence he received for illegal actions in an attempt to evict tenants from a house he purchased, whose occupants were unwilling to leave voluntarily. Together with his wife, they sawed through the ceiling beams and created holes in the floors to make the house uninhabitable, as well as trying to intimidate the tenants by breaking into occupied apartments and removing belongings (the act was classified as burglary). To avoid accountability for his actions, Maisey and his wife fled to Italy but were extradited to the US, where he served more than four years in prison.<br \/>\n<br \/>Source: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=54843\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u0437 \u043a\u043e\u0434\u043e\u0432\u043e\u0439 \u0431\u0430\u0437\u044b, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 FreeBSD 13, \u0431\u044b\u043b \u0441\u043e \u0441\u043a\u0430\u043d\u0434\u0430\u043b\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d \u043a\u043e\u0434 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 VPN WireGuard, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u043f\u043e \u0437\u0430\u043a\u0430\u0437\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Netgate \u0431\u0435\u0437 \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e WireGuard, \u0438 \u0443\u0436\u0435 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u0439 \u0432 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0435 \u0432\u044b\u043f\u0443\u0441\u043a\u0438 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430 pfSense. \u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u043e\u0434\u0430 \u0414\u0436\u0435\u0439\u0441\u043e\u043d\u043e\u043c \u0414\u043e\u043d\u0435\u043d\u0444\u0438\u043b\u0434\u043e\u043c (Jason A. Donenfeld), \u0430\u0432\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e WireGuard, \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u0430\u044f \u0434\u043b\u044f FreeBSD [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-99587","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u0437 \u043a\u043e\u0434\u043e\u0432\u043e\u0439 \u0431\u0430\u0437\u044b, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 FreeBSD 13, \u0431\u044b\u043b \u0441\u043e \u0441\u043a\u0430\u043d\u0434\u0430\u043b\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d \u043a\u043e\u0434 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 VPN WireGuard, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u043f\u043e \u0437\u0430\u043a\u0430\u0437\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Netgate \u0431\u0435\u0437 \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/vo-freebsd-13-chut-ne-okazalas-halturnaya-realizacziya-wireguard-s-narusheniem-liczenzii-i-uyazvimostyami\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u043e FreeBSD 13 \u0447\u0443\u0442\u044c \u043d\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u0445\u0430\u043b\u0442\u0443\u0440\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f WireGuard \u0441 \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u0435\u043c \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u0437 \u043a\u043e\u0434\u043e\u0432\u043e\u0439 \u0431\u0430\u0437\u044b, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 FreeBSD 13, \u0431\u044b\u043b \u0441\u043e \u0441\u043a\u0430\u043d\u0434\u0430\u043b\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d \u043a\u043e\u0434 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 VPN WireGuard, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u043f\u043e \u0437\u0430\u043a\u0430\u0437\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Netgate \u0431\u0435\u0437 \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/vo-freebsd-13-chut-ne-okazalas-halturnaya-realizacziya-wireguard-s-narusheniem-liczenzii-i-uyazvimostyami\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-03-27T08:22:57+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-03-27T08:22:57+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47FreeBSD 13 almost featured a shoddy implementation of WireGuard that violated licensing terms and contained vulnerabilities | ProHoster","description":"From the codebase that formed the foundation of the FreeBSD 13 release, the implementation code for the VPN protocol WireGuard was scandalously removed, which had been developed at the request of Netgate without consultations with the developers.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/vo-freebsd-13-chut-ne-okazalas-halturnaya-realizacziya-wireguard-s-narusheniem-liczenzii-i-uyazvimostyami","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u043e FreeBSD 13 \u0447\u0443\u0442\u044c \u043d\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u0445\u0430\u043b\u0442\u0443\u0440\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f WireGuard \u0441 \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u0435\u043c \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438 | ProHoster","og:description":"\u0418\u0437 \u043a\u043e\u0434\u043e\u0432\u043e\u0439 \u0431\u0430\u0437\u044b, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 FreeBSD 13, \u0431\u044b\u043b \u0441\u043e \u0441\u043a\u0430\u043d\u0434\u0430\u043b\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d \u043a\u043e\u0434 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 VPN WireGuard, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u043f\u043e \u0437\u0430\u043a\u0430\u0437\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Netgate \u0431\u0435\u0437 \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438.","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/vo-freebsd-13-chut-ne-okazalas-halturnaya-realizacziya-wireguard-s-narusheniem-liczenzii-i-uyazvimostyami","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-03-27T08:22:57+00:00","article:modified_time":"2021-03-27T08:22:57+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"99587","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-27 08:46:10","updated":"2022-09-28 06:57:15","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/99587","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=99587"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/99587\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=99587"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=99587"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=99587"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}