<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: jwally</title><link>https://news.ycombinator.com/user?id=jwally</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 14 Oct 2026 05:24:53 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jwally" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jwally in "Fingerprints are the new cookies"]]></title><description><![CDATA[
<p>Fingerprint.com charges around $0.004 per investigation, and really encourages you to set up a first party proxy - so iOS doesn't nuke storage after 7 days. And even there, unless its a cookie match; your ID usually carries a confidence number.<p>That should give some hint about how difficult it is to do in real life, at scale.</p>
]]></description><pubDate>Mon, 12 Oct 2026 08:31:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=50053222</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=50053222</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50053222</guid></item><item><title><![CDATA[Show HN: Cross Origin Tracking Safari]]></title><description><![CDATA[
<p>So this is a proof of concept to demonstrate how cross origin tracking could work in Safari. Turn consent into a captcha once and silently track the user going forward. Upsides: this could let you complete a captcha on one site, and have its grant carry over to another site seamlessly.<p>Downsides: Cross origin tracking.</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49931448">https://news.ycombinator.com/item?id=49931448</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 02 Oct 2026 09:12:37 +0000</pubDate><link>https://poc.oicu.info</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49931448</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49931448</guid></item><item><title><![CDATA[New comment by jwally in "500k facial scans at UK stations yield no arrests, 1 false positive"]]></title><description><![CDATA[
<p>I was thinking about this with flock cameras the other day...what's our actual ROI? Was the world horrible before and these initiatives are going to close a monster crime gap or is this just a giant fishing expedition ... just because?</p>
]]></description><pubDate>Tue, 29 Sep 2026 12:28:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=49892063</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49892063</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49892063</guid></item><item><title><![CDATA[Ask HN: Honey Pots in 'who wants to be hired'?]]></title><description><![CDATA[
<p>So I put my info into the hackernews 'who wants to be hired' this month, and I've had 5(?) fake recruiters reach out (all rando8374*@gmail.com). It would be awesome to recruit security researchers or law enforcement or whatever to snipe people like this.<p>I think even the _threat_ that the 'job applicant' is a cop seems like it would deter this behavior in a non negligible way. /shrug<p>Putting it out in the universe...</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49805648">https://news.ycombinator.com/item?id=49805648</a></p>
<p>Points: 2</p>
<p># Comments: 1</p>
]]></description><pubDate>Tue, 22 Sep 2026 18:08:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=49805648</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49805648</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49805648</guid></item><item><title><![CDATA[New comment by jwally in "English: A vs. An"]]></title><description><![CDATA[
<p>What about "An honorable man" spoken with an American accent? British accent?<p>Dialects and syntax are weirdly fascinating .</p>
]]></description><pubDate>Sun, 20 Sep 2026 13:44:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=49775830</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49775830</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49775830</guid></item><item><title><![CDATA[New comment by jwally in "Humble Proxy Detection"]]></title><description><![CDATA[
<p>Not claiming this is bullet proof, but the limited testing I've done its pretty impressive. Would love to flush some traffic through it and get some feed back. Pretty detailed description how it works inside. Probably going to open source the code because crime sucks, and if this can help at all - I want to share it with people who can use it.</p>
]]></description><pubDate>Sun, 20 Sep 2026 13:22:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=49775615</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49775615</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49775615</guid></item><item><title><![CDATA[Humble Proxy Detection]]></title><description><![CDATA[
<p>Article URL: <a href="https://proxy.kyc.red/">https://proxy.kyc.red/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49775614">https://news.ycombinator.com/item?id=49775614</a></p>
<p>Points: 3</p>
<p># Comments: 1</p>
]]></description><pubDate>Sun, 20 Sep 2026 13:22:33 +0000</pubDate><link>https://proxy.kyc.red/</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49775614</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49775614</guid></item><item><title><![CDATA[New comment by jwally in "How to Detect Residential Proxies"]]></title><description><![CDATA[
<p>Super cool!
Thanks for replying / sharing.<p>Obviously, this would be a SAAS -I wouldn't want webmaster at jocokfuel.com or whatever having to roll their own rust stun server and make TCP RTT measurements :-)<p>Spun up a quick and dirty demo at <a href="https://proxy.kyc.red" rel="nofollow">https://proxy.kyc.red</a><p>More detailed description is in there.<p>I just ran some proxied sessions through your demo - really impressive! FWIW, make the "BLOCKED" text bright red and bold - success/accepted green.<p>Would love to chat more about what you're doing and how you're doing it.<p>I'm justin at wolcott dot io<p>:salute</p>
]]></description><pubDate>Sun, 20 Sep 2026 13:17:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=49775562</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49775562</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49775562</guid></item><item><title><![CDATA[How to Detect Residential Proxies]]></title><description><![CDATA[
<p>I'm feeling pretty depressed right now, and hopefully sharing this little anomaly I discovered in January might help someone make the world a better place, and figure out how to put a dent in online crime. Fuck criminals.<p>Most residential proxy providers that I've seen don't support UDP. UDP is what WebRTC uses and has been part of the browser's "core" since 2021. If someone says they're on Chrom(<i>), FireFox, Safari - they have it.<p>So the setup goes like this:<p>1) Create a subdomain to get the client's TCP ip address. You can force it to ipv4 by not giving it an AAAA record. This will make future-comparison easier.<p>2) Create a subdomain to get the client's UDP ip address. Ditto the quad-a bit. You'll want to run your own STUN server (are you there, Claude? Its me, Justin...). To make it tamper resistant, I have the STUN server encrypt the ipv4 address and some other stuff and return it as an ipv6 ice candidate. Its abuse, but it works and I don't have to worry about back-end-server communication bottle necking anything. Just catch, encrypt, return.<p>And the algorithm looks like this:<p>**</i> YOU HAVE A TCP AND UDP IP ADDRESS ***<p>1) If both IP Addresses are the same - probably not a residential proxy<p>2) If both IP Addresses are different but on the same ASN and in the same .../24(?) - they're on a cell network<p>3) If the IP Addresses are on different ASNs - that's a MAJOR red flag. Most people who use residential proxies have it drilled into their head - TURN OFF WebRTC. This leaked bad in the mid 2010's and people are still terrified of it.<p>4) If one of the Addresses is on Cisco Web Umbrella or zScaler - and other is residential - they're behind a corporate protection firewall. Not really a proxy per se, but it'll trip this algorithm. Based on your threat model, they're probably ok to whitelist.<p>*** YOU __ONLY__ HAVE TCP IP ***<p>So this is the "one weird trick" / secret sauce / whatever that makes this work. TLS-duration / TCP-rtt > 3.0<p>* "Many residential proxies split the connection at the exit: the origin’s TCP socket ends there, so Linux TCP_INFO estimates only origin <=> exit RTT. The exit forwards TLS handshake bytes to the true client, making ClientHello handshake-complete include the hidden proxy chain. An unusually high TLS-duration/TCP-RTT ratio exposes that split." *<p>This is really all we need. From here, we just do the following:<p>TCP == UDP === not proxy<p>TCP ~= UDP === if on same ASN, not proxy<p>TCP != UDP === proxy or zScaler-thing. Whitelist to suit.<p>No UDP and TLS/TCP RTT Ratio < 3 === probably not a proxy (lower is better here)<p>No UDP and TLS/TCP RTT > 3 === probably a proxy (most I've seen float between 6-12x)<p>I've worked with this thing for the last 6 months and have worked mainly with Soax, BrightData, and OxyLabs proxies. I also built my own ProxyDevice (android) and C2 - put it on my own network and it caught it.<p>This is extremely cool because this means you don't have to blacklist IP addresses (not like it works) since a legitimate user and a proxy will come from the same IP - the proxy client will look _very_ different. They get blocked by NetAcuity/MaxMind/StaticList - the entire IP is killed. This is surgical.<p>This probably isn't perfect, but based on my limited experience its spooky accurate. I won't claim its 100% accurate for all cases everywhere but if its better than nothing - by definition its better than nothing - and that helps. Which, at the end of the day is all I want to do with this - help.<p>p.s. more than happy to share what I've built. Test, evidence, code, whatever. Just let me know.</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49668557">https://news.ycombinator.com/item?id=49668557</a></p>
<p>Points: 4</p>
<p># Comments: 2</p>
]]></description><pubDate>Sat, 12 Sep 2026 03:45:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=49668557</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49668557</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49668557</guid></item><item><title><![CDATA[New comment by jwally in "Ask HN: Who wants to be hired? (September 2026)"]]></title><description><![CDATA[
<p>Location: Dallas, TX<p>Remote: preferred<p>Willing to relocate: No<p>Technologies: TypeScript/JavaScript, Node.js, AWS, Cloudflare Workers, distributed systems, high-scale data pipelines, fraud/security<p>Senior technical lead specializing in ambiguous, high-scale systems. I turn messy security, infrastructure, and data problems into pragmatic production systems—recently cutting cloud costs by $200K+/year. Seeking senior/staff engineering or technical leadership roles with real ownership.<p>LinkedIn: 
<a href="https://www.linkedin.com/in/justinwwolcott" rel="nofollow">https://www.linkedin.com/in/justinwwolcott</a><p>Email: justin@wolcott.io</p>
]]></description><pubDate>Wed, 02 Sep 2026 02:29:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49531035</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49531035</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49531035</guid></item><item><title><![CDATA[New comment by jwally in "Ask HN: Why do we need MCP?"]]></title><description><![CDATA[
<p>I'm thinking more as a provider. Why put a model on my side to handle permissions/scope/auth/actions when thats already handled (or easy enough to spin up)by a rest-inspired http api?<p>If you're needing to give the model direct and broad access to your SqlServer instance...I don't get it.<p>Dedicated customer facing API is like whitelisting approved actions; MCP feels like getting an LLM to enforce a complex blacklist.</p>
]]></description><pubDate>Sat, 29 Aug 2026 11:29:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=49489017</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49489017</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49489017</guid></item><item><title><![CDATA[New comment by jwally in "Ask HN: Why do we need MCP?"]]></title><description><![CDATA[
<p>It's why I asked the question. Maybe I missed something.</p>
]]></description><pubDate>Sat, 29 Aug 2026 11:02:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=49488869</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49488869</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49488869</guid></item><item><title><![CDATA[New comment by jwally in "Ask HN: Why do we need MCP?"]]></title><description><![CDATA[
<p>Probably covers most use cases and is a lot cheaper and safer.</p>
]]></description><pubDate>Sat, 29 Aug 2026 10:28:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=49488663</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49488663</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49488663</guid></item><item><title><![CDATA[Ask HN: Why do we need MCP?]]></title><description><![CDATA[
<p>Why not just publish your API docs and let the client's bot chain together what calls need to be made.<p>You could even repurpose the MCP so you only ever produce the API documentation as EVERY response. No LLM necessary.</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49488654">https://news.ycombinator.com/item?id=49488654</a></p>
<p>Points: 12</p>
<p># Comments: 18</p>
]]></description><pubDate>Sat, 29 Aug 2026 10:26:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=49488654</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49488654</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49488654</guid></item><item><title><![CDATA[New comment by jwally in "Tim Curry has died"]]></title><description><![CDATA[
<p>Was thinking about this a couple of days ago...<p>Sam Neil - Gone.
Sean Connery - Gone.
Tim Curry - (now)Gone.<p>All the big names from my childhood are starting to die... Damn.</p>
]]></description><pubDate>Wed, 26 Aug 2026 21:12:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=49456004</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49456004</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49456004</guid></item><item><title><![CDATA[New comment by jwally in "The Work Number: credit score but for your employment history – by Equifax"]]></title><description><![CDATA[
<p>I get the concept and use case - but equifax has a reputation on par with klan members and pedos...at least be self aware enough to know to conceal your true form! Phillip Morris became Altria or whatever.<p>Plus, I can verify for employers that I am a real human with a real employment history snd I can prove it...by giving them my SSN and Mother's Maiden name? What stops a bad guy from speed rushing the dark web, registering these things en masse and selling access to DPRK?</p>
]]></description><pubDate>Mon, 24 Aug 2026 10:31:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=49417789</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49417789</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49417789</guid></item><item><title><![CDATA[New comment by jwally in "Someone is running mass vulnerability scans, spoofing AI bots like ClaudeBot"]]></title><description><![CDATA[
<p>thats the hard part, right - my 76 year old dad is on his banking app while his samsung TV is allowing a bot to try and take over other accounts at the same bank on the same IP.<p>IP Blacklists, no matter how good can't stop this. You have to start using stats or deep-diving telemetry.<p><a href="https://darknetdiaries.com/episode/172/" rel="nofollow">https://darknetdiaries.com/episode/172/</a></p>
]]></description><pubDate>Wed, 12 Aug 2026 20:24:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=49278079</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49278079</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49278079</guid></item><item><title><![CDATA[New comment by jwally in "Someone is running mass vulnerability scans, spoofing AI bots like ClaudeBot"]]></title><description><![CDATA[
<p>What if I have a slimy TV box or nasty on my phone, living on my network?<p>You take IP down, you kill the cancer but you also end up killing the patient.</p>
]]></description><pubDate>Wed, 12 Aug 2026 20:00:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=49277805</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49277805</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49277805</guid></item><item><title><![CDATA[New comment by jwally in "Show HN: Proxy-or-Not, Proxy Detector"]]></title><description><![CDATA[
<p>Thanks for trying it. The vpn stuff is shaky right now, but the proxy stuff has been great - on a really small sample size.</p>
]]></description><pubDate>Sun, 09 Aug 2026 04:42:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=49228509</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49228509</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49228509</guid></item><item><title><![CDATA[Show HN: Proxy-or-Not, Proxy Detector]]></title><description><![CDATA[
<p>My humble attempt to detect residential proxies while limiting false positives on things like CGNAT.<p>So far, its pretty successful detecting SOAX, BrightData, and a custom proxy app I built for my phone - but I have a pretty limited sample size.<p>Give it a spin!<p>* <a href="https://github.com/JWally/sofa-king-bad-box" rel="nofollow">https://github.com/JWally/sofa-king-bad-box</a><p>* <a href="https://github.com/JWally/sofa-king-bad-box-android" rel="nofollow">https://github.com/JWally/sofa-king-bad-box-android</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49227962">https://news.ycombinator.com/item?id=49227962</a></p>
<p>Points: 1</p>
<p># Comments: 2</p>
]]></description><pubDate>Sun, 09 Aug 2026 02:47:33 +0000</pubDate><link>https://arcades.click/proxy-or-not</link><dc:creator>jwally</dc:creator><comments>https://news.ycombinator.com/item?id=49227962</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49227962</guid></item></channel></rss>