Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 305694|Odgovoriti: 99

[Konzolni program] .net/c# implementira DNS ugrabitev izvorne kode

  [Kopiraj povezavo]
Objavljeno na 10. 11. 2017 10:31:54 | | | |
Zdaj, ko je ugrabitev internetnega DNS-a pogosta, je za operaterje enostavno implementirati DNS ugrabitev, kaj torej pomeni DNS ugrabitev? Baidu enciklopedija je predstavljena takole:

DNS ugrabitev, znana tudi kot ugrabitev domene, se nanaša na prestrezanje zahtevkov za reševanje domen znotraj ugrabljenega omrežja, analizo zahtevanih domen in sproščanje zahtev izven obsega pregleda, sicer vrnitev lažnega IP naslova ali pa ne naredi ničesar, da bi zahtevo onemogočila.


Danes želim razbiti program, ki sem ga napisal, program potrebuje http avtentikacijo, da deluje normalno, zato lahko razbijem program, lahko ponaredite http odgovor, da program misli, da sem overjen uporabnik, lažni http odgovor, obstaja veliko metod, danes sem razmišljal, ali lahko uporabite metodo DNS za ponarejanje ustreznega IP naslova domene, da ponaredite http odgovor.

Za implementacijo DNS ugrabitve je najlažji način datoteka hosts, danes je na internetu veliko specifičnih metod, napišimo napravo za DNS ugrabitve v C#

Prvi korak je bil, da smo takrat napisali program, njegov namen pa je bil, da program predstavimowww.itsvse.comRazčlenjevanje kaže na 127.0.0.1, zgradil sem 80-portno spletno stran z IIS, da ne omenjam tega koraka, izvorna koda je na dnu.



Drugi korak je sprememba DNS strežnika naprave na 127.0.0.1, kot je prikazano na spodnji sliki:


Tretji korak je, da začnemo program, ki smo ga napisali, nato pa do njega dostopamo preko spletne straniwww.itsvse.com, boste ugotovili, da vsebina, ki jo vrne spletna stran, ni vsebina naše prave spletne strani! Vsebina druge spletne strani je popolnoma ponarejena, kot je prikazano spodaj:



Ko odpremo Baidu, bomo ugotovili, da Baiduja ni mogoče odpreti, ker samo odgovarjamowww.itsvse.comReševanje zahtevkov za domenska imena ignorirajo druge rešitve domen, kot je prikazano na spodnji sliki:



Kako se spopademo z DNS prevzimanjem? Obstaja veliko načinov, a obstajajo tudi politike in protiukrepi, ali je sulica močna ali ščit močan?

Haha, končano.

Prenos izvorne kode:

Turisti, če želite videti skrito vsebino te objave, prosimOdgovoriti





Prejšnji:Ko XML obdeluje SQL stavke, obdela transformacijo znakov manjše kot in večje kot
Naslednji:Razlika med ShadowsocksR in Shadowsocks
Objavljeno na 27. 12. 2017 10:54:20 |
To objavo je nazadnje uredil Zmoli775 27. 12. 2017 ob 13:52

Ko odpremo Baidu, bomo ugotovili, da Baiduja ni mogoče odpreti, ker samo odgovarjamowww.itsvse.comReševanje zahtevkov za domenska imena ignorirajo druge rešitve domen, kot je prikazano na spodnji sliki:
Ali lahko prevzamete določeni URL? Preostanek domene je dostopen normalno, kako to narediti!--- bil preveč nepazljiv, nisem bil pozoren...



Objavljeno na 12. 12. 2019 00:24:37 |
if (eventArgsQuery.Questions.Count == 1 & eventArgsQuery.Questions[0]. ZapisTip == ZapisTip.A)
                {
                    if (domainnew == "www.test.com") // ugrabi domeno QQ
                    {
                        Response.AnswerRecords.Add(new ARecord(eventArgsQuery.Questions[0]. Ime, 36000, IPAddress.Parse("192.168.15.15"))); Vrne prilagojeno A ploščo
                        Response.ReturnCode = ReturnCode.NoError;
                    }
                    else
                    {

                        this.richTextBox3.Text = this.richTextBox3.Text.Insert(0, DateTime.Now.ToString("yyyy MM dd HH:mm:ss.ffff"). ToString() + "--- zahtevana domena mora biti posredovana na javni DNS poizvedbo" + Environment.NewLine);
                        DnsClient dnsClient = novi DnsClient(IPAddress.Parse("223.5.5.5"), 5000);
                        DnsMessage dnsMessage = dnsClient.Resolve(eventArgsQuery.Questions[0]. Ime, RecordType.A);

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

                        foreach (DnsRecordBase dnsRecord v dnsMessage.AnswerRecords)
                        {
                            ARecord aRecord = dnsRecord kot ARecord;
                            if (aRecord != null)
                            {
                                Response.AnswerRecords.Add(new ARecord(eventArgsQuery.Questions[0]. Ime, 36 let, aRecord.Address)); Vrni mu rekord 127.0.0.1, ki je stroj
                                Response.ReturnCode = ReturnCode.NoError;
                            }
                            else
                            {
                                nadaljuj;
                            }
                        }



                    }
                }
 Najemodajalec| Objavljeno na 8. 12. 2017 15:47:28 |
Objavljeno na 10. 11. 2017 10:45:14 |
Hvala, ker si delil, super stvari
Objavljeno na 10. 11. 2017 10:49:29 |
Hvala, ker si delil, zanima me
Objavljeno na 10. 11. 2017 11:29:38 Iz telefona |
Ne, ne, ne, belo, nežno
Objavljeno na 11. 11. 2017 01:49:29 |
Hvala, ker si delil
Objavljeno na 12. 11. 2017 14:33:21 |
Uči se učiti
Objavljeno na 14. 11. 2017 16:05:10 |
RE: .net/c# 实现dns劫持源代码
Objavljeno na 16. 11. 2017 10:41:11 |
Neverjetno~~ Velik fant
Objavljeno na 14. 12. 2017 16:26:31 |
Veliki bog, neverjetni
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com