Parogramlamadan ve Veri tabanından Anlayanlar Bakabilirler mi !

Mafia1453

Katılımcı Üye
17 Eki 2013
400
1
Nereye...
Arkadaşlar merhaba bi program yapıcam resimdede görüğünüz gibi



Programımı yaparken diyelim server oluşturdum gönderdim arkadaşlarıma onlar serveri biliyor ve kullanıyor (Kötü amaçlı bir server değil örnek olsun diye dedim) ben kontrol programından diyelim 10 kişide server var ve hepsine aynı anda mesaj göndermek istiyorum "MERHABA" diye bunun için ne lazım winsock yada tcp socket demeyin lütfen bunlar iki program arası için kullanılıyor ve vb.nette yapıcam bu programı kodunu istemiyorum sadice nasıl hepsine bağlanıcam yardımcı olursanız sevinirim :)
 

hamush

Katılımcı Üye
26 Haz 2012
635
1
Aynı network'te iseniz broadcast ip'sine mesaj gönderirdin hepsine giderdi ama... bu her yerde çalışmalı ise özel bir teknik yok panpa.. Sırayla bağlanacaksın System.Net.Sockets.TCPClient veya System.Net.Sockets.Socket kullanarak.. Veya alt sunucular sana bağlanacak, bağlandıklarında socket'leri bir List<Socket> içinde tutacaksın, hepsine tek tek göndereceksin mesajı...

VB.Net dedin olmadı yaa, gripten ölüyorum hasta hasta Vb.NET'te program yazılmaz şimdi.. C# olsa olmaz mı?
 

ShooterLens

Uzman üye
2 Haz 2013
1,362
0
Aynı network'te iseniz broadcast ip'sine mesaj gönderirdin hepsine giderdi ama... bu her yerde çalışmalı ise özel bir teknik yok panpa.. Sırayla bağlanacaksın System.Net.Sockets.TCPClient veya System.Net.Sockets.Socket kullanarak.. Veya alt sunucular sana bağlanacak, bağlandıklarında socket'leri bir List<Socket> içinde tutacaksın, hepsine tek tek göndereceksin mesajı...

VB.Net dedin olmadı yaa, gripten ölüyorum hasta hasta Vb.NET'te program yazılmaz şimdi.. C# olsa olmaz mı?

C# vb.net ile aynı kolaylıkta.
Kos koca C#dururken neden VB.net diye bir şeyde program yazıyorlar anlamıyorum.
Vb.net'e dil bile demem ben.
Hack işleri büyük işler,o işlerde sağlam dil kullanmak gerekir,C# C++ dışındaki dillerde yavaş çalışıyor,veya bir süre sonra patlıyor.
 

hamush

Katılımcı Üye
26 Haz 2012
635
1
Yok arkadaşın ödevi veya projesi sanırım bu, yani 'seve seve' vb.net kullanacak ise vb.net'ten de yazarız. Ama C# veya vb.NET demiştir hoca, o zaman benim hazır bağlantı class'ım var, bi 5 10 dakikada yazıp gönderiverirdim onun için sordum...
 

Mafia1453

Katılımcı Üye
17 Eki 2013
400
1
Nereye...
Aynı network'te iseniz broadcast ip'sine mesaj gönderirdin hepsine giderdi ama... bu her yerde çalışmalı ise özel bir teknik yok panpa.. Sırayla bağlanacaksın System.Net.Sockets.TCPClient veya System.Net.Sockets.Socket kullanarak.. Veya alt sunucular sana bağlanacak, bağlandıklarında socket'leri bir List<Socket> içinde tutacaksın, hepsine tek tek göndereceksin mesajı...

VB.Net dedin olmadı yaa, gripten ölüyorum hasta hasta Vb.NET'te program yazılmaz şimdi.. C# olsa olmaz mı?

benim bildiğim vb.net ama C# ta sorun olmaz kısa sürede öğrenirim sadice noktalama farkı var zaten :D
 

hamush

Katılımcı Üye
26 Haz 2012
635
1
C# olur diyorsan... mesela bu asıl sunucu kısmı... Asıl sunucu kendine diğer elemanların bağlanmasına izin veriliyor ve ekrandan yazılan her satırı onlara gönderiyor...

Kod:
        private static List<System.Net.Sockets.Socket> baglananlar = new List<System.Net.Sockets.Socket>(); //bağlanan listesini burada tutarız.
        private static v oid dinle() //bu ayrı bir thread'de kendisine bağlanan diğer server'ları dinleyecek...
        {
            System.Net.Sockets.TcpListener listener = new System.Net.Sockets.TcpListener(1453); //1453'ten standart TCP listener aç...
            listener.Start(); //dinlemeye başla...
            while (true) try //ben konsolu kapatana kadar dinlemeye devam edecek... ondan dolayı sonsuz döngü başlatıyoruz...
                {
                    baglananlar.Add(listener.AcceptSocket());//gelen bağlantının soketini bağlananlar listesi içine atıyoruz.
                    // thread safety, lock etmek gereksiz.. diğer kısımlarda listede bir client varsa işlem yapıp, yoksa yapmıyoruz.
                }
                catch { } //hata çıkmayacak bu kısımda, gene de alışkanlık try catch içine aldım..
        }
        static v oid Main(string[] args)
        {
            System.Threading.Thread dinlemeThread= new System.Threading.Thread(dinle); //dinle fonksiyonunun işlemini yapan bir thread başlatıyoruz.
            dinlemeThread.Start();
            while (true) //gene sonsuz döngü, işlem biz konsol penceresini kapatana kadar sürecek...
            {
                byte[] mesaj=System.Text.Encoding.GetEncoding(1254).GetBytes(Console.ReadLine()+"\r\n"); //konsoldan bir satır oku... Bu satırı türkçe unicode karakter sayfasına göre direk byte array'e çevir...
                dinlemeThread.Suspend(); // ben mesajları gönderirken mesaj listesine yeni eleman ekleyip kafamı karıştırma. Bağlanan azıcık beklesin..
                for (int i = 0; i < baglananlar.Count; i++) try //bütün bağlananlar için gönderme işlemi yapılacak.. foreach değil for, neden? çünkü bir client kopmuşsa bunu algılayıp o client'ı listeden çıkaracağız. foreach kullanırsan o enumerasyonu aynı anda manipule edemezsin.
                    {
                        baglananlar[i].Send(mesaj);
                    }
                    catch
                    {
                        System.Net.Sockets.Socket client = baglananlar[i];
                        baglananlar.RemoveAt(i); // bir sorun oldu... bu client'ı çıkarıver...
                        i--; // ortadan bir client çıkınca kalan liste bir geri kaydı.. biz de baktığımız sayıyı bir geri kaydırırız.
                        try
                        {
                            client.Close(); //gene de bu taraftan da kapatmaya bir çalış soketi....
                        }
                        catch { }
                    }
                dinlemeThread.Resume(); //duraklattığımız dinleme thread'ini tekrar çalıştırabiliriz.
            }
        }
"v oid" yazılarında boşluğu silersin, yoksa forum onları sansürlüyor.. bu kodu herhangi bir standart console application class'ı içine direk paste edebilirsin...

Bir sigara alıp geleyim, sonra istersen client kodunu da yazarım... Nassolsa gripten geberiyorum, bir yere çıkacak, başka bir halt yapacak halim yok.

Edit: Suspend edersen bir thread'i, resume de etmelisin.. orayı unutmuşum onu ekledim...
Edit 2: Console.ReadLine() okunan satırın sonundaki carriage return ve linefeed'i "\r\n" keser. Onları geri koydum ki client okurken satırın bittiğini anlasın.

Aşağıda da client program...

Kod:
        static **** Main(string[] args)
        {
            Console.Write("Bağlanılacak sunucu adresini giriniz: ");
            string sunucu=Console.ReadLine();
            bool ilkBaglanti=true; //İlk bağlantıdan sonra özel bir mesaj atalım her bağlanışında...
            while (true) // gene sonsuz döngü, biz kapatana kadar kopsa da tekrar bağlanmaya çalışsın..
            {
                if (ilkBaglanti) ilkBaglanti = false; //ilk kez bağlanmışsak değeri false yapalım ki bir dahaki sefere else bloğuna girsin..
                else Console.WriteLine("*** Yeniden bağlanıyor... ***");
                System.Net.Sockets.TcpClient client = new System.Net.Sockets.TcpClient(sunucu, 1453); //Okuduğumuz satıra, 1453. porttan bağlandık.
                System.IO.StreamReader reader=new System.IO.StreamReader(client.GetStream(),System.Text.Encoding.GetEncoding(1254));//bağlandığımız client'ın streamini bir streamreader ile satır satır okuyacağız.
                while (true) try //gene sonsuz döngü, mesaj geldiği sürece al mesajı...
                    {
                        string satir;
                        while ((satir = reader.ReadLine()) != null) Console.WriteLine(satir);//satır okuyabildikçe (okuyamazsa satir null olarak döner) okuduğu bütün satırları yazsın...
                        System.Threading.Thread.Sleep(100); //karşıdan mesaj gelmiyorsa, bit kadar beklesin...
                    }
                    catch
                    {
                    }
            }
        }
 
Son düzenleme:

ShooterLens

Uzman üye
2 Haz 2013
1,362
0
Hack işiylemi ilgileniyorsunuz ?
Amacınız hackerlik ise,C#,vb.net dili hackerler için yapılmamıştır,C#,vb.net dilinin amacı ilk olarak muhasebe programları yapmak,yani işi kolaylaştırmaktır.
Hacker olacak adam bence C++ öğrenir.
Ben genele konuştum,belki arkadaşın niyeti hackerlik değildir.
Kolay gele.
 
Son düzenleme:

hamush

Katılımcı Üye
26 Haz 2012
635
1
Şimdi hack derken neyi kastettiğimize bağlı.. Mesela bir keylogger yapar C# programcısı, gerekenleri pinvoke ediverir.. Portscan, sql injection için vulnerability scan vs yapacaksa bunlar için invoke'a bile gerek yok.. Ve normalde bana böyle bir şey yap deseler, sanırım tembelliğimden c# kullanırım çünkü performans farkı günümüz işlemci gücü ve ram kapasitesi düşünülünce önemsiz ve de c#'ta herşeyi çok daha hızlı yapıyorsun. Yukarı koda baksana, hiç bir şeyi deallocate etmeme bile gerek yok! garbage collection halledecek ne de olsa... Yaz gitsin, .NET framework toplar senin arkanı.. List<> dediğimiz mükemmel bir linked chain ve zaten kod içinde hazır var. Soket dinleme operasyonları tek satır! Stream'i normal okumaya üşenirsen, streamreader'lar bile var paşa paşa sana satır satır, blok blok okuyan...

Haa kernel seviyesinde hook'a ihtiyacın olan bir şey olacaksa, mesela gerçek bir boot sector virus yazacaksan tamam C# mal gibi kalır.. Ama tembel adamın C'si işte C# dediğimiz dil.. Yapman gereken şeylerin 99.9%'u için yeter de artar bile...
 

Mafia1453

Katılımcı Üye
17 Eki 2013
400
1
Nereye...
Şimdi hack derken neyi kastettiğimize bağlı.. Mesela bir keylogger yapar C# programcısı, gerekenleri pinvoke ediverir.. Portscan, sql injection için vulnerability scan vs yapacaksa bunlar için invoke'a bile gerek yok.. Ve normalde bana böyle bir şey yap deseler, sanırım tembelliğimden c# kullanırım çünkü performans farkı günümüz işlemci gücü ve ram kapasitesi düşünülünce önemsiz ve de c#'ta herşeyi çok daha hızlı yapıyorsun. Yukarı koda baksana, hiç bir şeyi deallocate etmeme bile gerek yok! garbage collection halledecek ne de olsa... Yaz gitsin, .NET framework toplar senin arkanı.. List<> dediğimiz mükemmel bir linked chain ve zaten kod içinde hazır var. Soket dinleme operasyonları tek satır! Stream'i normal okumaya üşenirsen, streamreader'lar bile var paşa paşa sana satır satır, blok blok okuyan...

Haa kernel seviyesinde hook'a ihtiyacın olan bir şey olacaksa, mesela gerçek bir boot sector virus yazacaksan tamam C# mal gibi kalır.. Ama tembel adamın C'si işte C# dediğimiz dil.. Yapman gereken şeylerin 99.9%'u için yeter de artar bile...

usta eyvallah güzel anlatmışsında C#'tan pek anlamiyorum vb.net le olmuyor mu :)
 

Mafia1453

Katılımcı Üye
17 Eki 2013
400
1
Nereye...
Olur canım... hem de kodlar neredeyse hiç değişmez... Bakalım bir deneyeyim, yeni VB projesi açayım... Becerebilirsem sana direk projeyı sıkıştırır gönderirim.. Beceremezsem kusura bakma, ben yaşlı ve hasta bir adamım...

yok önemli değil düşünmeniz yeter yardımınız için teşekkürler eğer yaparsanız özelden mesaj atarsanız sevinirim :)
 

hamush

Katılımcı Üye
26 Haz 2012
635
1
Belki konuyu izleyen ve çok basit bir threading, networking egzersizi olarak kurcalamak isteyen olur diye linki buraya veriyim ben gene.. 1 hafta tutacakmış bu site... Sonra link değersiz olacak.

http://we.tl/2Ip3S8ysEL

Bu arada itiraf edeyim, hiç öyle cart diye çevrilmiyormuş VB'ye, unutmuş gitmişim...
 

Mafia1453

Katılımcı Üye
17 Eki 2013
400
1
Nereye...
Belki konuyu izleyen ve çok basit bir threading, networking egzersizi olarak kurcalamak isteyen olur diye linki buraya veriyim ben gene.. 1 hafta tutacakmış bu site... Sonra link değersiz olacak.

http://we.tl/2Ip3S8ysEL

Bu arada itiraf edeyim, hiç öyle cart diye çevrilmiyormuş VB'ye, unutmuş gitmişim...

usta süpersin valla çok sağol yarın bilgisayara geçince inceleyicem :)
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.