网站程序安全分析器 VB源码

本程序通杀:
ASP ASPX PHP CGI JSP VBS 等脚本WebShell
并能查出99%加密过的脚本WebShell
后来发现..精度越高误杀越高...基本做到宁误扫三千不放过1马~

其实是利用串判断.原理很简单.有很多人向偶要代码.想到人家ScanWebshell都贡献出来了~偶要是不贡献出来就不厚道咯.以下是全部代码.

 
CODE:
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
Private Const WS_EX_LAYERED = &H80000
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_ALPHA = &H2
Private Const LWA_COLORKEY = &H1
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const HTCAPTION = 2
Private Const WM_NCLBUTTONDOWN = &HA1
Private Declare Function timeGetTime Lib "winmm.dll" () As Long
Private Declare Sub InitCommonControls Lib "comctl32.dll" ()
Dim SuJu1 As Long
Dim Faxian As String
Dim FaJs As String
Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesA" (ByVal lpFileName As String) As Long
Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
Const MAX_PATH = 260
Const MAXDWORD = &HFFFF
Const INVALID_HANDLE_VALUE = -1
Const FILE_ATTRIBUTE_ARCHIVE = &H20
Const FILE_ATTRIBUTE_DIRECTORY = &H10
Const FILE_ATTRIBUTE_HIDDEN = &H2
Const FILE_ATTRIBUTE_NORMAL = &H80
Const FILE_ATTRIBUTE_READONLY = &H1
Const FILE_ATTRIBUTE_SYSTEM = &H4
Const FILE_ATTRIBUTE_TEMPORARY = &H100
Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pIdl As Long, ByVal pszPath As String) As Long
Private Type BrowseInfo
hwndOwner As Long
piDLroot As Long
pszdisplayName As String
lpsztitle As String
ulFlags As Long
lpfncallback As Long
lParam As Long
iImage As Long
End Type
Private Type FILETIME
    dwLowDateTime   As Long
    dwHighDateTime   As Long
End Type
Private Type WIN32_FIND_DATA
    dwFileAttributes   As Long
    ftCreationTime   As FILETIME
    ftLastAccessTime   As FILETIME
    ftLastWriteTime   As FILETIME
    nFileSizeHigh   As Long
    nFileSizeLow   As Long
    dwReserved0   As Long
    dwReserved1   As Long
    cFileName   As String * MAX_PATH
    cAlternate   As String * 14
End Type
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
ReleaseCapture
SendMessage hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&
End Sub
Private Sub Form_Initialize()
  InitCommonControls
  Dim rtn As Long
  rtn = GetWindowLong(hwnd, GWL_EXSTYLE)
  rtn = rtn Or WS_EX_LAYERED
  SetWindowLong hwnd, GWL_EXSTYLE, rtn
  SetLayeredWindowAttributes hwnd, &HFF00FF, 0, LWA_COLORKEY
End Sub
Sub YS()
  Dim Savetime As Double
  Savetime = timeGetTime
  While timeGetTime < Savetime + 200
  DoEvents
  Wend
End Sub
Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me.Image1.Visible = False
Me.Image2.Visible = True
YS
WindowState = 1
Me.Image1.Visible = True
Me.Image2.Visible = False
End Sub
Private Sub Image4_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me.Image4.Visible = False
Me.Image3.Visible = True
YS
End
End Sub
Private Sub Command1_Click()
Dim bi As BrowseInfo
Dim folderid As Long
Dim pb As String
With bi
.hwndOwner = Me.hwnd
.lpsztitle = "选择查杀的文件夹:"
.ulFlags = 3
End With
folderid = SHBrowseForFolder(bi)
If folderid = 0 Then Exit Sub
pb = String$(260, 0)
SHGetPathFromIDList folderid, pb
pb = Left$(pb, InStr(pb, vbNullChar) - 1)
Text1.Text = pb
End Sub
Function StripNulls(OriginalStr As String) As String
    If (InStr(OriginalStr, Chr(0)) > 0) Then
          OriginalStr = Left(OriginalStr, InStr(OriginalStr, Chr(0)) - 1)
    End If
    StripNulls = OriginalStr
End Function

Function FindFilesAPI(path As String, SearchStr As String)
    Dim FileName   As String
    Dim DirName   As String
    Dim dirNames()   As String
    Dim nDir   As Integer
    Dim i   As Integer
    Dim hSearch   As Long
    Dim WFD   As WIN32_FIND_DATA
    Dim Cont   As Integer
    If Right(path, 1) <> "\" Then path = path & "\"
   
    nDir = 0
    ReDim dirNames(nDir)
    Cont = True
    hSearch = FindFirstFile(path & "*.*", WFD)
    If hSearch <> INVALID_HANDLE_VALUE Then
        Do While Cont
          DirName = StripNulls(WFD.cFileName)
          If (DirName <> ".") And (DirName <> "..") Then
                If GetFileAttributes(path & DirName) And FILE_ATTRIBUTE_DIRECTORY Then
                    dirNames(nDir) = DirName
                    nDir = nDir + 1
                    ReDim Preserve dirNames(nDir)
                End If
          End If
          Cont = FindNextFile(hSearch, WFD)
          DoEvents
          Loop
         
          Cont = FindClose(hSearch)
    End If
    hSearch = FindFirstFile(path & SearchStr, WFD)
    Cont = True
    If hSearch <> INVALID_HANDLE_VALUE Then
          While Cont
                FileName = StripNulls(WFD.cFileName)
                If (FileName <> ".") And (FileName <> "..") Then
                              
                SuJu1 = SuJu1 + 1
               

  Dim strFileContent As String
  Dim strTemp As String
  
  If Dir(path & FileName) <> "" Then
    Open path & FileName For Input As #1
    While Not EOF(1)
        Line Input #1, strTemp
              
        If InStr(1, strTemp, "WScr" & DoMyBest & "ipt.Shell", vbTextCompare) Or InStr(1, strTemp, "clsid:72C24DD5-D70A" & DoMyBest & "-438B-8A42-98424B88AFB8", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险组件! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:一般被ASP木马利用来获取CMD SHELL 序列:1"
        Faxian = "发现危险"
        End If
      
        If InStr(1, strTemp, "She" & DoMyBest & "ll.Application", vbTextCompare) Or InStr(1, strTemp, "clsid:13709620-C27" & DoMyBest & "9-11CE-A49E-444553540000", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险组件! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:一般被ASP木马利用来获取系统信息 序列:2"
        Faxian = "发现危险"
        End If
      
        If InStr(1, strTemp, "<%@ LANGUAGE = VBScript.Encode %>", vbTextCompare) Or InStr(1, strTemp, "#@", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 文件被加密! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件被加过密!一般安全的程序是不可能加密的!极有可能是木马.图片格式文件可能会误杀请详细检查 序列:3"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B", vbTextCompare) Or InStr(1, strTemp, "clsid:0D43FE01-F093-11CF-8940-00A0C9054228", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险组件! " & " 安全评估: 危险度高!"
        List1.AddItem "描述:此文件包含文件读写指令.如非上传组件.请删除! 序列:4"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "上传组件", vbTextCompare) Or InStr(1, strTemp, "Upload", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度中!(未知)"
        List1.AddItem "描述:此文件包含上传组件或上传文件的专用串.请检查是否合法. 序列:5"
        Faxian = "发现危险"
        End If
   
        If InStr(1, strTemp, "FSO", vbTextCompare) Or InStr(1, strTemp, "<SCRIPT RUNAT=SERVER LANGUAGE=JAVASCRIPT>", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度高!(未知)"
        List1.AddItem "描述:此文件包含木马执行特征.请检查是否合法. 序列:6"
        Faxian = "发现危险"
        End If
   
        If InStr(1, strTemp, "execute request", vbTextCompare) Or InStr(1, strTemp, "FQAAAA", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件包含一句话木马.请手工分析删除! 序列:7"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "java.io", vbTextCompare) Or InStr(1, strTemp, "java.util", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险组件! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件包含JSP木马.请删除! 序列:8"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "System.IO", vbTextCompare) Or InStr(1, strTemp, "System.Diagnostics", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险组件! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件包含ASP.NET木马.请删除! 序列:9"
        Faxian = "发现危险"
        End If

        If InStr(1, strTemp, "TBNnGMfflrqBF", vbTextCompare) Or InStr(1, strTemp, "POST[cmd]", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险组件! " & " 安全评估: 危险度高!"
        List1.AddItem "描述:此文件包含PHP木马.请删除! 序列:10"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "务服", vbTextCompare) Or InStr(1, strTemp, "琳", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 文件被加密! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件有可能被加过密!一般安全的程序是不可能加密的!极有可能是木马 序列:11"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "System.Net.Sockets", vbTextCompare) Or InStr(1, strTemp, "UnEncode=temp", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件包含木马执行特征.请检查是否合法 序列:12"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "execute request(", vbTextCompare) Or InStr(1, strTemp, "vbs&", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 文件被加密! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件有可能被加过密!一般安全的程序是不可能加密的!极有可能是木马 序列:13"
        Faxian = "发现危险"
        End If
   
        If InStr(1, strTemp, "MSXML2.XMLHTTP", vbTextCompare) Or InStr(1, strTemp, "127.0.0.1", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险组件! " & " 安全评估: 危险度高!"
        List1.AddItem "描述:此文件包含木马执行特征.请检查是否合法 序列:14"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "Encoding.ASCII", vbTextCompare) Or InStr(1, strTemp, "cmd", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度高!"
        List1.AddItem "描述:此文件包含木马转码特征或CMD关键字.请检查是否合法 序列:15"
        Faxian = "发现危险"
        End If
   
        If InStr(1, strTemp, "GetSpecialFolder", vbTextCompare) Or InStr(1, strTemp, "Socket", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度高!"
        List1.AddItem "描述:此文件包含木马执行特征.请检查是否合法 序列:16"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "gif""" & "--", vbTextCompare) Or InStr(1, strTemp, "jpg""" & "--", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件引用了图片极有可能是图片木马 序列:17"
        Faxian = "发现危险"
        End If

        If InStr(1, strTemp, "bmp""" & "--", vbTextCompare) Or InStr(1, strTemp, "png""" & "--", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度极高!"
        List1.AddItem "描述:此文件引用了图片极有可能是图片木马 序列:18"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "<?require(", vbTextCompare) Or InStr(1, strTemp, "require($", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度高!(未知)"
        List1.AddItem "描述:此文件包涵了PHP的特殊引用如发现类似<?require($AAA);?>引用请检查是否合法 序列:19"
        Faxian = "发现危险"
        End If
        
        If InStr(1, strTemp, "4e454c33322", vbTextCompare) Or InStr(1, strTemp, """\x", vbTextCompare) Then
        List1.AddItem "发现 " & FileName & " 包含危险特征! " & " 安全评估: 危险度高!(未知)"
        List1.AddItem "描述:此文件极有可能是提权PHP木马或加过密的文件 序列:20"
        Faxian = "发现危险"
        End If
   
    Wend
        
        If SuJu1 > 100 Then
        Text5.Text = ""
        End If
        
        If Faxian = "发现危险" Then
        List1.AddItem "发现存在危险的文件是: "
        List1.AddItem ""
        List1.AddItem path & FileName
        List1.AddItem "-----------------------------------------------------------------------------------------------"
        Faxian = ""
        FaJs = FaJs + 1
        Me.Label2.Caption = "发现有隐患的文件有:" & FaJs & "个"
        Else
        Faxian = ""
        End If
   
    Close #1
  End If
              
                GC1 = Text5.Text & "正在检测文件..." & Chr(13) & Chr(10) & path & FileName & Chr(13) & Chr(10)
                Text5.Text = GC1
                  
               
                End If
               
               
                If Me.Command3.Enabled = True Then
                Exit Function
                End If
               
               
                Cont = FindNextFile(hSearch, WFD)
                DoEvents
               
                Me.Label3.Caption = "扫描进程: " & "已经扫描文件:" & SuJu1 & "个"
               
          Wend
          Cont = FindClose(hSearch)
    End If
   
    If nDir > 0 Then
          For i = 0 To nDir - 1
                FindFilesAPI = FindFilesAPI + FindFilesAPI(path & dirNames(i) & "\", SearchStr)
          Next i
    End If
   
End Function

Private Sub Command3_Click()

Dim SearchPath   As String, FindStr     As String
Dim FileSize   As Long

If Text1.Text = "" Then
MsgBox "请输入正确扫描路径"
Exit Sub
End If

Me.Command3.Enabled = False
Me.Command7.Enabled = True

List1.Clear
FaJs = 0
SuJu1 = 0
Me.Text5 = ""
  Screen.MousePointer = vbHourglass
  List1.Clear
    LUjin = Text1.Text & "\"
    SearchPath = LUjin
    FindStr = "*.*"
  FindFilesAPI SearchPath, FindStr
  Screen.MousePointer = vbDefault
  If Screen.MousePointer = vbDefault Then
  MsgBox "扫描完成!自动导出扫描结果."
  CxLog
  FaJs = "0"
  Me.Command3.Enabled = True
  Me.Command7.Enabled = False
  End If
End Sub

Sub CxLog()
  On Error Resume Next
  Open App.path & "\LOG\" & Date & "查杀结果.log" For Output As #1
  Print #1, "www.ChinNetHack.Com - 网站程序安全分析器 零号服务器专用"
  Print #1, "发现对服务器具有安全隐患的文件有" & FaJs & "个. 具体结果如下:" & Chr(13) & Chr(10)
  For i = 0 To List1.ListCount
  Print #1, List1.List(i)
  Next
  Close #1
  Shell "NOTEPAD.EXE " & App.path & "\LOG\" & Date & "查杀结果.log", vbMaximizedFocus
End Sub
Private Sub Command7_Click()
Me.Command3.Enabled = True
Me.Command7.Enabled = False
Screen.MousePointer = vbDefault
End Sub
Private Sub Text5_Change()
Text5.SelStart = Len(Text5.Text)
End Sub

转载于:https://www.cnblogs.com/allyesno/archive/2007/07/02/802633.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/436452.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

S3C6410启动模式介绍

目前的ARM处理器都支持多种启动模式&#xff0c;S3C6410和以前的Samsung的ARM处理器一样&#xff0c;通过外部管脚OM[4:0]的拉高拉低来决定是从哪个存储设备上启动。我认为S3C6410的User Manual并没有说的很清楚&#xff0c;所以我在最开始使用的时候&#xff0c;也对其启动模式…

如何用木板做桥_如何辨别使用的公园椅是否需要保养

如何辨别使用的公园椅存在哪些问题新城市公园椅小编与您分享&#xff0c;每一项事物都会有它的使用寿命&#xff0c;公园椅也不例外。公园椅使用有几年后后&#xff0c;我们通过公园椅的哪些表现来发现公园椅存在哪些隐患呢&#xff1f;通过观察、触摸、按压这三种方式来发现公…

密码学概述

时间点&#xff1a; 公元前400年&#xff0c;希腊人发明了置换密码&#xff1b; 1881年&#xff0c;世界上第一个电话保密专利出现&#xff1b; 二战期间&#xff0c;德国军方启用“恩尼格玛”密码机&#xff1b; 1976年&#xff0c;由于对称加密算法已经不能满足需要&#…

【转】关于医疗术语 CT,MR,DR,CR,DSA 等

医疗术语解释&#xff1a; Digital Radiography (CR, DX) &#xff1a;数字X线摄影 Mammography (MG)&#xff1a;乳房X射线照相术 Computed Tomography (CT)&#xff1a;计算机断层扫描 Magnetic Resonance (MR)&#xff1a;磁共振 Positron Emission Tomography PET-CT …

c语言删除文件remove_Python中的文件和目录操作

对于文件和目录的处理&#xff0c;虽然可以通过操作系统命令来完成&#xff0c;但是Python语言为了便于开发人员以编程的方式处理相关工作&#xff0c;提供了许多处理文件和目录的内置函数。重要的是&#xff0c;这些函数无论是在Unix、Windows还是Macintosh平台上&#xff0c;…

漏洞:Client ReDos From Regex Injection

漏洞描述&#xff1a; 扫描漏洞如下&#xff1a;代码&#xff1a; // In IE6, the hash fragment and search params are incorrect if the // fragment contains ?. getSearch: function() { var match this.location.href.replace(/#.*/, ).match(/\?./); …

【转】mysql 、oracle中char和varchar以及varchar2的区别

mysql char是固定长度&#xff0c;varchar是可变长度的&#xff0c;varchar2是oracle特有的。 char定长存储&#xff0c;速度快&#xff0c;但是存在一定空间的资源浪费,适用于存储字段不是很大、对速度要求高的场合。速度快是因为在物理上是按照定长存储的&#xff0c;这样就…

WinCE Boot方式及 Bootloader架构概述

Bootloader的概念就是一个用于引导的loader&#xff0c;在系统上电的时候最先被运行&#xff0c;然后对硬件平台做最基本的初始化&#xff0c;最后把操作系统加载起来。不同的嵌入式操作系统都有自己的Bootloader&#xff0c;但是本质功能都是一样的。 在WinCE中用的最多的就是…

静物摄影用光技巧_摄影技巧:摄影如何用光?摄影大师总结的10点,非常受用!...

点击上方蓝字关注「摄影技巧入门教程」ID&#xff1a;sheying116找到右上角点击?... 设为星标/置顶 丨摄影技巧丨丨摄影入门丨丨摄影教程丨丨摄影图片丨摄影技巧&#xff1a;光线的运用在摄影中至关重要&#xff0c;但很多摄影新手却不知道该如何用光&#xff0c;今天我们就来…

Python如何创建相同值的数组/列表

题目要求 现在有这样的一个需求&#xff1a;创建一个数组或列表&#xff0c;列表中的所有值是相同的。 解决方法 找到两种解决方法&#xff0c;第一种是使用Python的基础语法&#xff0c;第二种是借助numpy包提供的函数实现。分别为大家进行介绍。 方法一&#xff1a;使用P…

【转】肺小结节就诊指南:4种CT的区别及如何选择?

又到医院体检的季节&#xff0c;胸外科医师又要忙着给本院同事看片子了。目前体检查出的早期肺癌越来越多&#xff0c;主要归功于CT检查的普及&#xff0c;相较于X-ray胸片&#xff0c;CT对肺内小结节&#xff0c;特别是小于1cm的结节诊断率更高。因此&#xff0c;要提高早期肺…

CTL_CODE说明

我们在说DeviceIoControl函数时其第二个参数dwIoControlCode就是由CTL_CODE宏定义的&#xff0c;下边我们可以了解一下CTL_CODE的内容。CTL_CODE&#xff1a;用于创建一个唯一的32位系统I/O控制代码&#xff0c;这个控制代码包括4部分组成&#xff1a;DeviceType&#xff08;设…

修改Linux主机名和IP

问题描述 又到了例行的系统安全测试时间&#xff0c;公司部署的一套系统需要做安全测试了&#xff0c;首先要做主机渗透&#xff0c;显然不可能在正式环境直接测&#xff0c;于是就把几台服务器做了个镜像&#xff0c;作为测试环境。 现在问题是&#xff0c;测试环境的ip要修…

可以获得索引值码_搜索引擎优化最适合什么样子的工作?

有些人一直在学习搜索引擎优化&#xff0c;并一直想学习搜索引擎优化。这里是一个关于搜索引擎优化职位的简要介绍。1、 搜索引擎优化的位置是什么&#xff1f;随着电子商务产业的发展&#xff0c;搜索引擎优化的地位越来越重要。它主要负责优化网页的自然排名&#xff0c;这与…

【转】医学图像之DICOM格式解析

最近导师给安排了新任务&#xff0c;由于刚进入实验室&#xff0c;对于医学图像这一块还一知半解&#xff0c;所以就想分享一下有关医学常见影像的学习资料(尤其是dicom后缀的图像文件)&#xff0c;欢迎大家一起交流。 目录 1.医学影像学的介绍 2.DICOM信息的简介 3.DICOM内…

DeviceIoControl的使用说明

应用程序和驱动程序的通信过程是&#xff1a;应用程序使用CreateFile函数打开设备&#xff0c;然后用DeviceIoControl与驱动程序进行通信&#xff0c;包括读和写两种操作。还可以用ReadFile读数据用WriteFile写数据。操作完毕时用CloseHandle关闭设备。我们比较常用的就是用Dev…

多元有序logistic回归分析_一文详述:观察性研究中的logistic回归分析思路

本文内容来自《中华流行病学杂志》2019年第40卷第8期&#xff0c;作者为冯国双教授&#xff0c;原题目为《观察性研究中的logistic回归分析思路》。将这篇文章分享给医咖会的伙伴们&#xff0c;希望大家能从领域大咖的见解中有所收获&#xff0c;指导医学研究之路。&#xff08…

CTL_CODE定义中Method的说明

我在上一篇中说明CTL_CODE的时候&#xff0c;其中CTL_CODE定义中有一个Method域&#xff0c;该域的功能意义是定义用于与在驱动程序中获取应用程序数据缓冲区的地址方式。如果你看了我前边的文章&#xff0c;你可以看到在DeviceIoControl的使用说明中对DeviceIoControl参数进行…

【转】禁用Chrome和Firefox中自动播放的动画GIF

动画GIF已经腐臭&#xff0c;并且在浏览时自动播放时可能会非常烦人。以下是如何阻止他们在Chrome和Firefox中自动播放。 禁用动画GIF Firefox 在地址栏中输入&#xff1a; about:config&#xff0c;然后按Enter。如果“这可能会使您的保修信息失效&#xff0c;请点击&#…

Python:Sklearn概述

文章来源&#xff1a;https://blog.csdn.net/algorithmPro/article/details/103045824 Sklearn (全称 Scikit-Learn) 是基于 Python 语言的机器学习工具。它建立在 NumPy, SciPy, Pandas 和 Matplotlib 之上&#xff0c;里面的 API 的设计非常好&#xff0c;所有对象的接口简单…