PDA

View Full Version : Hàm API



IRON
12-09-2002, 15:45
Có ai biết các hàm Api về mạng không. Giúp đỡ tui nhé

dmt
12-09-2002, 17:16
ban hoi chung chung qua', cu the ve` mang nhung la` ve` van de` gi`...

IRON
12-09-2002, 17:42
Thế này, có những hàm API cho phép gửi message từ máy này sang máy khác hoặc có thể làm máy người khác log out. Giống như điều khiển từ xa ý

Nicky
12-09-2002, 18:26
Gửi message thì có thể chứ làm máy khác log out thì chưa nghe cái vụ này à nghen !!!

IRON
12-09-2002, 19:13
nếu như có cách để link với máy khác thì tôi cũng có cách chạy chương trình logout bằng VB để log out máy khác vậy.

IRON
12-09-2002, 19:14
nếu như cần tui có thể post bài hướng dẫn logout,shutdown bằng vb

spenguin
13-09-2002, 09:42
Vay thi IRON post len cho anh em cung hoc hoi di.

Nicky
13-09-2002, 20:37
Log out và shutdown thì chả có gì phức tạp. Trong khi chờ Iron post bài spenguin tới chỗ này thử được không http://coolcode4you.fateback.com

JackPhan
13-09-2002, 22:19
muốn connect được tới một máy khác thì phải viết một chương trình na ná giống trojan, có nghĩa phải có 1 ct server và 1 client. chuyện này không khó, chỉ cần dùng winsock mở một port trên máy cần connect, từ máy mình connect tới port đó.
khi 2 máy đã connect thì tùy theo bạn muốn làm gì thì chỉ cần thêm đoạn code đó vào chương trình client của mình.
chú ý chương trình server phải có phần giải mã các command mà client gửi qua.

muốn logout hay shutdown ngay trên máy mình thì chẳng có gì phức tạp, nhưng send command tới victim rồi command này thực hiện trên victim thì hơi khó.
khó nhất là làm sao cho victim chạy ct server của mình là ok.

tớ không khuyến khích viết Trojan đâu nhá. cái này là học hỏi thôi. :D

IRON
14-09-2002, 10:54
Em có một chương trình mang tên phân tán điều khiển. Nó có khả năng tắt máy bất cứ ai trong mạng Lan, hoặc điều khiển chạy chương trình trên máy khác. Nó được viết bằng Delphil do một người bạn viết. Và một chương trình có khả năng điều khiển chuột của victim nữa. Không biết nó hoạt động bằng cái gì há

Nicky
14-09-2002, 15:12
hay nhỉ !!!
Bạn post lên cho bà con xem với, nếu không thì gửi cho mình xem thử nhé.

Scorpion
15-09-2002, 14:25
to IRON :
post bài đó lên đi bạn, nghe đồn người viết chương trình đó là thành viên ưu tú của diễn đàn này đó.

quaitieutu
15-09-2002, 20:28
Loại chương trình này thường dùng ở các DV NET lắm,tên một trong những soft là Donal dick.
Post lên đi đồng chí IRON ơi!Mọi người mong học hỏi lắm

IRON
18-09-2002, 11:39
Chờ tui một vài ngày được không dạo này bận thi cử quá

quaitieutu
18-09-2002, 13:03
híc giờ này người ta nhập năm học mới còn bạn thì bận thi cử chăc là thi ....lại hả
Hi hi
chúc thành công

IRON
18-09-2002, 23:21
Không phải, tại vì đang bận làm project để bảo vệ nên bận thôi

quaitieutu
19-09-2002, 14:20
Chúc thành công nhé

IRON
23-09-2002, 10:40
hêy, bi giờ thi xong rồi các anh tài chỉ dẫn đi

quaitieutu
23-09-2002, 13:47
Híc "chỉ cái chi" và "dẫn đi đâu"
Chỉ có Iron chỉ đường và dẫn Wái cùng các bạn đi ăn mừng thôi

Nicky
23-09-2002, 14:50
Iron mau quên thế. Anh bảo là cho bà con xem chương trình phân tán điều khiển gì đó mừ...???

VTHung
24-09-2002, 09:48
Theo tui thì trong đĩa MSDN có đủ mọi thứ.
Trước hết bạn thử debug xem chương trình đó dùng những hàm gì (chương trình đơn giản nhất là dùng QuickView của Windows - cài trong Add/Remove Program), sau đó vào MSDN tra các hàm đó, đọc hướng dẫn sử dụng hàm rồi viết.

IRON
25-09-2002, 17:14
Bài viết được gửi bởi Nicky
Iron mau quên thế. Anh bảo là cho bà con xem chương trình phân tán điều khiển gì đó mừ...???
Sorry, hôm nọ tớ nghịch virus, chưa kịp chuẩn bị nên bị del sạch rồi. Nhưng tớ vẫn đang cố gắng kiếm lại đây. Nếu có nhất định tớ sẽ up lên cho các bạn

buaxua123
24-11-2003, 12:27
nếu các you cần tôi có thể tham gia một tý được không ?

buaxua123
24-11-2003, 12:31
Dùng 01 máy điều kiển log of hoặc shutdown các máy khác , trong lập trình vb là rất dễ, bạn chỉ cần giải mã lệnh nào là log và lệnh nào là shut

ITbaby
24-11-2003, 13:11
Đúng là dễ nhưng cái đó là đối với những ai đã từng tìm hiểu qua, còn với những ai chưa tìm hiểu qua ( Chưa chắc là non tay nghề) thì nó hơi khó. Ủa mà các anh chị đang cần viết về cái gì

ITbaby
24-11-2003, 13:13
Gửi message thì có thể chứ làm máy khác log out thì chưa nghe cái vụ này à nghen !!!
Đối với các hđh như Win NT,2000,XP thì có 1 hàm API cho phép ta tắt máy hay shutdown các máy con mà không cần phải cài Trojan hay mở Port máy con đó ra. Cái API này em quên tên rồi. Để em lục lại rồi Post lên. Mà ở trên Net có đó, anh em có thể Search dòng Remote shutdown source VB là có hà.

LMTruong
24-11-2003, 13:14
Hi***xx, cái tiêu đề là hàm API mà trong đây em hổng thấy được một hàm API. Toàn nói chiện trên trời dưới đất hông à. :D.

ITbaby
24-11-2003, 13:30
Đã nói là em quên rồi ! Chiều nay đi mẫu giáo về em sẽ Post lên. Chào các anh.

Đi học về là đi học về
Em về nhà em chào cha mẹ
......

ITbaby
24-11-2003, 14:57
Đây là đoạn Code dùng để tắt các máy con nà Pà con ơi. Phải cúp học ra Post bài đó.

' Shutdown Flags
Const EWX_LOGOFF = 0
Const EWX_SHUTDOWN = 1
Const EWX_REBOOT = 2
Const EWX_FORCE = 4
Const SE_PRIVILEGE_ENABLED = &H2
Const TokenPrivileges = 3
Const TOKEN_ASSIGN_PRIMARY = &H1
Const TOKEN_DUPLICATE = &H2
Const TOKEN_IMPERSONATE = &H4
Const TOKEN_QUERY = &H8
Const TOKEN_QUERY_SOURCE = &H10
Const TOKEN_ADJUST_PRIVILEGES = &H20
Const TOKEN_ADJUST_GROUPS = &H40
Const TOKEN_ADJUST_DEFAULT = &H80
Const SE_SHUTDOWN_NAME = "SeShutdownPrivilege"
Const ANYSIZE_ARRAY = 1
Private Type LARGE_INTEGER
lowpart As Long
highpart As Long
End Type
Private Type Luid
lowpart As Long
highpart As Long
End Type
Private Type LUID_AND_ATTRIBUTES
'pLuid As Luid
pLuid As LARGE_INTEGER
Attributes As Long
End Type
Private Type TOKEN_PRIVILEGES
PrivilegeCount As Long
Privileges(ANYSIZE_ARRAY) As LUID_AND_ATTRIBUTES
End Type
Private Declare Function InitiateSystemShutdown Lib "advapi32.dll" Alias "InitiateSystemShutdownA" (ByVal lpMachineName As String, ByVal lpMessage As String, ByVal dwTimeout As Long, ByVal bForceAppsClosed As Long, ByVal bRebootAfterShutdown As Long) As Long
Private Declare Function OpenProcessToken Lib "advapi32.dll" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function LookupPrivilegeValue Lib "advapi32.dll" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpLuid As LARGE_INTEGER) As Long
Private Declare Function AdjustTokenPrivileges Lib "advapi32.dll" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) As Long
Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Private Declare Function GetLastError Lib "kernel32" () As Long
Public Function InitiateShutdownMachine(ByVal Machine As String, Optional Force As Variant, Optional Restart As Variant, Optional AllowLocalShutdown As Variant, Optional Delay As Variant, Optional Message As Variant) As Boolean
Dim hProc As Long
Dim OldTokenStuff As TOKEN_PRIVILEGES
Dim OldTokenStuffLen As Long
Dim NewTokenStuff As TOKEN_PRIVILEGES
Dim NewTokenStuffLen As Long
Dim pSize As Long
If IsMissing(Force) Then Force = False
If IsMissing(Restart) Then Restart = True
If IsMissing(AllowLocalShutdown) Then AllowLocalShutdown = False
If IsMissing(Delay) Then Delay = 0
If IsMissing(Message) Then Message = ""
'Make sure the Machine-name doesn't start with '\\'
If InStr(Machine, "\\") = 1 Then
Machine = Right(Machine, Len(Machine) - 2)
End If
'check if it's the local machine that's going to be shutdown
If (LCase(GetMyMachineName) = LCase(Machine)) Then
'may we shut this computer down?
If AllowLocalShutdown = False Then Exit Function
'open access token
If OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY, hProc) = 0 Then
MsgBox "OpenProcessToken Error: " & GetLastError()
Exit Function
End If
'retrieve the locally unique identifier to represent the Shutdown-privilege name
If LookupPrivilegeValue(vbNullString, SE_SHUTDOWN_NAME, OldTokenStuff.Privileges(0).pLuid) = 0 Then
MsgBox "LookupPrivilegeValue Error: " & GetLastError()
Exit Function
End If
NewTokenStuff = OldTokenStuff
NewTokenStuff.PrivilegeCount = 1
NewTokenStuff.Privileges(0).Attributes = SE_PRIVILEGE_ENABLED
NewTokenStuffLen = Len(NewTokenStuff)
pSize = Len(NewTokenStuff)
'Enable shutdown-privilege
If AdjustTokenPrivileges(hProc, False, NewTokenStuff, NewTokenStuffLen, OldTokenStuff, OldTokenStuffLen) = 0 Then
MsgBox "AdjustTokenPrivileges Error: " & GetLastError()
Exit Function
End If
'initiate the system shutdown
If InitiateSystemShutdown("\\" & Machine, Message, Delay, Force, Restart) = 0 Then
Exit Function
End If
NewTokenStuff.Privileges(0).Attributes = 0
'Disable shutdown-privilege
If AdjustTokenPrivileges(hProc, False, NewTokenStuff, Len(NewTokenStuff), OldTokenStuff, Len(OldTokenStuff)) = 0 Then
Exit Function
End If
Else
'initiate the system shutdown
If InitiateSystemShutdown("\\" & Machine, Message, Delay, Force, Restart) = 0 Then
Exit Function
End If
End If
InitiateShutdownMachine = True
End Function
Function GetMyMachineName() As String
Dim sLen As Long
'create a buffer
GetMyMachineName = Space(100)
sLen = 100
'retrieve the computer name
If GetComputerName(GetMyMachineName, sLen) Then
GetMyMachineName = Left(GetMyMachineName, sLen)
End If
End Function
Private Sub Form_Load()
InitiateShutdownMachine GetMyMachineName, True, True, True, 60, "You initiated a system shutdown..."
End Sub

chithong
24-11-2003, 15:02
Bạn thử vào trang web http://www.student.kuleuven.ac.be/~m0116986/3.7/agsetup.exe để download chương trình API-Guide. Theo mình chương trình rất hay.

ChíThông