Le 30 novembre, le laboratoire de recherche OpenAI a lancé le chatbot ChatGPT, devenu un « poulet chaud populaire » dans le domaine de l'intelligence artificielle.
Les personnes possédant un compte lui posent toutes sortes de questions folles, les personnes sans compte demandent un guide d'enregistrement de compte, et même Elon Musk a publiquement commenté sur Twitter que c'était "effrayant et bon". Au 5 décembre, heure locale, ChatGPT comptait plus d'un million d'utilisateurs.
Pour les praticiens de la sécurité des réseaux, que peut faire ChatGPT ? Il s'agit peut-être d'audit de code, de détection de vulnérabilités, d'écriture de logiciels ou d'inversion de shellcode.
Selon OpenAI, ChatGPT est alimenté par le modèle de la série GPT-3.5 et est formé à l'aide de données de texte et de code du supercalculateur Azure AI.
GPT signifie Generative PreTraining. Il s'agit d'un modèle de traitement du langage naturel (NPL) pour la génération de texte utilisateur développé par OpenAI, une société de recherche et développement en intelligence artificielle. La version publique actuelle de GPT est GPT-3, publiée en mai 2020. GPT-3.5 est une version affinée de GPT-3. OpenAI n'a pas encore officiellement annoncé de mise à jour.
Selon les informations publiques de GPT-3, il s'agissait du plus grand réseau de neurones à l'époque, avec un modèle d'apprentissage profond en langage naturel de 175 milliards de paramètres.
Bien que ChatGPT semble tout savoir, de l'astronomie à la géographie, à part répondre aux questions et rédiger intelligemment des articles, il semble peu utile aux praticiens de la sécurité des réseaux ?
En fait, le but de ChatGPT ne se limite pas aux questions et réponses. Il peut répondre à n'importe quel texte, qu'il s'agisse d'un texte de langue ou d'un texte codé. De nombreux professionnels de la sécurité des réseaux ont commencé à essayer de développer diverses utilisations de ChatGPT. Voici les utilisations découvertes par les professionnels de la cybersécurité :
ChatGPT peut non seulement trouver les erreurs dans le code, mais aussi les corriger et vous expliquer la méthode de réparation dans des phrases simples en anglais.
ChatGPT peut déterminer si un morceau de code contient des vulnérabilités de sécurité, et il expliquera les raisons de cette détermination dans un langage simple. Certains utilisateurs ont souligné qu'OpenAI peut détecter les vulnérabilités XSS dans des échantillons de code, et peut-être que l'IA peut être formée pour aller plus loin et lui demander de fournir un PoC de la vulnérabilité.
Le chercheur Jonas Degrave a montré comment transformer ChatGPT en un terminal Linux à part entière et interagir avec la « machine virtuelle » via le navigateur. En fait, le terminal n'exécute pas une véritable machine virtuelle Linux et la réponse aux entrées en ligne de commande est entièrement basée sur les conversations avec l'IA.
ChatGPT devient un terminal Linux
Dans le test, le chercheur a fourni le texte suivant à ChatGPT, demandant de parcourir les dimensions, et le retour de ChatGPT était "Le portail a été ouvert avec succès".
Traverser les dimensions avec ChatGPT
Semblable au déploiement d'un terminal Linux virtuel ci-dessus, l'utilisation de ChatGPT pour générer des analyses de namp ne nécessite pas l'exécution de la véritable application nmap.
Le chercheur a demandé à ChatGPT de "créer un programme PHP pour analyser les ports ouverts sur l'hôte" et a obtenu les résultats suivants.
Benjamin J Radford, passionné d'apprentissage automatique et professeur adjoint à l'UNCC, a demandé à ChatGPT "d'écrire le code du jeu Tactics dans un fichier, d'utiliser gcc pour compiler le fichier, puis de l'exécuter. ChatGPT implémente cette fonctionnalité".
Code PHP ChatGPT écrit selon les besoins
ChatGPT est capable de décoder les chaînes base64 et les hachages MD5 de chaînes inversées (connues), ce qui est particulièrement utile pour des ingénieurs inverseurs et des analystes de logiciels malveillants examinant des échantillons obscurcis, dupliqués, codés ou minimisés.
Le chercheur a également utilisé ChatGPT pour décoder le code shell codé en ascii généré aléatoirement. En conséquence, ChatGPT a non seulement expliqué la fonction, mais l'a également réécrit en langage C.
Bien sûr, ChatGPT a des limites évidentes, et ses développeurs ont parlé de certains problèmes actuels avec l'IA, comme le corpus d'apprentissage à partir de 2021, et il ne peut pas répondre à ce qui se passera en 2022 et au-delà. En même temps, son utilisation nécessite une connexion Internet. Si Internet n'est pas connecté, le contenu de la réponse provient du modèle formé hors ligne. Par exemple, ChatGPT ne peut pas répondre à la météo du jour lorsqu'il n'est pas connecté à Internet.
Les chercheurs ont noté que ChatGPT donne parfois des réponses qui semblent raisonnables mais qui sont incorrectes. ChatGPT ne répond pas non plus aux changements de formulation dans le texte saisi. Lorsqu'il est impossible de répondre à une question, ChatGPT peut répondre à la question en modifiant légèrement la façon dont elle est posée.
Ce modèle a aussi parfois des réponses trop verbeuses, utilisant certaines phrases de manière répétée ou prévisible. OpenAI affirme que cela peut être le résultat d'un biais dans les données de formation, car les formateurs préfèrent des réponses riches et complètes.
Parfois, les modèles devinent l'intention de l'utilisateur lorsqu'ils répondent à des questions ambiguës.
Le plus gros problème avec ChatGPT est que même si OpenAI a entraîné le modèle à rejeter les instructions ou les questions inappropriées, il peut toujours répondre à des instructions nuisibles ou afficher un comportement biaisé.
Pour remédier à ces limitations, OpenAI a annoncé son intention de mettre à jour régulièrement le modèle tout en collectant les commentaires des utilisateurs sur les résultats problématiques du modèle. OpenAI est particulièrement préoccupé par « les résultats potentiellement nuisibles, les nouveaux risques et les atténuations possibles », et la société a également annoncé qu'elle organiserait un concours de commentaires ChatGPT avec un prix de 500 $ en points API.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!