請兄弟們求救!十萬火急!(關於我做的系統被人下載了的事實的處理)


今天偶然發現我做的物流系統在網絡上到處都是。
比如:
http://www.17t8.com/soft/5887.htm
我看了一下,大概是2003年3月份被黑客偷的,因為當時我們公司上網的服務器沒什么安全性而言,而我當時又把系統放在了服務器上。

現在請兄弟們幫我看一下代碼哪里還需要改進的地方。很多地方我都改了。每提出一個問題,我給50分,另開帖送分。你們可以到google上搜索“物流管理系統 下載”關鍵字。

一定重謝!
我需要代碼再做一些處理才能加強公司系統的安全性。

兄弟們,幫我!

21 个解决方案

#1


代碼寫成 Activex DLL,判斷服務器IP或MAC是不是你的合法用戶
偶的東西就是這樣處理的,呵呵。

#2


如果有需要幫助的,偶可以幫你哈。

#3


感覺你像做宣傳

不過,建議你換版本吧,不然吼吼。。

#4


TO jarron  能否將  Activex DLL,判斷服務器IP或MAC是不是你的合法用戶 共享一下,偶研究一下。。

kelvinyu@benq.com

謝謝。

#5


用asp2dll或者自己寫組件
這樣可以保護源代碼

#6


就是:也給我一份。我的:zhugehongtu@yahoo.com.cn或nihao2002327@sina.com

#7


rexsp(真水無香) (ppcode.com):這可是公司的系統啊。我哪敢給別人。

我想求兄弟們幫我看一下哪些地方需要改進的,我疏忽的是當時沒對服務器設置什么安全,因為當時服務器好幾個老總的密碼都是為空的,我也沒辦法啊。現在我只想補救,看看哪里需要改進的,現在我已經在該了。請兄弟們幫我測試一下啊,我好在系統里加一些我沒加的東西。

#8


我不是向你要這個系統,我是向蚊香要檢測服務器IP和MAC的方法。。

#9


dll放到system32下,ASP程序文件夾里不要有,就是被偷他也不能用。
不過我一般為了方便dll都在ASP程序文件夾留個備份,看來要注意了。以后精品要注意產權。
普通貨就無所謂了。

#10


能否提供一個關於寫dll的教程?越詳細越好的.
呵呵,從來沒碰過這個.
謝了

#11


rexsp(真水無香) (ppcode.com) :這個系統網絡上到處都有了,你可以隨便下。我又沒辦法的  我指的是“感覺你像做宣傳”這句話。:)
兄弟們,你們去下載一個吧,幫我看看里面哪些地方需要改進(高分重謝),我這邊立即改。我現在最重要的是這套系統的安全性。

#12


大家請幫忙下載下來看看代碼哪些地方要做修改,先謝謝了。大家多多測試啊,我現在急死了。

#13


heihei!

#14


和俄
=========================
歡迎使用 CSDN 論壇助手  .....   [助您多、快、好、爽地上csdn...]
Http://www.ChinaOK.net/csdn/
最新版本:2003年3月2日

#15


Option Explicit

   Private Const NCBASTAT = &H33
   Private Const NCBNAMSZ = 16
   Private Const HEAP_ZERO_MEMORY = &H8
   Private Const HEAP_GENERATE_EXCEPTIONS = &H4
   Private Const NCBRESET = &H32

   Private Type NCB
        ncb_command As Byte 'Integer
        ncb_retcode As Byte 'Integer
        ncb_lsn As Byte 'Integer
        ncb_num As Byte ' Integer
        ncb_buffer As Long 'String
        ncb_length As Integer
        ncb_callname As String * NCBNAMSZ
        ncb_name As String * NCBNAMSZ
        ncb_rto As Byte 'Integer
        ncb_sto As Byte ' Integer
        ncb_post As Long
        ncb_lana_num As Byte 'Integer
        ncb_cmd_cplt As Byte  'Integer
        ncb_reserve(9) As Byte ' Reserved, must be 0
        ncb_event As Long
   End Type
   Private Type ADAPTER_STATUS
        adapter_address(5) As Byte 'As String * 6
        rev_major As Byte 'Integer
        reserved0 As Byte 'Integer
        adapter_type As Byte 'Integer
        rev_minor As Byte 'Integer
        duration As Integer
        frmr_recv As Integer
        frmr_xmit As Integer
        iframe_recv_err As Integer
        xmit_aborts As Integer
        xmit_success As Long
        recv_success As Long
        iframe_xmit_err As Integer
        recv_buff_unavail As Integer
        t1_timeouts As Integer
        ti_timeouts As Integer
        Reserved1 As Long
        free_ncbs As Integer
        max_cfg_ncbs As Integer
        max_ncbs As Integer
        xmit_buf_unavail As Integer
        max_dgram_size As Integer
        pending_sess As Integer
        max_cfg_sess As Integer
        max_sess As Integer
        max_sess_pkt_size As Integer
        name_count As Integer
   End Type
   Private Type NAME_BUFFER
        name  As String * NCBNAMSZ
        name_num As Integer
        name_flags As Integer
   End Type
   Private Type ASTAT
        adapt As ADAPTER_STATUS
        NameBuff(30) As NAME_BUFFER
   End Type

   Private Declare Function Netbios Lib "netapi32.dll" _
           (pncb As NCB) As Byte
   Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ( _
           hpvDest As Any, ByVal hpvSource As Long, ByVal cbCopy As Long)
   Private Declare Function GetProcessHeap Lib "kernel32" () As Long
   Private Declare Function HeapAlloc Lib "kernel32" _
           (ByVal hHeap As Long, ByVal dwFlags As Long, _
           ByVal dwBytes As Long) As Long
   Private Declare Function HeapFree Lib "kernel32" (ByVal hHeap As Long, _
           ByVal dwFlags As Long, lpMem As Any) As Long

Public Function GetMACAddress(sIP As String) As String
    Dim sRtn As String
    Dim myNcb As NCB
    Dim bRet As Byte
    
    Dim aIP() As String
    Dim X As Long
    Dim nIP As String
    
    If InStr(sIP, ".") = 0 Then
       GetMACAddress = "Invaild IP Address."
       Exit Function
    End If
    
    aIP = Split(sIP, ".", -1, vbTextCompare)
    If UBound(aIP()) <> 3 Then
       GetMACAddress = "Invaild IP Address."
       Exit Function
    End If
    
    For X = 0 To UBound(aIP())
        If Len(aIP(X)) > 3 Then
           GetMACAddress = "Invaild IP Address"
           Exit Function
        End If
        
        If IsNumeric(aIP(X)) = False Then
           GetMACAddress = "Invaild IP Address"
           Exit Function
        End If
        
        If InStr(aIP(X), ",") <> 0 Then
           GetMACAddress = "Invaild IP Address"
           Exit Function
        End If
        
        If CLng(aIP(X)) > 255 Then
           GetMACAddress = "Invaild IP Address"
           Exit Function
        End If
        
        If nIP = "" Then
           nIP = String(3 - Len(aIP(X)), "0") & aIP(X)
        Else
           nIP = nIP & "." & String(3 - Len(aIP(X)), "0") & aIP(X)
        End If
    Next

    sRtn = ""
    myNcb.ncb_command = NCBRESET
    bRet = Netbios(myNcb)
    myNcb.ncb_command = NCBASTAT
    myNcb.ncb_lana_num = 0
    myNcb.ncb_callname = nIP & Chr(0)
    
    Dim myASTAT As ASTAT, tempASTAT As ASTAT
    Dim pASTAT As Long
    myNcb.ncb_length = Len(myASTAT)
    
    pASTAT = HeapAlloc(GetProcessHeap(), HEAP_GENERATE_EXCEPTIONS Or HEAP_ZERO_MEMORY, myNcb.ncb_length)
    If pASTAT = 0 Then
        GetMACAddress = "memory allcoation failed!"
        Exit Function
    End If

    myNcb.ncb_buffer = pASTAT
    bRet = Netbios(myNcb)

    If bRet <> 0 Then
       GetMACAddress = "Can not get the MAC Address from IP Address: " & sIP
       Exit Function
    End If
    
    CopyMemory myASTAT, myNcb.ncb_buffer, Len(myASTAT)
    
    Dim sTemp As String
    Dim I As Long
    For I = 0 To 5
        sTemp = Hex(myASTAT.adapt.adapter_address(I))
        If I = 0 Then
           sRtn = IIf(Len(sTemp) < 2, "0" & sTemp, sTemp)
        Else
           sRtn = sRtn & Space(1) & IIf(Len(sTemp) < 2, "0" & sTemp, sTemp)
        End If
    Next
    HeapFree GetProcessHeap(), 0, pASTAT
    GetMACAddress = sRtn
End Function


#16


獲取IP地址,引用 Winsock
Option Explicit
Public MSWSK As New MSWinsockLib.Winsock
Public Function GetLocalIP() As String
    GetLocalIP = MSWSK.LocalIP
End Function

Public Function GetLocalHostName()
    GetLocalHostName = MSWSK.LocalHostName
End Function

Public Function GetLocalPort()
    GetLocalPort = MSWSK.LocalPort
End Function

Public Function GetRemoteHostIP() As String
    GetRemoteHostIP = MSWSK.RemoteHostIP
End Function

Public Function GetRemoteHostName()
    GetRemoteHostName = MSWSK.RemoteHost
End Function

Public Function GetRemotePort()
    GetRemotePort = MSWSK.RemotePort
End Function

#17


或者用最簡單的方法獲得服務器IP
引用 Microsoft Active Server Pages Object Library

    Set Context = PassedScriptingContext
    Set Application = Context.Application
    Set Request = Context.Request
    Set Response = Context.Response
    Set Server = Context.Server
    Set Session = Context.Session

Request.ServerVariables("REMOTE_HOST") 就是服務器的IP地址了。




#18


怎么沒人幫我看啊?我暈

#19


好東西
樓上的大俠不要急
沒辦法幫你,只能幫你頂了

#20


Jaron就是強啊,呵呵,幫你頂一個!~~

#21


大家幫看看,gz

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: