Você não pode fazer isso usando apenas um arquivo de hosts. Quase todos os sites modernos exigem que um nome de domínio seja fornecido quando você se conectar ao endereço IP para permitir que vários sites sejam hospedados em um único endereço IP.
Para fazer o que você está tentando fazer, você precisa redirecionar seu tráfego por meio de um servidor proxy e modificar a solicitação. Você também precisará lidar com problemas de certificados HTTPS porque o site do Twitter não terá um certificado válido para os subdomínios do facebook.com.