Oto Proxy Değiştirici [ Source ] [ Özgün Konu ] [ vb.net ]

Maveraün Nehr

Blue Expert / Head of Malware Team
25 Haz 2021
980
1,888
41.303921, -81.901693
Merhabalar uzun zaman önce yapmak istediğim bir programdı. Keylogger mantığı ile konu sonunda vermiş olacağım İngilizce makale sayesinde ufak bir program kodladım. Programımız istenilen süre içerisinde liste kutusunda yer alan proxy IP adresini değiştiriyor.

İhtiyaç Listemiz;

2 Adet Label Birisinin Text Kısmında güncel adres yazacak diğerini saydırmak için text kısmında 0 yazacak 0 yazan label'imizi formumuzda gizleyelim.

1 Adet Combobox içerisinde dakikaya bağlı yapacağımız için sayılar yer alacak ben tek sayı yazdım yani 1,3,5...
1 Adet ListBox güncel proxy listemizi aktarmamız için.
1 Adet Webbrowser bağlantımızı test etmek için URL açtıracağız.
1 Adet Textbox Webbrowser'a URL yönlendirmesi yapmak için.
5 Adet Buton bunlar URL yönlendirmesi onayı, bağlantı başlaması ve durdurması komutu, yeni liste için liste kutusunun temizlenmesi komutu son olarak da proxy listesi seçimi komutu olacak.
2 Adet timer birisi label'imizi 60'a kadar saydıracak Intervival 1000 olsun diğeri bağlantı yapacak intervival'i 250 olsun ikisininde Enabled özelliği False olsun.

1 Adet OpenFileDialog proxy listemizin seçimi için.

NOT:
Kodların açıklaması içerisindedir.

Ekleyeceğimiz 2 Adet Kütüphane

Imports System.Runtime.InteropServices Imports System.IO

Bağlantı Sağlanması İçin İşimize Yarayacak Kod Satırı

C#:
 <Runtime.InteropServices.DllImport("wininet.dll", SetLastError:=True)>
    Private Shared Function InternetSetOption(ByVal hInternet As IntPtr, ByVal dwOption As Integer, ByVal lpBuffer As IntPtr, ByVal lpdwBufferLength As Integer) As Boolean
    End Function
    Public Structure Struct_INTERNET_PROXY_INFO
        Public dwAccessType As Integer
        Public proxy As IntPtr
        Public proxyBypass As IntPtr
    End Structure
    Private Sub UseProxy(ByVal strProxy As String)
        Const INTERNET_OPTION_PROXY As Integer = 38
        Const INTERNET_OPEN_TYPE_PROXY As Integer = 3
        Dim struct_IPI As Struct_INTERNET_PROXY_INFO
        struct_IPI.dwAccessType = INTERNET_OPEN_TYPE_PROXY
        struct_IPI.proxy = Marshal.StringToHGlobalAnsi(strProxy)
        struct_IPI.proxyBypass = Marshal.StringToHGlobalAnsi("local")
        Dim intptrStruct As IntPtr = Marshal.AllocCoTaskMem(Marshal.SizeOf(struct_IPI))
        Marshal.StructureToPtr(struct_IPI, intptrStruct, True)
        Dim iReturn As Boolean = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_PROXY, intptrStruct, System.Runtime.InteropServices.Marshal.SizeOf(struct_IPI))
    End Sub

Form Load Olayına İstenilen Farklı Bir Adres Girilirse Script Hatası Verilmemesi İçin Girelim

C#:
WebBrowser1.ScriptErrorsSuppressed = True
WebBrowser1.ObjectForScripting = True

DUR Butonu Kodumuz

C#:
Timer2.Stop()
Label1.Text = "0" 'Timer'ları Durdurarak Labelimizi 0'lıyoruz.
Timer1.Stop()

BAŞLAT Butonu Kodumuz

C#:
Timer1.Start() ' Timer'lara başlamak için komut verdik.
Timer2.Start()

LİSTE SEÇ Butonu Kodumuz

C#:
Dim openfile = New OpenFileDialog() ' Metin belgesi içerisinde yar alan güncel proxy listemizi liste kutumuza yansıtıyoruz.
openfile.Filter = "Metin Belgesi (*.txt)|*.txt"
If (openfile.ShowDialog() = System.Windows.Forms.DialogResult.OK) Then
Dim myfile As String = openfile.FileName
Dim allLines As String() = File.ReadAllLines(myfile)
For Each line As String In allLines
ListBox1.Items.Add(line)
Next
End If

TEMİZLE Butonu kodumuz

C#:
ListBox1.Items.Clear()

TEST Butonu Kodumuz

C#:
 WebBrowser1.Navigate(TextBox3.Text) ' Proxy'lerin URL açıp açmadığını kontrol etmek için textbox içeresinde yer alan URL'yi aç diyoruz.

TİMER Kodlarımız Bu Intervival kısmını 250 yaptığınıza girin

C#:
If ListBox1.SelectedIndex = ListBox1.Items.Count - 1 Then
ListBox1.SelectedIndex = 0
Else ' Listemizi otomatik bağlantı için aşağı indiriyoruz
If Label1.Text = ComboBox1.SelectedItem * "60" Then ' comboboxta yer alan sayı kadar 60 ile çarpıyoruz 60 saniye = 1 dk.
ListBox1.SelectedIndex += 1
UseProxy(ListBox1.SelectedItem) ' seçilen liste ile bağlantı kur diyoruz
Label1.Text = "0" ' dakika yenilenmesi için label'i sıfırla diyoruz
Else
End If
End If

TİMER Kodlarımız Bu Intervival kısmını 1000 yaptığınıza girin

C#:
Label1.Text = Label1.Text + 1' labelimizi 1 arttırıyoruz bu sayede 60'a kadar sayacak.

Demo Form Görüntülerimiz

ak4ukg7.PNG
djfg392.PNG


Güncel Proxy Listem

103.117.192.14:80
51.158.169.52:29976
103.43.151.36:80
103.119.95.2:80
103.118.78.194:80
103.149.130.38:80
103.156.141.100:80
103.83.232.122:80
8.219.97.248:80
103.49.202.252:80
5.172.177.218:3128
31.186.239.244:8080
14.140.131.82:3128
135.181.14.45:5959
192.240.106.146:3128
144.172.67.108:8888
103.197.251.202:80
103.25.120.226:80
20.242.203.179:3128
161.35.244.38:3128
146.190.18.197:3128
155.248.197.241:9898
5.9.149.118:40000
173.212.200.30:3128
103.119.95.106:80
20.242.203.179:3128
185.132.39.189:3128
146.190.150.171:3128
103.145.113.78:80
191.54.216.1:3128
201.143.189.47:3128
103.117.192.14:80
146.190.33.170:3128
146.190.33.167:3128
141.95.190.131:80
8.209.64.208:20002
103.118.78.194:80
119.13.103.211:4153
119.13.103.211:20201

Yararlandığım Kaynak;

 

Muslukcu

Katılımcı Üye
17 Kas 2021
699
262
Tesisat dükkanı
Merhabalar uzun zaman önce yapmak istediğim bir programdı. Keylogger mantığı ile konu sonunda vermiş olacağım İngilizce makale sayesinde ufak bir program kodladım. Programımız istenilen süre içerisinde liste kutusunda yer alan proxy IP adresini değiştiriyor.

İhtiyaç Listemiz;

2 Adet Label Birisinin Text Kısmında güncel adres yazacak diğerini saydırmak için text kısmında 0 yazacak 0 yazan label'imizi formumuzda gizleyelim.

1 Adet Combobox içerisinde dakikaya bağlı yapacağımız için sayılar yer alacak ben tek sayı yazdım yani 1,3,5...
1 Adet ListBox güncel proxy listemizi aktarmamız için.
1 Adet Webbrowser bağlantımızı test etmek için URL açtıracağız.
1 Adet Textbox Webbrowser'a URL yönlendirmesi yapmak için.
5 Adet Buton bunlar URL yönlendirmesi onayı, bağlantı başlaması ve durdurması komutu, yeni liste için liste kutusunun temizlenmesi komutu son olarak da proxy listesi seçimi komutu olacak.
2 Adet timer birisi label'imizi 60'a kadar saydıracak Intervival 1000 olsun diğeri bağlantı yapacak intervival'i 250 olsun ikisininde Enabled özelliği False olsun.

1 Adet OpenFileDialog proxy listemizin seçimi için.

NOT:
Kodların açıklaması içerisindedir.

Ekleyeceğimiz 2 Adet Kütüphane

Imports System.Runtime.InteropServices Imports System.IO

Bağlantı Sağlanması İçin İşimize Yarayacak Kod Satırı

C#:
 <Runtime.InteropServices.DllImport("wininet.dll", SetLastError:=True)>
    Private Shared Function InternetSetOption(ByVal hInternet As IntPtr, ByVal dwOption As Integer, ByVal lpBuffer As IntPtr, ByVal lpdwBufferLength As Integer) As Boolean
    End Function
    Public Structure Struct_INTERNET_PROXY_INFO
        Public dwAccessType As Integer
        Public proxy As IntPtr
        Public proxyBypass As IntPtr
    End Structure
    Private Sub UseProxy(ByVal strProxy As String)
        Const INTERNET_OPTION_PROXY As Integer = 38
        Const INTERNET_OPEN_TYPE_PROXY As Integer = 3
        Dim struct_IPI As Struct_INTERNET_PROXY_INFO
        struct_IPI.dwAccessType = INTERNET_OPEN_TYPE_PROXY
        struct_IPI.proxy = Marshal.StringToHGlobalAnsi(strProxy)
        struct_IPI.proxyBypass = Marshal.StringToHGlobalAnsi("local")
        Dim intptrStruct As IntPtr = Marshal.AllocCoTaskMem(Marshal.SizeOf(struct_IPI))
        Marshal.StructureToPtr(struct_IPI, intptrStruct, True)
        Dim iReturn As Boolean = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_PROXY, intptrStruct, System.Runtime.InteropServices.Marshal.SizeOf(struct_IPI))
    End Sub

Form Load Olayına İstenilen Farklı Bir Adres Girilirse Script Hatası Verilmemesi İçin Girelim

C#:
WebBrowser1.ScriptErrorsSuppressed = True
WebBrowser1.ObjectForScripting = True

DUR Butonu Kodumuz

C#:
Timer2.Stop()
Label1.Text = "0" 'Timer'ları Durdurarak Labelimizi 0'lıyoruz.
Timer1.Stop()

BAŞLAT Butonu Kodumuz

C#:
Timer1.Start() ' Timer'lara başlamak için komut verdik.
Timer2.Start()

LİSTE SEÇ Butonu Kodumuz

C#:
Dim openfile = New OpenFileDialog() ' Metin belgesi içerisinde yar alan güncel proxy listemizi liste kutumuza yansıtıyoruz.
openfile.Filter = "Metin Belgesi (*.txt)|*.txt"
If (openfile.ShowDialog() = System.Windows.Forms.DialogResult.OK) Then
Dim myfile As String = openfile.FileName
Dim allLines As String() = File.ReadAllLines(myfile)
For Each line As String In allLines
ListBox1.Items.Add(line)
Next
End If

TEMİZLE Butonu kodumuz

C#:
ListBox1.Items.Clear()

TEST Butonu Kodumuz

C#:
 WebBrowser1.Navigate(TextBox3.Text) ' Proxy'lerin URL açıp açmadığını kontrol etmek için textbox içeresinde yer alan URL'yi aç diyoruz.

TİMER Kodlarımız Bu Intervival kısmını 250 yaptığınıza girin

C#:
If ListBox1.SelectedIndex = ListBox1.Items.Count - 1 Then
ListBox1.SelectedIndex = 0
Else ' Listemizi otomatik bağlantı için aşağı indiriyoruz
If Label1.Text = ComboBox1.SelectedItem * "60" Then ' comboboxta yer alan sayı kadar 60 ile çarpıyoruz 60 saniye = 1 dk.
ListBox1.SelectedIndex += 1
UseProxy(ListBox1.SelectedItem) ' seçilen liste ile bağlantı kur diyoruz
Label1.Text = "0" ' dakika yenilenmesi için label'i sıfırla diyoruz
Else
End If
End If

TİMER Kodlarımız Bu Intervival kısmını 1000 yaptığınıza girin

C#:
Label1.Text = Label1.Text + 1' labelimizi 1 arttırıyoruz bu sayede 60'a kadar sayacak.

Demo Form Görüntülerimiz

ak4ukg7.PNG
djfg392.PNG


Güncel Proxy Listem

103.117.192.14:80
51.158.169.52:29976
103.43.151.36:80
103.119.95.2:80
103.118.78.194:80
103.149.130.38:80
103.156.141.100:80
103.83.232.122:80
8.219.97.248:80
103.49.202.252:80
5.172.177.218:3128
31.186.239.244:8080
14.140.131.82:3128
135.181.14.45:5959
192.240.106.146:3128
144.172.67.108:8888
103.197.251.202:80
103.25.120.226:80
20.242.203.179:3128
161.35.244.38:3128
146.190.18.197:3128
155.248.197.241:9898
5.9.149.118:40000
173.212.200.30:3128
103.119.95.106:80
20.242.203.179:3128
185.132.39.189:3128
146.190.150.171:3128
103.145.113.78:80
191.54.216.1:3128
201.143.189.47:3128
103.117.192.14:80
146.190.33.170:3128
146.190.33.167:3128
141.95.190.131:80
8.209.64.208:20002
103.118.78.194:80
119.13.103.211:4153
119.13.103.211:20201

Yararlandığım Kaynak;

Elinize sağlık
 
Ü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.