TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Nitter is working again

414 pointsby linusg789almost 2 years ago

17 comments

costcoalmost 2 years ago
Warning: long somewhat related story that is basically humblebragging, but the summary is that bypassing Twitter ratelimits is not very hard.<p>I didn&#x27;t feel like playing around with Twitter&#x27;s annoying certificate pinning so I just uploaded the Twitter APK to Corellium, turned on what they call the &quot;network monitor&quot;, opened the Twitter app since it lets you use Twitter without signing in. I clicked around, searched and viewed tweets. Then I looked at the requests in the log and saw it has a similar guest token process to the website but with a few differences. Anyways, if you recreate these requests, with one IP address you can generate a few OAuth tokens with no expiry per day. These tokens are for unauthenticated users so obviously they have no write privileges but that&#x27;s not what was needed here. So if you have a proxy provider with a large pool of IPs where you can buy like 1GB of bandwidth you can use a very small percent of your bandwidth allowance and get thousands of tokens&#x2F;secrets easily, all with their own separate rate limits. It doesn&#x27;t even matter what IP you end up using the tokens on. Then I followed <a href="https:&#x2F;&#x2F;docs.google.com&#x2F;document&#x2F;d&#x2F;1xVrPoNutyqTdQ04DXBEZW4ZW4A5RAQW2he7qIpTmG-M&#x2F;edit" rel="nofollow noreferrer">https:&#x2F;&#x2F;docs.google.com&#x2F;document&#x2F;d&#x2F;1xVrPoNutyqTdQ04DXBEZW4ZW...</a> and the fact that &#x2F;statuses&#x2F;lookup.json still allows you to return 100 (!) tweets at once to reconstruct something close to what the 50% Twitter firehose would look like. And Twitter doesn&#x27;t even block datacenter IP addresses! Was going to display the data at <a href="https:&#x2F;&#x2F;firehose.lol" rel="nofollow noreferrer">https:&#x2F;&#x2F;firehose.lol</a> but the fact that it required a few hundred requests a second made me feel bad so I didn&#x27;t end up running the program for more than a few minutes at a time and shut it down.<p>Looking at (a fraction of) the Firehose for a few minutes was interesting, originally I accidentally forgot to not display tweets labelled possibly_sensitive so I saw some pretty salacious material for a few seconds. Lots of Chinese gambling ads even though Twitter is blocked there, dubious investment promoters, accounts with usernames like FirstnameLastname3781264872 who would tweet three random words at each other every couple of seconds, and a handful of funny tweets.
评论 #36671000 未加载
评论 #36677831 未加载
sheepscreekalmost 2 years ago
This is the most impressive project in Nim I’ve seen yet. Rewriting any major front-end, complete with working authentication and handling idiosyncrasies of the private API is a herculean task. For context, Twitter would have a team of two dozen or more supporting what this does, effectively. Kudos to the author for accomplishing this feat!
评论 #36670899 未加载
评论 #36665870 未加载
nailloalmost 2 years ago
Funny how the effect of the rate limit has barely affected bots and scrapers <i>at all</i> but severely damaged the userbase of the site.
评论 #36673167 未加载
评论 #36670794 未加载
评论 #36668339 未加载
评论 #36675084 未加载
nicolas-siplisalmost 2 years ago
Hey there, just wanted to thank you because you also fixed my Twitter Spaces downloader app[0]! After the API changes the default bearer token I was using (same as yours) stopped working, but after changing the same way you all&#x27;s back to normal :D<p>0: <a href="https:&#x2F;&#x2F;github.com&#x2F;Chiplis&#x2F;moonbird">https:&#x2F;&#x2F;github.com&#x2F;Chiplis&#x2F;moonbird</a>
评论 #36667106 未加载
joos3almost 2 years ago
This is absolutely amazing, as you still can’t view profiles or replies on Twitter without logging in.<p>I’ve been a nitter user for 4 years now and will be as long as it works.
评论 #36667896 未加载
lewantmontrealalmost 2 years ago
We weren’t supposed to talk about fight club
评论 #36666834 未加载
INTPenisalmost 2 years ago
Is this really permanent? I&#x27;d love to know more about this bearer token.<p>Because in the other github issue thread it seemed like every time they found a way around Twitter&#x27;s safeguards, it was shutdown.<p>It seems like they&#x27;ve literally hard coded a token into the source code. Meaning thousands of nitter-instances, thousands of users, around the world, will use the same token.<p>And potentially so will the AI companies.<p>So I just don&#x27;t see how this can work.
评论 #36665846 未加载
评论 #36667399 未加载
评论 #36665915 未加载
评论 #36665998 未加载
sylwarealmost 2 years ago
It means anonymous access has been restored. Nitter does not use twitter API which is a goner anyway (but was restored for a little while).<p>Twitter should provide a noscript&#x2F;basic (x)html interop www portal.
meepmorpalmost 2 years ago
So, is the AI Scrapocalypse no longer a critically important issue?
评论 #36666371 未加载
评论 #36665964 未加载
ec109685almost 2 years ago
This is like the analog loophole. If data is transferred from Server to Client, it&#x27;s always possible to scrape.<p>Though Apple is trying to make this harder: <a href="https:&#x2F;&#x2F;developer.apple.com&#x2F;documentation&#x2F;devicecheck&#x2F;preparing_to_use_the_app_attest_service" rel="nofollow noreferrer">https:&#x2F;&#x2F;developer.apple.com&#x2F;documentation&#x2F;devicecheck&#x2F;prepar...</a>
评论 #36688288 未加载
maxlinalmost 2 years ago
Awesome, now my light personal-use scraper works again. Didn&#x27;t even take a restart!<p>Hope Twitter soon lets go of the temporary login restriction too. Given that this isn&#x27;t completely blocked without a login, I&#x27;d expect that to be not far from now on. From what I&#x27;ve collected, I hope Twitter&#x27;d start selling dumps of their public data for a bit of a win&#x2F;win with AI companies and Twitter itself.
评论 #36670238 未加载
eterpsalmost 2 years ago
Displaying a timeline with multiple accounts seems still broken, but other than that it works fine.
评论 #36666138 未加载
gaddersalmost 2 years ago
Can someone do Fritter next please so I have a decent android Twitter client?
评论 #36671101 未加载
评论 #36672165 未加载
rompicalmost 2 years ago
RSS does not work?
评论 #36666149 未加载
ilikehurdlesalmost 2 years ago
Anyone remember threads? Whatever happened to that app?
评论 #36672580 未加载
评论 #36668313 未加载
评论 #36671151 未加载
I_am_tiberiusalmost 2 years ago
This seems like Elon distributed free API tokens to specific 3rd party vendors?
评论 #36666369 未加载
charcircuitalmost 2 years ago
This does not seem legal. Stealing an access token to bypass access controls is illegal and I suspect these people didn&#x27;t get permission to just scrape anything they want.
评论 #36669078 未加载
评论 #36672260 未加载