Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 305694|Odpoveď: 99

[Konzolový program] .net/c# implementuje DNS únos zdrojového kódu

  [Kopírovať odkaz]
Zverejnené 10. 11. 2017 10:31:54 | | | |
Keďže internetové DNS prevzatie je bežné, je pre operátorov jednoduché implementovať DNS prevzatie, čo je to DNS únos? Baidu Encyklopédia je predstavená nasledovne:

DNS únos, známy aj ako únos doménových mien, označuje zachytávanie požiadaviek na riešenie doménových mien v rámci uneseného siete, analýzu požadovaných doménových mien a uvoľnenie požiadaviek mimo rozsahu preskúmania, inak vrátenie falošnej IP adresy alebo vykonanie nič, čo by požiadavku znefunkčnilo.


Dnes chcem prelomiť program, ktorý som napísal, program potrebuje http autentifikáciu, aby bežal normálne, takže prelomte program, môžete sfalšovať obsah http odpovede, aby si program myslel, že som autentifikovaný používateľ, falošná http odpoveď, existuje veľa metód, dnes som o tom premýšľal, či môžete použiť metódu DNS prevzatia na falšovanie zodpovedajúcej IP adresy domény, aby ste sfalšovali obsah http odpovede.

Na implementáciu DNS hijackingu je najjednoduchší spôsob hosts súbor, dnes je na internete veľa špecifických metód, poďme napísať DNS hijacking gadget v C#

Prvým krokom bolo, že sme vtedy napísali program a jeho účelom bolo program uviesťwww.itsvse.comParsovanie ukazuje na verziu 127.0.0.1, vytvoril som 80-portovú webovú stránku s IIS, nehovoriac o tomto kroku, zdrojový kód je dole.



Druhým krokom je upraviť DNS server stroja na verziu 127.0.0.1, ako je znázornené na obrázku nižšie:


Tretím krokom je spustiť program, ktorý sme napísali, a potom sa k nemu dostaneme cez webovú stránkuwww.itsvse.com, zistíte, že obsah vrátený webovou stránkou nie je obsahom našej skutočnej webovej stránky! Obsah inej webovej stránky bol úplne sfalšovaný, ako je uvedené nižšie:



Keď otvoríme Baidu, zistíme, že Baidu sa nedá otvoriť, pretože len reagujemewww.itsvse.comRiešenie požiadaviek na doménové mená je ignorované inými riešeniami doménových mien, ako je znázornené na obrázku nižšie:



Ako sa vysporiadať s prevzatiím DNS? Existuje mnoho spôsobov, ale existujú aj politiky a protiopatrenia, je kopija silná alebo štít mocný?

Haha, hotovo.

Stiahnutie zdrojového kódu:

Turisti, ak chcete vidieť skrytý obsah tohto príspevku, prosím.Odpoveď





Predchádzajúci:Keď XML spracováva SQL príkazy, spracováva transformáciu znamienok menšie ako a väčšie ako
Budúci:Rozdiel medzi ShadowsocksR a Shadowsocks
Zverejnené 27. 12. 2017 10:54:20 |
Tento príspevok naposledy upravil Zmoli775 dňa 27. 12. 2017 o 13:52

Keď otvoríme Baidu, zistíme, že Baidu sa nedá otvoriť, pretože len reagujemewww.itsvse.comRiešenie požiadaviek na doménové mená je ignorované inými riešeniami doménových mien, ako je znázornené na obrázku nižšie:
Môžete uniesť určenú URL? Zvyšok domény je prístupný normálne, ako to funguje!--- bol príliš neopatrný, nevenoval som pozornosť...



Zverejnené 12. 12. 2019 0:24:37 |
if (eventArgsQuery.Questions.Count == 1 & eventArgsQuery.Questions[0]. RecordType == RecordType.A)
                {
                    ak (domainnew == "www.test.com") // uniesť doménové meno QQ
                    {
                        Response.AnswerRecords.Add(new ARecord(eventArgsQuery.Questions[0]. Meno, 36000, IPAddress.Parse("192.168.15.15"))); Vráti vlastnú A platňu
                        Response.ReturnCode = ReturnCode.NoError;
                    }
                    else
                    {

                        this.richTextBox3.Text = this.richTextBox3.Text.Insert(0, DateTime.Now.ToString("yyyy MM dd HH:mm:ss.ffff"). ToString() + "--- požadovaná doména musí byť presmerovaná na verejný DNS dotaz" + Environment.NewLine);
                        DnsClient dnsClient = nový DnsClient(IPAddress.Parse("223.5.5.5"), 5000);
                        DnsMessage dnsMessage = dnsClient.Resolve(eventArgsQuery.Questions[0]. Meno, RecordType.A);

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

                        foreach (DnsRecordBase dnsRecord v dnsMessage.AnswerRecords)
                        {
                            ARecord aRecord = dnsRecord ako ARecord;
                            ak (aRecord != null)
                            {
                                Response.AnswerRecords.Add(new ARecord(eventArgsQuery.Questions[0]. Meno, 36 rokov, aRecord.Address)); Vráťte mu rekord 127.0.0.1, čo je stroj
                                Response.ReturnCode = ReturnCode.NoError;
                            }
                            else
                            {
                                pokračovať;
                            }
                        }



                    }
                }
 Prenajímateľ| Zverejnené 8. 12. 2017 15:47:28 |
Zverejnené 10. 11. 2017 10:45:14 |
Ďakujem za zdieľanie, dobré veci
Zverejnené 10. 11. 2017 10:49:29 |
Ďakujem za zdieľanie, zaujíma ma to
Zverejnené 10. 11. 2017 11:29:38 Z telefónu |
Nie, nie, nie, biela, nežná
Zverejnené 11. 11. 2017 1:49:29 |
Ďakujem, že ste sa podelili
Zverejnené 12. 11. 2017 14:33:21 |
Naučte sa učiť
Zverejnené 14. 11. 2017 16:05:10 |
RE: .net/c# 实现dns劫持源代码
Zverejnené 16. 11. 2017 10:41:11 |
Úžasné~~ Veľký chlap
Zverejnené 14. 12. 2017 16:26:31 |
Veľký bože, úžasný
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com