Hacker Newsnew | past | comments | ask | show | jobs | submit | Matheus28's commentslogin

Probably some sort of command and control for a botnet.

They calculate a random domain name based on the timestamp (so it’s constantly changing every X days in case it gets seized), and have some validation to make sure commands are signed (to prevent someone name squatting to control their botnet).


Wow, that's smart. I was wondering whether there is a way for the bots to generate "unpredictable" domains such that security researchers could not predict them efficiently (even with source code), but the botnet controller can.

Time-lock puzzles come close, but but it requires that the bots have computing power comparable to the security researchers.


> Wow, that's smart. I was wondering whether there is a way for the bots to generate "unpredictable" domains such that security researchers could not predict them efficiently (even with source code), but the botnet controller can.

There is a fairly simple method which achieves the same advantage for a botnet controller.

1. Use a hash of the current day to derive, for that day, an infinite stream of domain names. This could be something as simple as `to_human_readable_domain(sha256(daily_hash + i))`.

2. A botnet slave attempts to access servers in a diagonal order over (days, domains), starting at the first domain for today and working backwards in days and forwards in domains. An image best describes what I mean by this: https://i.imgur.com/lcEbHwz.png

3. So long as one of those domains is controlled by the botnet operator (which can be verified using a signed response from the server), they can control the botnet.

This means that the botnet operator only needs to purchase one domain every couple of days to keep controlling their botnet, while someone trying to stop them will have to buy thousands and thousands every day.

And when you successfully purchase a domain you can publish the new domain to any connected slaves, so this scheme is only necessary for recruitment into the network, not continued control.


Here's the same image on a less horrible file hosting:

https://files.catbox.moe/gilmd1.png

Imgur has been inaccessible for me for months, they're one of those organizations that consider it proper to block whole countries to counter bot abuse.


Hmm, catbox used to be blocked for me too, but I can access it today. That's interesting.


I've definitely heard of cnc using a plural of domains for this reason. the bots have a list of domains they reach out to, searching for one that is valid.

I believe one issue with this strategy is many corporate VPNs block fresh domains. I guess if the software was pinned to use encrypted DNS instead of whatever the OS recommends, then the DNS blocking could be avoided...


How would a corporate DNS block new domains, exactly?


My employer uses Zscaler. I don't know exactly how they implement this, but my educated guess is the corporate DNS server doesn't resolve domains that were created recently.

In technical terms, the device asks the private corporate DNS server for the IP address of the hostname. The private DNS server checks the requested domain against a threat intelligence feed that tracks domain registration dates (and security risks). If the domain is deemed a threat, either return an IP address which points at a server that shows a warning message (if http traffic) or return an invalid IP (0.0.0.0).


A firewall. For example, Palo Alto firewalls can easily be configured to block domains newer than ~30 days old.

https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?...


Have a cache of domains you know about with registration date.

When getting a query for a domain you have not heard about, query whois for it. Store it's registration date in the cache.


there are tools pretty good at detecting DGAs these days, but not often implemented.

the best thing to do afaik is use services normal user shave access to, and communicate via those. its hard to tell for anyone who's extracting the data from the third party so the server is hidden. (e.g bot posts images to twitter, and server scrapes the images from twitter, this is also already old news but easier and more likely to sail through that next gen firewall -_-)

i'd say having ur 'own' servers and domains is maybe even a bit dated ( though sadly still very effective!)


It's one of many possible strategies. Any one strategy can be blocked if it's used by enough malicious actors (e.g. Twitter can be forced to block base64 tweets); if they all use different strategies, it becomes harder to justify blocking each individual one.


you either need whitelisting, which ppl dont want because they need to send tweets and sync gdrive on their corpo laptops ;')...

so i guess that leaves u with modeling normal user behavior to spot anomalies without the actual packet data being an indicator.

then the bots could piggyback on regular coms still, but it'd definitely raise the bar...


I can see a future where Cloudflare or similar offer a DNS + proxy + Root CA combo to intercept these. Maybe they already do.


If I’m remembering correctly, Conficker was the first major use of this technique. They used a relatively small domain pool (250) so the registries were able to lock them up preemptively.

I remember a couple legitimate sites getting slammed by accidental DDOS because the algorithm happened to generate their domain, but having a hard time finding a reference to that.

https://en.m.wikipedia.org/wiki/Conficker


Quad9 (the subject of this post) already offers ‘threat blocking’ by default.

https://quad9.net/service/threat-blocking/


That might work for the current generation of bots, but it will become infeasible when the domain names are generated in such a way that they overlap with spellable and existing domain names.


> it will become infeasible when the domain names are generated in such a way that they overlap with spellable and existing domain names.

And why do you believe this will even happen?


Use a hash chain!

Each time you resolve, the resulting IP can be part of the hash for predicting a future hostname.


Why do we need AI for that? Can’t we just strip html tags?


You could do that, actually. I brought up AI because it could result in slightly cleaner output than just the naive de-tagging, and because you can use it for general purpose text tasks - not just HTML to plaintext but also semantic message labelling/search, suggestion of task items in a to-do list, maybe some other things too.


Can't wait for half of my emails being hallucinated


You’re basically asking people to do your homework for you at this point…


He said it is a matter of copy+paste, not work.

I don't think so as I did not get it to run. And if he really can accomplish it with copy+paste, why wouldn't he demonstrate it?


Because he doesn't want to do that for you for free I guess :)

"Tap with a hammer: $1. Knowing where to tap: $9999."


You don’t need an LLM to do that. The code in there is almost complete…


Listen buddy, I need an LLM to tie my shoes, don't be so judgemental.


Blogspam


The drying is awful in my Toto, it's not enough air pressure. It'd take 20+ min to dry completely. It's nothing like those hand dryers in public bathrooms.


Maybe Toto and Dyson should collaborate!


Fully refundable tickets are an entirely different fare (and much more expensive)


Do you have any examples of a one way direct being more expensive than a round trip, with both of them sharing the same outgoing flight?


I had this a year ago on ZRH->SFO.

One way business 6,032 Swiss francs.

Round trip business (with a return 6 months later) was 2,530 Swiss francs. So I screenshotted the horrible one-way price to go in my expense report, and then booked the round trip ticket.


> So I screenshotted the horrible one-way price to go in my expense report, and then booked the round trip ticket.

So… you committed fraud? Cool?

I’m all for sticking it to the corporate overlords, but careful how far out you stick your neck.


No, I was meant to book a one-way ticket, since I was moving offices. But I had to have evidence to show that booking round-trip was cheaper in case anyone questioned why I had purchased round-trip instead of one-way.


Try London to Washington, DC and watch your eyes pop

You might be able to find an airline where it doesn't happen, but you will definitely find airlines where it does. Just verified with Delta and British airways and Lufthansa


If you're not seeing them you're probably looking at domestic or nearby routes. Try transatlantic.


US to Europe open jaw can be weird. I've done somewhat crazy return to origin European city (typically Heathrow) to avoid. And then I've had times when it's been perfectly reasonable.


It’s not uncommon with flights to Europe. I believe within the US it doesn’t happen though.


Sounds like you’re only fine with it because you personally benefit from it.


Or it could just be a certain way of framing things?

But for the benefit of this debate I'll state my bias. Almost all my travel is as a group.

But in most other facets of life, we save by buying more, right? (buying wholesale, buying bulk, etc).

So I've actually had the other feeling... if I'm buying 4 tickets at once, can I get a bit of a volume discount? And I'm not sure that's what the airlines are doing here (I don't ascribe any altruism, it's probably more that families were getting cold feet with increasing prices), but I like that I get some kind of cheaper rate when I'm buying 4x of something, just like in just about every other purchase in life.


How about: each user creates an account with their legal ID. Obviously unique so they can’t create multiple using the same ID. Before the sale, everyone signs up. Once the sale is started, tickets are distributed using a lottery system for the users who signed up (so refreshing like mad doesn’t give any advantage). Can only buy up to 2 tickets per person (their own and an anonymous companion). ID must be shown and would be verified at entrance.

If you wanna be even more strict: You could allow up to X companions, but they must not have signed up with their own account (so they don’t have an advantage for doing so). And they must provide their ID before the event as well and arrive as a single party.


I think you just described something similar to the Japanese system


I'm asked for ID on MercadoLivre and PayPal already, but I think it's for tax purposes. Never tried to create two accounts with the same tax ID.


I think legal eID + some kind of zero knowledge proof that provides anonymization could provide the solution here.


This addresses some of the hassle around buying multiple tickets, but does not address the inherent privacy issues. But there are still some problems.

First of all, this remains a hassle in most countries, since handling a national identity number (if such a number exists at all) is restricted by law. Even in some countries that do not legally restrict collection or storage of identity numbers (AFAIK the US does not restrict private sector usage of SSNs), there is rarely wide acceptance of providing your identity number for any purpose other than official government services and financial institutions. This means that in most cases, the event organizer has to resort to more traditional methods of KYC: Requesting some personal details (e.g. full name and birth date) and requiring to present an identity document that carries the details above. Verifying the identity document adds slows down entrance lines and increases the cost.

The other issue with this method is privacy. You're still not breaking the suggested BAP (Bots-resistance/Accessibility/Privacy) theorem suggested by the article. Additional personal information has to be collected and stored until the time of the event.

But I believe there is a way out of this. You can still create a limited resource that is more restricted than phone numbers or credit card numbers, and can be optionally verified at the venue cheaply. The only problem is that would require cooperation from the government (and a great deal of effort if you want to make it perfect). The government needs to already have an online digital KYC method that is bound to your digital ID or an online government account. Then the government can use that method to provide an anonymous federated login that provides a unique ID that cannot be traced back to any national identity number. This is essentially how Sign in with Apple works with "Hide My Email" selected: No personally identifying claims are included in the Open ID Connect ID Token and "sub" is unique (per Apple user + 3rd party service combination), but not traceable back to the the original Apple identity. Unique identities can also become ad-hoc per-event (instead of per ticket provider), which makes them completely private (ticket providers cannot track users across multiple events).

At described above, this service still only provides a limited resource akin to phone numbers. For events where the profit margin from ticket scalping exceeds $100, you could still get some scalpers who'd convince collaborators to identify in with their government account and buy tickets for the scalper for $20 per ticket. If you can get 5 tickets per ID, that's $100 of easy money for 5 minutes of work. You can add simple and fast verification at the venue by requiring the users to generate a QR code that is tied to their unique ID at the venue in order to enter. The QR code cannot be generated in advance and is based on a challenge QR that is presented at the venue. This requires collaborators would have to physically come to the venue or be available at the time the scalper's agents come to redeem the paper tickets at the venue. With a QR code generation and check directly at the gate, scalping is completely impossible (at the cost of longer lines and less entrance flexibility). With printed tickets the scalper needs to send agents to physically collect the tickets and communicate with the collaborators (who need to be available at the day of the event to generate the QR codes remotely) — which greatly inflates the cost of scalping.

Even when you get governments to cooperate with this approach, there are still some holes with this approach. The first issue is that eKYC needs to become popular enough to avoid a large loss in sales. The second issue is raising awareness with regards to privacy-preserving eKYC vs. regular eKYC. This two services look very similar (you log-in with your government account or ID to prove your identity), but the scope of the information shared couldn't be more different. Normalizing eKYC carries the risk of people becoming careless about divulging private information. Luckily, this could easily be solved by governments restricting private sector parties to which full eKYC is provided based on their callback domain names and registered credentials (like OAuth client ID and client secret).

The last problem is the probably the most complex one to tackle: how would you accommodate tourists? After all a lot of the venues sell a large share (or even the majority) of their tickets to tourists. I can think of two possible answers.

The first approach is to fall back to a manual passport-based KYC process for tourists. Tourist ticket buyers would have to enter their name and passport number in advance and the passports would be verified in person at the venue. This can be slightly sped up with automatic passport scanners if the venue has a high volume of visitors that warrants the costs. This approach seems to be where China is going: the resident ID card is used for entrance to many places and even for buying railway tickets, but tourists just use their passports. This works well when the percentage of tourists is low, but at a venue which expects a high number of tourists you'll run into all the issues I've described above.

The other option is probably more of a pipe dream, but it would be nice if countries could issue a temporary (and restricted) eKYC account to visitors when they complete their ETA. Even countries without ETA can still offer a pre-registration system just for obtaining an eKYC account in advance. This eKYC account can be used to purchase tickets in the destination country in advance, but it would only be activated for generating gate QR codes when physically entering the country with the matching passport. The main limitation of this approach is that you must first obtain an ETA before purchasing tickets, but you'd usually already have concrete travel plans by the time you're purchasing the tickets.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: