Making websites use proxies?
La domanda è sbagliata. Un server web non usa un proxy. Un server web sta solo ascoltando le connessioni in entrata. Invece il client che si connette al server può utilizzare consapevolmente o in modo trasparente un proxy che inoltra il traffico dei client originali al server e la risposta dal server al client.
Quindi la domanda non è come rendere il tuo sito web un proxy ma come fare in modo che il client usi un proxy per connettersi al sito web. Questo può essere fatto dando al proxy il nome di dominio che il tuo sito dovrebbe avere in modo che il client possa effettivamente connettersi al proxy quando prova a connettersi al tuo sito. Il proxy quindi ha bisogno di sapere dove inoltrare il traffico, cioè deve conoscere il nome nascosto del sito o il suo indirizzo IP o avere una connessione VPN o simile al sito nascosto. E il tuo sito nascosto meglio accetta solo connessioni dal proxy e da nessun'altra parte.
Per ottenere tale configurazione è necessario avere il controllo sui proxy in modo che rispondano al nome di dominio del proprio sito e sappiano dove inoltrare il traffico. Oppure consegni la gestione delle parti rilevanti del dominio ai proprietari del proxy, come fatto in caso di CDN come Cloudflare. E naturalmente il tuo indirizzo IP nascosto è noto sul proxy e potrebbe essere disponibile per le forze dell'ordine a seconda di dove si trova il tuo proxy e quale legge può essere applicata lì.
That way, it would never get blocked as I could keep adding new proxies for it to use.
Questo è vero solo se il blocco si basa sull'indirizzo IP. Dato che è comune avere più domini sullo stesso indirizzo IP oggi questo tipo di blocco può facilmente comportare il blocco anche di domini innocenti (es. Overblocking) ed è per questo che i modi moderni per bloccare i siti web si affidano invece al dirottamento della ricerca DNS per i siti e restituire che il dominio non esiste o l'indirizzo IP di un sito di blocco invece. Pertanto, non solo utilizzerai un proxy diverso per tutto il tempo, ma cambierai anche il nome del tuo dominio e in qualche modo diffonderai il nuovo nome di dominio a tutti coloro che desiderano visitare il tuo sito.
Oppure potresti contare su un'infrastruttura diversa per mappare i nomi in indirizzi IP, come Dot-Bit (namecoin) . Solo l'uso di questi sistemi alternativi richiede quindi un'ulteriore configurazione su ciascun client sotto forma di estensioni del browser o server DNS locali che sono in grado di risolvere questi domini speciali.
Naturalmente, se hai il pieno controllo sui client (ad esempio nel caso in cui stai implementando la comunicazione C2 all'interno del tuo malware), non sei vincolato dai metodi tradizionali di ricerca del proxy corretto. Ma questo si spera non sia il tuo caso d'uso.