OVH Cloud OVH Cloud

Scanner un port sur un poste en réseau

10 réponses
Avatar
HD
Bonjour,

Pour contrôler à distance que mes Pc ne sont pas infectés par MyDoom je
voudrais tester le port 3127 sur certains postes distants.

Comment peut on le faire en VBA.

Merci d'avance pour votre aide.
--
@+
HD

10 réponses

Avatar
FxM
Bonsoir,

AMHA, ce n'est pas le genre de choses que je vérifierai à distance
mais en local et c'est le boulot d'un anti-virus à jour. A défaut, il
y a les outils de désinfection qui indiquent si le PC est clean.
Il existe aussi des sites dédiés à la sécurité et qui regardent les
ports ouverts.

VBA pour cet usage me semble être le pire des choix car c'est
réinventer l'eau chaude (surtout lorsque l'on parle de sécurité).

@+
FxM




HD wrote:

Bonjour,

Pour contrôler à distance que mes Pc ne sont pas infectés par MyDoom je
voudrais tester le port 3127 sur certains postes distants.

Comment peut on le faire en VBA.

Merci d'avance pour votre aide.


Avatar
Olivier Pont
En VBA, pas évident.
Tu devrais essayer en VB.Net, il y a tout ce qu'il faut comme API.
Du cout un portscan peut se faire en qques lignes.

"HD" a écrit dans le message de
news:
Bonjour,

Pour contrôler à distance que mes Pc ne sont pas infectés par MyDoom je
voudrais tester le port 3127 sur certains postes distants.

Comment peut on le faire en VBA.

Merci d'avance pour votre aide.
--
@+
HD




Avatar
HD
Tu devrais essayer en VB.Net,
il y a tout ce qu'il faut comme API.


L'avantage du VBA est qu'il est fournit avec Excel et Word. Mais pour VB.Net
je suppose qu'on doit acheter une licence? Il ne doit pas exister en
freeware?
--
@+
HD

Avatar
HD
Bonsoir,
Bonjour,


AMHA, ce n'est pas le genre de choses
que je vérifierai à distance mais en local
et c'est le boulot d'un anti-virus à jour.
Je suis d'accord avec vous. L'idéal est de pouvoir vérifier les postes un

par un. Mais je voudrais réaliser un script en VBA permettant de réaliser un
rapide petit test en scannant certains ports.

A défaut, il y a les outils de désinfection
qui indiquent si le PC est clean.
Que je connais comme ceux de www.securiser.com


Il existe aussi des sites dédiés à la sécurité et
qui regardent les ports ouverts.
Comme SuperScan qui est un freeware performant et à la prise en main facile.


VBA pour cet usage me semble être le pire
des choix car c'est réinventer l'eau chaude
(surtout lorsque l'on parle de sécurité).
Il est parfois intéressant de "réinventer l'eau chaude" pour comprendre

comment on chauffe de l'eau ;)

On peut utiliser des outils tout prêts mais il peut être intéressant de
comprendre comment ils ont été réalisés. ça peut toujours servir.
--
@+
HD

Avatar
Christian Herbé
Bonjour,

Pour contrôler à distance que mes Pc ne sont pas infectés par MyDoom je
voudrais tester le port 3127 sur certains postes distants.


Ce n'est pas la réponse attendue mais c'est peut-être une piste:
Posté ici par Stéphane Royer (11/10/2000 11:56)


Private declare function apiGetComputername Lib "kernel32" Alias _
"GetComputernameA" (ByVal lpBuffer As String, nSize As long) As long

Sub Display_UserIP()
msgbox fOSMachinename
end Sub

function fOSMachinename() As String
dim lngLen As long
dim lngX As long
dim strCompname As String
lngLen = 16
strCompname = String$(lngLen, 0)
lngX = apiGetComputername(strCompname, lngLen)
if lngX <> 0 then
fOSMachinename = Left$(strCompname, lngLen)
Else
fOSMachinename = ""
end if
end function


Ciao


--
STéphane
- en plein sport en chambre avec Pentium III -

Site Web : http://touareg.citeweb.net/
Pages Excel : http://touareg.citeweb.net/aideinformatique/mainexcel.html

Avatar
Michel Pierron
Bonsoir HD;
Un début de solution (à toi de boucler sur les adresses des postes réseau):
Sub ScanLocalPorts()
On Error Resume Next
Dim Socket As Object, AddressIP As String
Set Socket = CreateObject("MSWinsock.Winsock.1")
Select Case Err.Number
Case 0: AddressIP = Socket.localip
Case &H80040112
MsgBox "No licence found. Install Visual Studio !", 48
Case &H80020009
MsgBox "ActiveX Winsock not registered - use regsvr32 !", 64
Case Else
MsgBox "Error " & Err.Number & " - " & Err.Description & " !", 64
End Select
If Err Then Exit Sub
Cells.ClearContents
Dim i As Integer, x As Byte, State As String
Socket.RemoteHost = AddressIP
x = x + 1: Cells(x, 1) = AddressIP
For i = 3100 To 3130
Application.StatusBar = "Scanning port: " & Format((i - 3100) / 30,
"0%")
Socket.RemotePort = i
Socket.Connect
Select Case Socket.State
Case 0: State = "Has not been created !"
Case 1: State = "Exists, but is not currently in use !"
Case 2: State = "Is listening for connections from remote hosts !"
Case 3: State = "Is in the process of connecting to a remote host !"
Case 4: State = "Is in the process of accepting a connection from a
remote client !"
Case 5: State = "is in the process of receiving data !"
Case 6: State = "Is in the process of sending data !"
Case 7: State = "Is being closed !"
End Select
Socket.Close
x = x + 1
Cells(x, 1) = "Port " & i: Cells(i, 2) = State
Next i
Application.StatusBar = False
Set Socket = Nothing
Columns("A:B").Columns.AutoFit
End Sub

MP

"HD" a écrit dans le message de
news:
Bonjour,

Pour contrôler à distance que mes Pc ne sont pas infectés par MyDoom je
voudrais tester le port 3127 sur certains postes distants.

Comment peut on le faire en VBA.

Merci d'avance pour votre aide.
--
@+
HD




Avatar
HD
Set Socket = CreateObject("MSWinsock.Winsock.1")


Quel est l'ActiveX à utiliser en référence?
--
@+
HD

Avatar
Michel Pierron
Bonjour HD;
Menu Affichage / Barre d'outils / Boîte à outils Contrôles / Autres Contrôles
Cocher Microsoft Winsock Control
NB: Avec la méthode CreateObject, aucune référence n'est nécessaire.

MP

"HD" a écrit dans le message de
news:%23lJ7O%
Set Socket = CreateObject("MSWinsock.Winsock.1")


Quel est l'ActiveX à utiliser en référence?
--
@+
HD





Avatar
HD
Microsoft Winsock Control


Je ne dispose pas de cette référence.
--
@+
HD

Avatar
Michel Pierron
Re HD;
Dans ce cas, je ne vois pas comment tu peux faire car même en utilisant des
fonctions API, ce contrôle est nécessaire.
Le mieux, c'est de rechercher un utilitaire freeware sur le net; regarde si tu
peux trouver ton bonheur à : http://www.gratilog.net/reseau2.htm

MP

"HD" a écrit dans le message de
news:e9%
Microsoft Winsock Control


Je ne dispose pas de cette référence.
--
@+
HD