Le principe du cryptage et du décryptage ASP est de remplacer le caractère de saut de ligne/retour chariot par le mot « lin ». Quant à la saisie d'un nombre entre -95~+95, il s'agit de trouver un nombre aléatoire manuel, qui peut également être utilisé. dans le processus de décryptage.
J'ai d'abord essayé :
J'ai créé un QQ.htm en C : le contenu à l'intérieur est l'URL de mon site Web
code de programme
Utilisez 44 comme nombre aléatoire pour chiffrer et obtenir le chiffrement.asp
Code programme<%
hu=林DDDZ4<86;4Z05林
exécuter (UnEncode (hu))
fonction UnEncode(temp)
mais=44
pour i = 1 à len(temp)
si mid(temp,i,1)<> Lin alors
Si Asc(Mid(temp, i, 1)) < 32 ou Asc(Mid(temp, i, 1)) > 126 Alors
une = une & Chr(Asc(Mid(temp, i, 1)))
autre
pk=asc(mid(temp,i,1))-mais
si pk>126 alors
pk=pk-95
sinon si pk <32 alors
pk=pk+95
finir si
a=a&chr(pk)
finir si
autre
a=a&vbcrlf
finir si
suivant
UnEncode=a
fonction de fin
%>
En fait, si vous remplacez Linquan par mon nom de famille Dan, il aura la même fonction :)
Le code du programme code but=44 à l'intérieur est le 44 saisi précédemment.
En y regardant de plus près, il s'est avéré que la théorie que je voulais clôturer avait été publiée dans "Hacker X" dès 2004.
Si le site Web ne peut pas être ouvert, j'en extrairai le contenu dans ce blog ~
Maintenant, vous le savez, le Script Encoder de Microsoft n'est pas sûr, nous devons donc écrire nous-mêmes un programme pour le compresser.
La fonction d'exécution d'asp est utilisée pour exécuter des chaînes, c'est-à-dire que vous pouvez écrire des instructions asp sous forme de chaînes, puis utiliser exécuter pour les exécuter. Par exemple, cette ligne de code :
exécuter(response.write(hackerXfiles)), l'effet après l'exécution est équivalent à l'exécution de réponse.write(hackerXfiles). par la présente
Étant donné que le contenu de la fonction d'exécution est une chaîne, vous devez l'écrire deux fois lorsque vous rencontrez des guillemets. Haha, puisqu'il y a une chaîne en cours d'exécution, nous pouvons mettre les choses à l'intérieur
Venons-en au cryptage.
Comment le chiffrer ? Haha, utilisez simplement la méthode de changement de vitesse la plus simple. Veuillez consulter le code :
[/color] Code du programme mais=1
cc=remplacer(nr,vbcrlf,Hu)
pour i= 1 à len(cc)
si mid(cc,i,1)<>Hu alors
pk=asc(mid(cc,i,1))+mais
si pk>126 alors
pk=pk-95
sinon si pk <32 alors
pk=pk+95
finir si
temp=temp&chr(pk)
autre
temp=temp&Hu
finir si
suivant
temp=remplacer(temp,,)
réponse.write(temp)
Ce code est la méthode de décalage circulaire sous asp. La variable mais est le nombre de bits à décaler et peut être modifiée. Haha, comment appelle-t-on un cycle ? Parce que le programme comparera les caractères
Le code ASCII sera traité lorsqu'il est supérieur à 126 ou inférieur à 32, de sorte que la plage soit comprise entre 32 et 126. Parce que cela peut éviter les caractères que Windows ne peut pas afficher. ce
C'est également la raison pour laquelle les caractères de retour chariot et de saut de ligne sont remplacés dès le début. Ici, j'ai écrit un programme asp de chiffrement par décalage xor.asp et je l'ai joint, j'espère qu'il vous sera utile.
Jetons ensuite un œil au résultat du cryptage de réponse.write(hackerXfiles) en utilisant le code ci-dessus : sftqpotf/xsjuf)
#ibdlfsYgjmft#*, héhé, même les dieux ne peuvent pas comprendre cette fois^_^
Puisqu'il est crypté, il doit bien sûr être déchiffré. Voir le code de décryptage :
Fonction de code de programme UnEncode(temp)
but=1 'C'est le nombre de bits décalés par la méthode shift ! Notez que la modification ici est cohérente avec celle utilisée lors du chiffrement
pour i = 1 à len (temp)
si mid(temp,i,1)<>Hu alors
pk=asc(mid(temp,i,1))-mais
si pk>126 alors
pk=pk-95
sinon si pk <32 alors
pk=pk+95
finir si
a=a&chr(pk)
autre
a=a&vbcrlf
finir si
suivant
UnEncode=a
fonction de fin
Haha, maintenant vous savez comment l'exécuter, appelez simplement cette fonction de décryptage : execute(UnEncode(sftqpotf/xsjuf)#ibdlfsYgjmft#*))