Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 305694|Répondre: 99

[Programme Console] .net/c# implémente le code source du détournement DNS

  [Copié le lien]
Publié sur 10/11/2017 10:31:54 | | | |
Maintenant que le détournement DNS Internet est courant, il est facile pour les opérateurs de mettre en œuvre un détournement DNS ; qu’est-ce que le détournement DNS ? L’Encyclopédie Baidu est présentée comme suit :

Le détournement DNS, également appelé détournement de nom de domaine, consiste à intercepter les requêtes de résolution de noms de domaine au sein du réseau détourné, à analyser les noms de domaine demandés, puis à libérer les requêtes hors du champ d’examen, sinon à retourner une fausse adresse IP ou à ne rien faire pour rendre la requête non réactive.


Aujourd’hui, je veux craquer le programme que j’ai écrit, le programme a besoin d’une authentification http pour fonctionner normalement, donc craque le programme, vous pouvez falsifier le contenu de la réponse http, pour faire croire au programme que je suis un utilisateur authentifié, fausse réponse http, il existe de nombreuses méthodes, aujourd’hui j’y ai réfléchi, pouvez-vous utiliser la méthode de détournement DNS pour falsifier l’adresse IP correspondante du nom de domaine, afin de falsifier le contenu de la réponse http ?

Pour mettre en œuvre le détournement DNS, le moyen le plus simple est le fichier hôte, il existe de nombreuses méthodes spécifiques sur Internet, aujourd’hui, écrivons un gadget de détournement DNS en C#

La première étape a été que nous avons écrit le programme à ce moment-là, et le but du programme était de le mettre en placewww.itsvse.comL’analyse analyse indique la version 127.0.0.1, j’ai construit un site web à 80 ports avec IIS, sans parler de cette étape, le code source est en bas.



La deuxième étape consiste à modifier le serveur DNS de la machine vers 127.0.0.1, comme montré dans la figure ci-dessous :


La troisième étape consiste à lancer le programme que nous avons écrit, puis à y accéder via le site webwww.itsvse.com, vous constaterez que le contenu renvoyé par le site web n’est pas celui de notre vrai site web ! Le contenu d’une autre page web a été entièrement falsifié, comme montré ci-dessous :



Lorsque nous ouvrons Baidu, nous constaterons que Baidu ne peut pas être ouvert car nous ne faisons que répondrewww.itsvse.comLa résolution des requêtes de noms de domaine est ignorée par d’autres résolutions de noms de domaine, comme montré dans la figure ci-dessous :



Comment gérer le détournement DNS ? Il y a de nombreuses façons, mais il y a des politiques et des contre-mesures : la lance est-elle forte ou le bouclier est-il puissant ?

Haha, c’est fini.

Téléchargement du code source :

Touristes, si vous voulez voir le contenu caché de ce post, s’il vous plaîtRépondre





Précédent:Lorsque XML traite des instructions SQL, il traite la transformation des signes de moins que et de plus que
Prochain:Différence entre ShadowsocksR et Shadowsocks
Publié sur 27/12/2017 10:54:20 |
Ce post a été modifié pour la dernière fois par Zmoli775 le 27-12-2017 à 13:52

Lorsque nous ouvrons Baidu, nous constaterons que Baidu ne peut pas être ouvert car nous ne faisons que répondrewww.itsvse.comLa résolution des requêtes de noms de domaine est ignorée par d’autres résolutions de noms de domaine, comme montré dans la figure ci-dessous :
Pouvez-vous détourner l’URL désignée ? Le reste du nom de domaine peut être accessible normalement, comment faire fonctionner cela !--- était trop négligent, je n’ai pas fait attention...



Publié sur 12/12/2019 00:24:37 |
if (eventArgsQuery.Questions.Count == 1 & eventArgsQuery.Questions[0]. RecordType == RecordType.A)
                {
                    if (domainnew == « www.test.com ») // détourne le nom de domaine QQ
                    {
                        Response.AnswerRecords.Add(new ARecord(eventArgsQuery.Questions[0]. Nom, 36000, IPAddress.Parse(« 192.168.15.15 »))) ; Retourne un enregistrement A personnalisé
                        Response.ReturnCode = ReturnCode.NoError ;
                    }
                    sinon
                    {

                        this.richTextBox3.Text = this.richTextBox3.Text.Insert(0, DateTime.Now.ToString(« yyyy MM dd HH :mm :ss.ffff »). ToString() + « --- domaine demandé doit être transféré vers une requête DNS publique » + Environment.NewLine) ;
                        DnsClient dnsClient = new DnsClient(IPAddress.Parse(« 223.5.5.5 »), 5000) ;
                        DnsMessage dnsMessage = dnsClient.Resolve(eventArgsQuery.Questions[0]. Nom, RecordType.A) ;

/////请教一下楼主,这个地方请求不到信息,如何解决?谢谢

                        foreach (DnsRecordBase dnsRecord dans dnsMessage.AnswerRecords)
                        {
                            ARecord aRecord = dnsRecord en tant qu’ARecord ;
                            if (aRecord != null)
                            {
                                Response.AnswerRecords.Add(new ARecord(eventArgsQuery.Questions[0]. Nom, 36 ans, un Enregistrement. Adresse)) ; Rendez-lui un record de 127.0.0.1, qui est la machine
                                Response.ReturnCode = ReturnCode.NoError ;
                            }
                            sinon
                            {
                                continuer ;
                            }
                        }



                    }
                }
 Propriétaire| Publié sur 08/12/2017 15:47:28 |
Publié sur 10/11/2017 10:45:14 |
Merci d’avoir partagé, c’est super
Publié sur 10/11/2017 10:49:29 |
Merci de partager, je suis intéressé
Publié sur 10/11/2017 11:29:38 Depuis le téléphone |
Non, non, non, blanc, tendre
Publié sur 11/11/2017 01:49:29 |
Merci de partager
Publié sur 12/11/2017 14:33:21 |
Apprendre à apprendre
Publié sur 14/11/2017 16:05:10 |
RE: .net/c# 实现dns劫持源代码
Publié sur 16/11/2017 10:41:11 |
Incroyable~~ Gros gars
Publié sur 14/12/2017 16:26:31 |
Grand dieu, incroyable
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com