[{"author": "Shivan Sahib", "text": "<p>any minute takers?</p>", "time": "2025-07-25T09:33:10Z"}, {"author": "Shivan Sahib", "text": "<p>thanks Tara!</p>", "time": "2025-07-25T09:34:59Z"}, {"author": "Shivan Sahib", "text": "<p>@meetcho we can't see the speaker online</p>", "time": "2025-07-25T09:35:28Z"}, {"author": "Shivan Sahib", "text": "<p>Gunes Acar (one of the authors on this paper) had presented at PEARG 7 (!) years ago</p>", "time": "2025-07-25T09:39:30Z"}, {"author": "Martin Thomson", "text": "<p>Gunes has done some really good work in this area</p>", "time": "2025-07-25T09:39:50Z"}, {"author": "Martin Thomson", "text": "<p>This was a particularly good find.</p>", "time": "2025-07-25T09:40:03Z"}, {"author": "Martin Thomson", "text": "<p>Arguably, this is a failing of the Android platform (iOS doesn't have the problem because it doesn't allow servers to operate like this).</p>", "time": "2025-07-25T09:41:51Z"}, {"author": "Shivan Sahib", "text": "<p>I thought iOS had the same capability?</p>", "time": "2025-07-25T09:42:27Z"}, {"author": "Martin Thomson", "text": "<p>My understanding is that you can't run servers in the background on iOS.</p>", "time": "2025-07-25T09:42:53Z"}, {"author": "Steve Hill", "text": "<p>Is there a legitimate reason for an app to ever bind to 127.0.0.1 / ::1 or could that binding simply be prohibited?</p>", "time": "2025-07-25T09:43:14Z"}, {"author": "Martin Thomson", "text": "<p>This whole SDP munging thing is a red herring, you don't need it.</p>", "time": "2025-07-25T09:43:16Z"}, {"author": "Shivan Sahib", "text": "<p>yeah</p>", "time": "2025-07-25T09:43:30Z"}, {"author": "Martin Thomson", "text": "<p>Steve: there is no reason to allow apps to communicate with each other over loopback.</p>", "time": "2025-07-25T09:43:42Z"}, {"author": "Steve Hill", "text": "<p>(or at least, hidden behind a separate permission that most apps wouldn't acquire)</p>", "time": "2025-07-25T09:43:46Z"}, {"author": "Martin Thomson", "text": "<p>A solution here would partition the network by app, so that apps can communicate with others on the network, but not each other.</p>", "time": "2025-07-25T09:44:03Z"}, {"author": "Jonathan Hoyland", "text": "<p>I wonder if the use of localhost is why my password manager sometimes suggests passwords for one app in others.</p>", "time": "2025-07-25T09:44:13Z"}, {"author": "Martin Thomson", "text": "<p>These platforms have ways for apps to communicate with each other.</p>", "time": "2025-07-25T09:44:26Z"}, {"author": "Steve Hill", "text": "<p>I guess even if 127.0.0.1 / ::1 is prohibited, the device's other IPs could be used (but it would be harder since the JS would need to determine the IPs first)</p>", "time": "2025-07-25T09:45:09Z"}, {"author": "Martin Thomson", "text": "<p>Steve: yes, you need to cut off all use of local interfaces.  You can't stop use of hairpinning at a NAT (provided that the NAT address is visible) but that's far less of a problem.</p>", "time": "2025-07-25T09:45:52Z"}, {"author": "Martin Thomson", "text": "<p>There are some DNS filters or firewalls that blocked the Yandex approach because of this use of loopback in responses from public resolvers.</p>", "time": "2025-07-25T09:48:24Z"}, {"author": "Martin Thomson", "text": "<p>Meta's approach was more robust.</p>", "time": "2025-07-25T09:48:36Z"}, {"author": "Marco Munizaga", "text": "<p>How did yandex use https on localhost? (or am I misunderstanding?)</p>", "time": "2025-07-25T09:49:42Z"}, {"author": "Steve Hill", "text": "<p>Any legal implications for companies using sidechannels to bypass normal permissions?</p>", "time": "2025-07-25T09:50:52Z"}, {"author": "Shivan Sahib", "text": "<p>I believe they got strongly worded emails from Google</p>", "time": "2025-07-25T09:51:36Z"}, {"author": "Steve Hill", "text": "<p>Ah, \"strongly worded emails\", the best kind of deterrant :)</p>", "time": "2025-07-25T09:51:55Z"}, {"author": "Lorenzo Miniero", "text": "<p><span class=\"user-mention\" data-user-id=\"2987\">@Marco Munizaga</span> I think it wasn't https, it was STUN/TURN, so UDP</p>", "time": "2025-07-25T09:52:54Z"}, {"author": "Marco Munizaga", "text": "<blockquote>\n<p>3.The Yandex script sends a request to their servers to obtain obfuscated parameters.<br>\n4. These obfuscated parameters are send to the localhost via both HTTP and HTTPS.</p>\n</blockquote>\n<p>from <a href=\"https://localmess.github.io\">https://localmess.github.io</a></p>", "time": "2025-07-25T09:53:54Z"}, {"author": "Martin Thomson", "text": "<p>I understand that the strongly worded emails were in the spirit of \"you violated the terms of the app store agreement; please make a case for why we shouldn't pull your apps from the store\"</p>", "time": "2025-07-25T09:54:11Z"}, {"author": "Shivan Sahib", "text": "<p>Local Network Access by Chromium is a strong mitigation, we (Brave) will adapt that once it's stable</p>", "time": "2025-07-25T09:54:15Z"}, {"author": "Martin Thomson", "text": "<p>We are shipping LNA in Firefox very soon (I reviewed the user documentation this week)</p>", "time": "2025-07-25T09:54:58Z"}, {"author": "Lorenzo Miniero", "text": "<p><span class=\"user-mention silent\" data-user-id=\"2987\">Marco Munizaga</span> <a href=\"#narrow/channel/289-pearg/topic/ietf-123/near/178080\">said</a>:</p>\n<blockquote>\n<blockquote>\n<p>3.The Yandex script sends a request to their servers to obtain obfuscated parameters.<br>\n4. These obfuscated parameters are send to the localhost via both HTTP and HTTPS.</p>\n</blockquote>\n<p>from <a href=\"https://localmess.github.io\">https://localmess.github.io</a></p>\n</blockquote>\n<p>Ah apologies, you're right: it was Meta that used STUN/TURN too</p>", "time": "2025-07-25T09:55:12Z"}, {"author": "Steve Hill", "text": "<p>@Marco: This is an assumption but, if you own <a href=\"http://example.com\">example.com</a> and have <a href=\"http://local.example.com\">local.example.com</a> resolve to 127.0.0.1, you can get a valid certificate for <a href=\"http://local.example.com\">local.example.com</a> and bundle it with your app.  This would allow HTTPS to be negotiated with <a href=\"http://local.example.com\">local.example.com</a>, which is the local app.</p>", "time": "2025-07-25T09:55:33Z"}, {"author": "Shivan Sahib", "text": "<p>@martin that's awesome</p>", "time": "2025-07-25T09:55:38Z"}, {"author": "Ignacio Castro", "text": "<p>Would love to hear a take from Meta, if there is anyone in the room</p>", "time": "2025-07-25T09:59:20Z"}, {"author": "Marco Munizaga", "text": "<p><span class=\"user-mention silent\" data-user-id=\"6227\">Steve Hill</span> <a href=\"#narrow/channel/289-pearg/topic/ietf-123/near/178088\">said</a>:</p>\n<blockquote>\n<p>@Marco: This is an assumption but, if you own <a href=\"http://example.com\">example.com</a> and have <a href=\"http://local.example.com\">local.example.com</a> resolve to 127.0.0.1, you can get a valid certificate for <a href=\"http://local.example.com\">local.example.com</a> and bundle it with your app.  This would allow HTTPS to be negotiated with <a href=\"http://local.example.com\">local.example.com</a>, which is the local app.</p>\n</blockquote>\n<p>This is wild. If I can change the DNS resolution, then I could present my own server as a Yandex one with their own certificate.</p>", "time": "2025-07-25T10:00:08Z"}, {"author": "Steve Hill", "text": "<p>@Marco you would need to convince a CA to give you a certificate for the domain that you're spoofing.</p>", "time": "2025-07-25T10:00:56Z"}, {"author": "Marco Munizaga", "text": "<p>Yandex gave me the certificate (bundled in the app), right?</p>", "time": "2025-07-25T10:01:32Z"}, {"author": "Steve Hill", "text": "<p>@Marco in this case, Yandex own <a href=\"http://yandex.com\">yandex.com</a>, so can legitimately get a certificate for <a href=\"http://anything.yandex.com\">anything.yandex.com</a>.  Which servers whey put that cert + key on is up to them, including a web server running in an app that you install on your phone</p>", "time": "2025-07-25T10:02:18Z"}, {"author": "Steve Hill", "text": "<p>@Marco oh, good point, but presumably it wasnt a wwildcard cert, so can only be used to spoof that one subdomain</p>", "time": "2025-07-25T10:02:42Z"}, {"author": "Steve Hill", "text": "<p>@Marco but yes, there are probably some interesting security problems for Yandex right there :)</p>", "time": "2025-07-25T10:03:14Z"}, {"author": "Alisha Ukani", "text": "<p>Hi everyone, I'm the presenter of this work -- happy to answer questions while the video is playing in addition to the live Q&amp;A</p>", "time": "2025-07-25T10:04:02Z"}, {"author": "Shivan Sahib", "text": "<p>thanks for being around at this ungodly hour Alisha :)</p>", "time": "2025-07-25T10:04:54Z"}, {"author": "Sara Dickinson", "text": "<p>Sorry Ignacio - I didn't see you in the queue! I presume it was a question for the previous speaker?</p>", "time": "2025-07-25T10:05:13Z"}, {"author": "Martin Thomson", "text": "<p>Same origin doesn't really protect users as much as it protects the integrity of site information from other sites.</p>", "time": "2025-07-25T10:05:53Z"}, {"author": "Shivan Sahib", "text": "<p>The video is lagging, at least for me remotely, not sure how it is in the rom</p>", "time": "2025-07-25T10:07:53Z"}, {"author": "Jonathan Hoyland", "text": "<p>Yeah, the video is lagging horribly</p>", "time": "2025-07-25T10:08:04Z"}, {"author": "Peter Koch", "text": "<p>no video in the onsite tool</p>", "time": "2025-07-25T10:08:17Z"}, {"author": "Jonathan Hoyland", "text": "<p>@Alisha, could you possibly share the YT link here?</p>", "time": "2025-07-25T10:08:21Z"}, {"author": "Alisha Ukani", "text": "<p>Here's the video link: <a href=\"https://www.youtube.com/watch?v=141KiubKtnI\">https://www.youtube.com/watch?v=141KiubKtnI</a></p>\n<div class=\"youtube-video message_inline_image\"><a data-id=\"141KiubKtnI\" href=\"https://www.youtube.com/watch?v=141KiubKtnI\"><img src=\"https://zulip.ietf.org/external_content/fcfe23e846255951aec5478b82bf8fa90139cb2d/68747470733a2f2f692e7974696d672e636f6d2f76692f3134314b6975624b746e492f6d7164656661756c742e6a7067\"></a></div>", "time": "2025-07-25T10:08:38Z"}, {"author": "Martin Thomson", "text": "<p>are there slides?</p>", "time": "2025-07-25T10:08:50Z"}, {"author": "Shivan Sahib", "text": "<p><a href=\"https://datatracker.ietf.org/meeting/123/materials/slides-123-pearg-local-frames-exploiting-inherited-origins-to-bypass-content-blockers-00\">https://datatracker.ietf.org/meeting/123/materials/slides-123-pearg-local-frames-exploiting-inherited-origins-to-bypass-content-blockers-00</a></p>", "time": "2025-07-25T10:09:00Z"}, {"author": "Martin Thomson", "text": "<p>because I could follow along if there were slides in addition to the video</p>", "time": "2025-07-25T10:09:02Z"}, {"author": "Lorenzo Miniero", "text": "<p><span class=\"user-mention\" data-user-id=\"738\">@Sara Dickinson</span> there's an ethernet cable on the chair desk, if you weren't using it already</p>", "time": "2025-07-25T10:09:22Z"}, {"author": "Lorenzo Miniero", "text": "<p>If you're on the wifi that may be part of the cause</p>", "time": "2025-07-25T10:09:31Z"}, {"author": "Eric Kinnear", "text": "<p>@Alisha no audio in the room</p>", "time": "2025-07-25T10:11:37Z"}, {"author": "Jonathan Hoyland", "text": "<p>No audio coming through</p>", "time": "2025-07-25T10:11:38Z"}, {"author": "Andrew Campling", "text": "<p>No audio remotely either</p>", "time": "2025-07-25T10:11:44Z"}, {"author": "Eric Kinnear", "text": "<p>No worries if you miss anything, presenting it alongside the slide share would be great!</p>", "time": "2025-07-25T10:12:43Z"}, {"author": "Jonathan Hoyland", "text": "<p>This was a really cool talk, thank-you so much Alisha.</p>", "time": "2025-07-25T10:22:26Z"}, {"author": "Allison Mankin", "text": "<p>Thank you for the great talk, @Alisha, in the middle of the night there.</p>", "time": "2025-07-25T10:25:51Z"}, {"author": "Alisha Ukani", "text": "<p>Thanks everyone!</p>", "time": "2025-07-25T10:26:12Z"}, {"author": "Martin Thomson", "text": "<p>PEARG probably isn't the right place for standardization of these primitives.  These are all crypto-heavy things.  Though this group might have something to contribute in terms of deciding WHAT.</p>", "time": "2025-07-25T10:57:20Z"}]