RFIC ( RedKod File Integrity Checker ) Help File


  1. Présentation
  2. RFIC est un programme compatible Windows et Linux qui va permettre de vérifier l'intégrité des fichiers souhaités et de restaurer ceux-ci en cas de problème d'intégrité d'un de ces fichiers. Le contrôle est basé sur la génération d'un hash de type MD5 qui est ensuite utilisé pour contrôler chaques fichiers.

  3. Utilisation

  1. Le fichier de configuration : rfic.conf
  2. Tout d'abord vous devez remplir le fichier de configuration de RFIC nommé rfic.conf. En premier lieu vous devez spécifiez le répertoire dans lequel seront stocké les fichiers originaux pour que le programme puisse agir en cas de problème d'intégrité, ensuite vous allez devoir spécifier les fichiers sur lequels vous voulez vérifier l'intégrité.

    Exemple de fichier de configuration pour RFIC :

    # RFIC By R-e-D (r-e-d@redkod.com)
    # Configuration File
    #
    # No Return on the end of this file Or Dead 
    #
    # Path for all Backup files
    [c:\backup\]
    #
    # Protected Files
    #
    [rfic.exe]
    [rfic.conf]
    [c:\boot.ini]
    [c:\autoexec.bat]
    [c:\winnt\explorer.exe]
    [c:\winnt\regedit.exe]
    [c:\winnt\system32\kernel32.exe]
    [c:\winnt\system32\ntoskrnl.exe]
    [c:\winnt\system32\kernel32.dll]
    [c:\winnt\system32\netstat.exe]
    [c:\winnt\system32\cmd.exe]
    [c:\winnt\system32\winlogon.exe]
    [c:\winnt\system32\ws2_32.dll]
    [c:\winnt\system32\wsock32.dll]
    [c:\winnt\system32\wininet.dll]
    [c:\winnt\system32\user32.dll]
    [c:\winnt\system32\taskmgr.exe]
    [c:\winnt\system32\ntdll.dll]
    [c:\winnt\system32\shell32.dll]
    [c:\winnt\system32\services.exe]
    [c:\winnt\system32\sfc.exe]
    
    Note : Ne pas terminer la fin du fichier de configuration avec un retour à la ligne.

  3. La génération des hashs MD5
  4. Une fois le fichier de configuration correctement rempli, vous allez pouvoir générer les hashs MD5, voici un exemple :

    C:\rfic>rfic.exe -g
    Loading Configuration File : rfic.conf...
    Number of files : 21
    Generating All MD5 Sum and save in rfic.save...
    
    ..................... [OK]
    
    Les hash MD5 générés sont sauvés dans le fichier nommé RFIC.save se trouvant sans le même répertoire que l'exécutable du programme RFIC.

  5. La sauvegarde des fichiers
  6. Maintenant que tous nos hashs sont générés nous allons devoir sauvegarder nos fichiers originaux dans le répertoire spécifié par le fichier de configuration rfic.conf. Voici un exemple présentant la manipulation à effectuée.

    C:\rfic>rfic -b
    Loading Configuration File : rfic.conf...
    Backup all files in c:\backup\ .
    Copie de rfic.exe vers c:\backup\rfic.exe ...
            Size    196696 Octets   [OK]
    Copie de rfic.conf vers c:\backup\rfic.conf ...
            Size    772 Octets      [OK]
    Copie de c:\boot.ini vers c:\backup\boot.ini ...
            Size    186 Octets      [OK]
    Copie de c:\autoexec.bat vers c:\backup\autoexec.bat ...
            Size    8 Octets        [OK]
    Copie de c:\winnt\explorer.exe vers c:\backup\explorer.exe ...
            Size    243984 Octets   [OK]
    Copie de c:\winnt\regedit.exe vers c:\backup\regedit.exe ...
            Size    76048 Octets    [OK]
    Copie de c:\winnt\system32\kernel32.exe vers c:\backup\kernel32.exe ...
            Size    159835 Octets   [OK]
    Copie de c:\winnt\system32\ntoskrnl.exe vers c:\backup\ntoskrnl.exe ...
            Size    1716240 Octets  [OK]
    Copie de c:\winnt\system32\kernel32.dll vers c:\backup\kernel32.dll ...
            Size    781072 Octets   [OK]
    Copie de c:\winnt\system32\netstat.exe vers c:\backup\netstat.exe ...
            Size    28432 Octets    [OK]
    Copie de c:\winnt\system32\cmd.exe vers c:\backup\cmd.exe ...
            Size    249104 Octets   [OK]
    Copie de c:\winnt\system32\winlogon.exe vers c:\backup\winlogon.exe ...
            Size    183568 Octets   [OK]
    Copie de c:\winnt\system32\ws2_32.dll vers c:\backup\ws2_32.dll ...
            Size    68368 Octets    [OK]
    Copie de c:\winnt\system32\wsock32.dll vers c:\backup\wsock32.dll ...
            Size    24336 Octets    [OK]
    Copie de c:\winnt\system32\wininet.dll vers c:\backup\wininet.dll ...
            Size    590336 Octets   [OK]
    Copie de c:\winnt\system32\user32.dll vers c:\backup\user32.dll ...
            Size    380176 Octets   [OK]
    Copie de c:\winnt\system32\taskmgr.exe vers c:\backup\taskmgr.exe ...
            Size    92432 Octets    [OK]
    Copie de c:\winnt\system32\ntdll.dll vers c:\backup\ntdll.dll ...
            Size    512272 Octets   [OK]
    Copie de c:\winnt\system32\shell32.dll vers c:\backup\shell32.dll ...
            Size    2405136 Octets  [OK]
    Copie de c:\winnt\system32\services.exe vers c:\backup\services.exe ...
            Size    88848 Octets    [OK]
    Copie de c:\winnt\system32\sfc.exe vers c:\backup\sfc.exe ...
            Size    10512 Octets    [OK]
    
    A partir de maintenant si RFIC découvre un problème dans l'intégrité d'un de ces fichiers, celui ci va restaurer selon votre avis le fichier endommagé grâce à ses copies crées.

  7. La vérification des fichiers
  8. Maintenant nous pouvons réaliser un contrôle de nos fichiers à chaque fois que nous le voudrons. Encore une fois, voice un exemple d'utilisation.

    C:\rfic>rfic -c
    Loading Configuration File : rfic.conf
    Number of files : 21
    Loading Saved MD5 Hash File : rfic.save
    Number of MD5 sums : 21
    Global Checking for all MD5 sums...
    
    [OK] 1: 2E390CE00B23E46010E0222F894B39C6        rfic.exe
    [OK] 2: 59FAC85E6F2F141C6FD9AA45AD0F164B        rfic.conf
    [OK] 3: 06893FD06CA0C562358A9AA15FB27CED        c:\boot.ini
    [OK] 4: DD14876B3CDF5B26E3DC8C2FDB3D3170        c:\autoexec.bat
    [OK] 5: 0BCE2B10ACDC82EA62DF79ADEF06C14A        c:\winnt\explorer.exe
    [OK] 6: C99ACFF4E913FA4CD477C5E62835511B        c:\winnt\regedit.exe
    [OK] 7: 22A1A95396D1F2C9EC3398137E3D1F62        c:\winnt\system32\kernel32.exe
    [OK] 8: 617A85D37CF03F2C763E1471C7DFF9F3        c:\winnt\system32\ntoskrnl.exe
    [OK] 9: BDDBDC7945E44AEB8E02AF76DE35F438        c:\winnt\system32\kernel32.dll
    [OK] 10: 58936E88429DF0BAFD99B992AB5CF114       c:\winnt\system32\netstat.exe
    [OK] 11: 55249AAFE90717B3D33AAD76797AC71E       c:\winnt\system32\cmd.exe
    [OK] 12: 67E37C434BD38688B779D74EFBC6838E       c:\winnt\system32\winlogon.exe
    [OK] 13: FF33A8CC63D6972100A3A9890A99949E       c:\winnt\system32\ws2_32.dll
    [OK] 14: 35C6D61A36CE97E0D0987C03A9D3B6F3       c:\winnt\system32\wsock32.dll
    [OK] 15: CDA73F069C9976EBBA4438170A618F95       c:\winnt\system32\wininet.dll
    [OK] 16: D6057EA9FE91E3EEE34BC0BE05233AA7       c:\winnt\system32\user32.dll
    [OK] 17: 6D8383A453B632C84F5A96C33CD05F49       c:\winnt\system32\taskmgr.exe
    [OK] 18: 631EA48650396CBC09BDD6F66691EB36       c:\winnt\system32\ntdll.dll
    [OK] 19: F2042CF3A617CBD0BDB3D979B21DE1F3       c:\winnt\system32\shell32.dll
    [OK] 20: 6FBBC26665227040205A9A3CE963B3E9       c:\winnt\system32\services.exe
    [OK] 21: AB42DC2BFDB6D65EAC37B73985600FBE       c:\winnt\system32\sfc.exe
    
    Ici on voit très bien que chaque fichier controlé n'a pas était modifiés depuis la génération des hashs MD5.

  9. En pratique
  10. Maintenant voyons ce qui se passe si nous modifions un de ces fichiers.

    C:\rfic>cat c:\autoexec.bat
    w00w00
    
    C:\rfic>echo hello > c:\autoexec.bat
    
    C:\rfic>cat c:\autoexec.bat
    hello
    C:\rfic>rfic -c
    Loading Configuration File : rfic.conf
    Number of files : 21
    Loading Saved MD5 Hash File : rfic.save
    Number of MD5 sums : 21
    Global Checking for all MD5 sums...
    
    [OK] 1: 2E390CE00B23E46010E0222F894B39C6        rfic.exe
    [OK] 2: 59FAC85E6F2F141C6FD9AA45AD0F164B        rfic.conf
    [OK] 3: 06893FD06CA0C562358A9AA15FB27CED        c:\boot.ini
    
    [WARNING!] 4: c:\autoexec.bat
            Hour            Wed Sep 25 21:04:58 2002
            Saved MD5 Sum   0BCE2B10ACDC82EA62DF79ADEF06C14A
            New MD5 Sum     DE1EC876FBB738255AA58BDB775D93C2
    
    Restore the original file ? (Y/N)
    
    On voit ici que RFIC nous demande la confirmation pour restaurer le fichier qui à été modifié. Nous répondons 'Y'. Regardons ce qui se passe.
    Y
    Ok ! Now Restoring the original file with backup.
    The file " c:\autoexec.bat " has been restored !
    
    [OK] 5: 0BCE2B10ACDC82EA62DF79ADEF06C14A        c:\winnt\explorer.exe
    [OK] 6: C99ACFF4E913FA4CD477C5E62835511B        c:\winnt\regedit.exe
    [OK] 7: 22A1A95396D1F2C9EC3398137E3D1F62        c:\winnt\system32\kernel32.exe
    [OK] 8: 617A85D37CF03F2C763E1471C7DFF9F3        c:\winnt\system32\ntoskrnl.exe
    [OK] 9: BDDBDC7945E44AEB8E02AF76DE35F438        c:\winnt\system32\kernel32.dll
    [OK] 10: 58936E88429DF0BAFD99B992AB5CF114       c:\winnt\system32\netstat.exe
    [OK] 11: 55249AAFE90717B3D33AAD76797AC71E       c:\winnt\system32\cmd.exe
    [OK] 12: 67E37C434BD38688B779D74EFBC6838E       c:\winnt\system32\winlogon.exe
    [OK] 13: FF33A8CC63D6972100A3A9890A99949E       c:\winnt\system32\ws2_32.dll
    [OK] 14: 35C6D61A36CE97E0D0987C03A9D3B6F3       c:\winnt\system32\wsock32.dll
    [OK] 15: CDA73F069C9976EBBA4438170A618F95       c:\winnt\system32\wininet.dll
    [OK] 16: D6057EA9FE91E3EEE34BC0BE05233AA7       c:\winnt\system32\user32.dll
    [OK] 17: 6D8383A453B632C84F5A96C33CD05F49       c:\winnt\system32\taskmgr.exe
    [OK] 18: 631EA48650396CBC09BDD6F66691EB36       c:\winnt\system32\ntdll.dll
    [OK] 19: F2042CF3A617CBD0BDB3D979B21DE1F3       c:\winnt\system32\shell32.dll
    [OK] 20: 6FBBC26665227040205A9A3CE963B3E9       c:\winnt\system32\services.exe
    [OK] 21: AB42DC2BFDB6D65EAC37B73985600FBE       c:\winnt\system32\sfc.exe
    
    Le fichier à été restauré selon RFIC, mais vérifions quand même ceci par nous même.
    C:\rfic>cat c:\autoexec.bat
    w00w00
    
    On observe que le programme a fait correctement son travail de restauration.
    Je tiens à préciser que toutes ces procédures marchent sous Linux, il nous faut juste configurer rfic.conf en conséquence.

    Je pense avoir remplie le rôle de cette documentation, ainsi je vous laisse sur cette dernière phrase.


R-e-D - RedKod Team Founder - r-e-d@redkod.com