PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [VB.NET] Hardware-ID Schutz



hackerking
22.11.2008, 18:11
Jo hey leute :)
Ich bins mal wieder :D

Für VB 6 gibts ja nen Hardware ID Schutz.
Gibts auch einen für VB.NET?

1312
22.11.2008, 18:19
Findest bestimmt was bei Google. Aber kannse ja auch leicht selber ein machen. Einfach ID`s auslesen und überprüfen.

hackerking
22.11.2008, 18:26
Jaaa das ist mir schon klar aber das problem ist, dass ich nicht weiß wo der reg schlüssel liegt.

Also Prinzip würde ich so machen:

-- Reg key auslesen
-- Ins Programm einfügen
-- HW Id des Programmes mit dem des Systemes überpfrüfen

Sawyer
22.11.2008, 18:34
es gibt keine Algemeine Hardware id oder einen Schlüssel den man auslesen kann

du kannst evtl.. von einigen hardwarekomponenten die serial id auslesen und das dann zusammenfügen und als hash verschlüsseln

das kannst du dann wenn dein Programm startet wieder machen und den gespeicherten key in deiner Anwendung , mit dem aktuell generierten vom System vergleichen

was fertiges wirst du da nicht finden , du musst eben selber bisschen arbeiten

schon alleine für so was einfaches nach einem source zu fragen ist schon etwas peinlich aber nungut

das solltest du auch alleine hinbekommen ;)

MfG

j0n4s
02.03.2009, 16:02
HI
Was wir brauchen:
Text Code
FTP Account


HWID Checker:
1.Ein Button und ein Textbox adden
2. Form.Load Code:


Dim strcomputername As String = "."
On Error Resume Next

Dim strSQL As String
Dim strWMI As String

Dim oWMI As Object
Dim objItem As Object

Dim lngOldMouse As Long


strSQL = "Select * from Win32_Processor"
strWMI = "winmgmts:\\" & strcomputername & "\root\cimv2"


oWMI = GetObject(strWMI).ExecQuery(strSQL)


For Each objItem In oWMI

TextBox1.Text = objItem.ProcessorId


Button Code:

Dim URL As String = "http://polat50.bplaced.net/script.txt" ' Durch dein Host ersetzen
Dim IoStream As System.IO.Stream
Dim StrRead As System.IO.StreamReader


Dim Request As System.Net.WebRequest _
= System.Net.WebRequest.Create(URL)

IoStream = Request.GetResponse.GetResponseStream

StrRead = New System.IO.StreamReader(IoStream)

Dim auslesen As String = StrRead.ReadToEnd()
StrRead.Close()
IoStream.Close()

If auslesen.Contains(TextBox1.Text) Then
MessageBox.Show("Zugriff Gewährt!")
Form2.Show()
Else
MessageBox.Show("Zugriff nicht Gewährt!")


End If
End Sub
End Class

Und Textbox1 machst du auf visible = false

HWID Generator:

1. Textbox + Button adden
2. Button Code:


Dim strcomputername As String = "."
On Error Resume Next

Dim strSQL As String
Dim strWMI As String

Dim oWMI As Object
Dim objItem As Object

Dim lngOldMouse As Long


strSQL = "Select * from Win32_Processor"
strWMI = "winmgmts:\\" & strcomputername & "\root\cimv2"


oWMI = GetObject(strWMI).ExecQuery(strSQL)


For Each objItem In oWMI

TextBox1.Text = objItem.ProcessorId

ok
und jetzt des Text File den du auf deinem FTP Account uppen musst.
1. Editor öffnen.
2. Das generierte ProcessorID code reinschreiben.
3.Als z.b script.txt unter Desktop speichern.
4.Auf FTP Uppen via Filezilla z.b
So fertig..
Ich hoffe mal das dus verstanden hast. :)
mfg

Steav
03.03.2009, 06:37
Meinst Du die Mac-ID? Wäre jetzt das einzige was mir unter Hardware-ID einfällt.

So findest Du sie raus (erst Referenz + using auf System.Management setzen)





private string GetMac()
{
string Mac = string.Empty;
ManagementClass MC = new ManagementClass("Win32_NetworkAdapter");
ManagementObjectCollection MOCol = MC.GetInstances();
foreach (ManagementObject MO in MOCol)
if (MO != null)
{
if (MO["MacAddress"] != null)
{
Mac = MO["MACAddress"].ToString();
if (Mac != string.Empty)
break;
}
}
return Mac;
}

till7
03.03.2009, 11:02
Meinst Du die Mac-ID? Wäre jetzt das einzige was mir unter Hardware-ID einfällt.

So findest Du sie raus (erst Referenz + using auf System.Management setzen)





private string GetMac()
{
string Mac = string.Empty;
ManagementClass MC = new ManagementClass("Win32_NetworkAdapter");
ManagementObjectCollection MOCol = MC.GetInstances();
foreach (ManagementObject MO in MOCol)
if (MO != null)
{
if (MO["MacAddress"] != null)
{
Mac = MO["MACAddress"].ToString();
if (Mac != string.Empty)
break;
}
}
return Mac;
}


Warum nicht einfach "cmd" => "getmac" da musst du nicht son Monster-Code schreiben . . .

Maddin007
10.03.2009, 22:52
Warum nicht einfach "cmd" => "getmac" da musst du nicht son Monster-Code schreiben . . .

Weil er es in VB.net verwenden will Oo

Sirect
31.03.2009, 15:23
Weil er es in VB.net verwenden will Oo

Was aber auch ganz leicht geht?
Shell Befehle kann man Hidden Ausführen und den Output umleiten =)

Steav
31.03.2009, 18:01
Was aber auch ganz leicht geht?
Shell Befehle kann man Hidden Ausführen und den Output umleiten =)


'Können' kann man alles, aber ich (und vermutlich die meisten die sauberen Code produzieren wollen) würde definitiv die WMI Variante gegenüber eines Shellexecutes bevorzugen^^