Stap 3: Tekst coderen
de teksten in de code te houden zoals het is, maakt het eenvoudig voor omgekeerde ingenieurs om te achterhalen waar te beginnen. en ze kunnen gemakkelijk deze tekst gemakkelijk te manipuleren of te reverse-engineeren de code in de buurt van deze tekenreeksen
de eerste foto is de hexadecimale weergave voor deze code
#include
int main()
{
printf ("Hello, world\n");
}
kwaadwillende gebruiker en graven in uw uitvoerbaar met behulp van een hex-editor en wijzigen de tekst hello world in iets anders
dus we moeten om te coderen de tekst met behulp van enkele basisfuncties
Ik schreef dat eenvoudige code om te proberen te verbergen van de hello world
#include
#define dec(x) x + 5
int main()
{printf("%c%c%c%c%c%c%c%c%c%c%c%c",dec(99),dec(96),dec(103),dec(103),dec(106),dec(27),dec(114),dec(106),dec(109),dec(103),dec(95),dec(5));
}
Deze code lijkt smerig maar het helpt veel alles wat het doet is neemt elk nummer en 5 toe te voegen aan het dan uitprinten als karakter.
het maakt de tekenreeks diep verborgen in het binaire bestand en dat is het doel is bereikt
alle snaren zijn ten minste verborgen in de hexadecimale weergave :D
u kunt elk programma controleren door uw zelf door:
1 - zet elke code in het bestand met de naam hello1.c en hello2.c
2-van uw type termianal:
hello1 maken
hello2 maken
3 - om uit te voeren deze codes (de functionaliteit) chequesoort ". / hello1 'toen'. / hello2"
4-laatste stap is om te bekijken de hex dump van deze uitvoerbare bestanden door "xxd hello1" en "xxd hello2"