Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 305694|Antwort: 99

[Konsolenprogramm] .net/c# implementiert DNS-Hijacking-Quellcode

  [Link kopieren]
Veröffentlicht am 10.11.2017 10:31:54 | | | |
Da Internet-DNS-Hijacking nun verbreitet ist, ist es für Betreiber einfach, DNS-Hijacking umzusetzen – was ist DNS-Hijacking? Die Baidu-Enzyklopädie wird wie folgt eingeführt:

DNS-Hijacking, auch bekannt als Domainnamen-Hijacking, bezeichnet das Abfangen von Domain-Namen-Auflösungsanfragen innerhalb des kaperten Netzwerks, die Analyse der angeforderten Domainnamen und das Freigeben von Anfragen außerhalb des Prüfungsbereichs, ansonsten wird eine gefälschte IP-Adresse zurückgegeben oder die Anfrage wird nicht mehr reaktiv gemacht.


Heute möchte ich das Programm knacken, das ich geschrieben habe. Das Programm benötigt eine HTTP-Authentifizierung, um normal zu laufen, also knacke das Programm, du kannst den HTTP-Antwort-Inhalt fälschen, damit das Programm denkt, ich sei ein authentifizierter Nutzer, gefälschte HTTP-Antwort. Es gibt viele Methoden. Heute habe ich darüber nachgedacht: Kannst du die DNS-Hijacking-Methode verwenden, um die entsprechende IP-Adresse des Domainnamens zu fälschen, um den HTTP-Antwortinhalt zu fälschen.

Um DNS-Hijacking umzusetzen, ist der einfachste Weg die Hosts-Datei. Es gibt viele spezifische Methoden im Internet. Heute schreiben wir ein DNS-Hijacking-Gerät in C#.

Der erste Schritt war, dass wir das Programm damals schrieben, und der Zweck des Programms war, das Programm zu veröffentlichenwww.itsvse.comDas Parsing weist auf 127.0.0.1 hin, ich habe eine 80-Port-Website mit IIS erstellt, ganz zu schweigen von diesem Schritt, der Quellcode ist ganz unten.



Der zweite Schritt besteht darin, den DNS-Server der Maschine auf 127.0.0.1 zu modifizieren, wie in der untenstehenden Abbildung gezeigt:


Der dritte Schritt ist, das von uns geschriebene Programm zu starten und dann über die Website darauf zuzugreifenwww.itsvse.com, werden Sie feststellen, dass der von der Website zurückgegebene Inhalt nicht der Inhalt unserer echten Website ist! Der Inhalt einer anderen Webseite wurde vollständig gefälscht, wie unten gezeigt:



Wenn wir Baidu öffnen, werden wir feststellen, dass Baidu nicht geöffnet werden kann, weil wir nur reagierenwww.itsvse.comDie Auflösung von Domainnamensanfragen wird von anderen Domainnamen-Lösungen ignoriert, wie in der untenstehenden Abbildung gezeigt:



Wie gehen wir mit DNS-Hijacking um? Es gibt viele Wege, aber es gibt Richtlinien und Gegenmaßnahmen – ist der Speer stark oder der Schild mächtig?

Haha, fertig.

Quellcode-Download:

Touristen, wenn ihr den versteckten Inhalt dieses Beitrags sehen wollt, bitteAntwort





Vorhergehend:Wenn XML SQL-Anweisungen verarbeitet, wird die Transformation von Kleiner- und Größer-als-Zeichen verarbeitet
Nächster:Unterschied zwischen ShadowsocksR und Shadowsocks
Veröffentlicht am 27.12.2017 10:54:20 |
Dieser Beitrag wurde zuletzt am 27.12.2017 um 13:52 Uhr von Zmoli775 bearbeitet

Wenn wir Baidu öffnen, werden wir feststellen, dass Baidu nicht geöffnet werden kann, weil wir nur reagierenwww.itsvse.comDie Auflösung von Domainnamensanfragen wird von anderen Domainnamen-Lösungen ignoriert, wie in der untenstehenden Abbildung gezeigt:
Kannst du die zugewiesene URL kapern? Der Rest der Domain kann normal abgerufen werden, wie funktioniert das!--- war zu unachtsam, ich habe nicht aufgepasst...



Veröffentlicht am 12.12.2019 00:24:37 |
if (eventArgsQuery.Questions.Count == 1 && eventArgsQuery.Questions[0]. RecordType == RecordType.A)
                {
                    wenn (domainnew == "www.test.com") // die QQ-Domain kapert.
                    {
                        Response.AnswerRecords.Add (neuer ARecord(eventArgsQuery.Questions[0]. Name, 36000, IPAddress.Parse ("192.168.15.15"))); Gibt einen benutzerdefinierten A-Datensatz zurück
                        Response.ReturnCode = ReturnCode.NoError;
                    }
                    oder
                    {

                        this.richTextBox3.Text = this.richTextBox3.Text.Insert(0, DateTime.Now.ToString("yyyy MM dd HH:mm:ss.ffff"). ToString() + "--- angeforderte Domain muss an eine öffentliche DNS-Abfrage weitergeleitet werden" + Environment.NewLine);
                        DnsClient dnsClient = neuer DnsClient(IPAddress.Parse("223.5.5.5"), 5000);
                        DnsMessage dnsMessage = dnsClient.Resolve(eventArgsQuery.Questions[0]. Name, RecordType.A);

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

                        foreach (DnsRecordBase dnsRecord in dnsMessage.AnswerRecords)
                        {
                            ARecord aRecord = dnsRecord als ARecord;
                            wenn (aRecord != null)
                            {
                                Response.AnswerRecords.Add (neuer ARecord(eventArgsQuery.Questions[0]. Name, 36, aRecord.Address)); Gib ihm einen Rekord von 127.0.0.1 zurück, was die Maschine ist
                                Response.ReturnCode = ReturnCode.NoError;
                            }
                            oder
                            {
                                Fahren Sie fort;
                            }
                        }



                    }
                }
 Vermieter| Veröffentlicht am 08.12.2017 15:47:28 |
Veröffentlicht am 10.11.2017 10:45:14 |
Danke fürs Teilen, tolle Sachen
Veröffentlicht am 10.11.2017 10:49:29 |
Danke fürs Teilen, ich bin interessiert
Veröffentlicht am 10.11.2017 11:29:38 Vom Telefon |
Nein, nein, nein, weiß, zart
Veröffentlicht am 11.11.2017 01:49:29 |
Danke fürs Teilen
Veröffentlicht am 12.11.2017 14:33:21 |
Lernen lernen
Veröffentlicht am 14.11.2017 16:05:10 |
RE: .net/c# 实现dns劫持源代码
Veröffentlicht am 16.11.2017 10:41:11 |
Unglaublich~~ Großer Kerl
Veröffentlicht am 14.12.2017 16:26:31 |
Großer Gott, erstaunlich
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com