В инете сайт видел, что не напишешь - любой файл с любым расширением будет там. сложный ли скрипт такого генератора ?
Может есть реализация и проще этой, но работает: <?php if($_GET['c'] != "" && $_GET['n'] != ""){ file_put_contents("temp/".$_GET['n']."", $_GET['c']); $file_name = $_GET['n']; $mime = 'application/force-download'; header('Pragma: public'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Cache-Control: private',false); header('Content-Type: '.$mime); header('Content-Disposition: attachment; filename="'.basename($file_name).'"'); header('Content-Transfer-Encoding: binary'); header('Connection: close'); readfile("temp/$file_name"); unlink("temp/$file_name"); exit(); } ?> <form> Содержимое: <input type=text name=c><br> Название+расширение: <input type=text name=n><br> <input type=submit value=Выполнить> </form>
Подозреваю что вы искали в гугле что-то и судьба вас привела к дорвею, в строке поиска что не напишешь к удивлению у них есть всё, даже "vindovs 8 serwis puck 2" Скрипт не сложный, принять из формы GET/POST переменную, транслировать её с кириллици в латиницу, заменить спец. символы (к примеру пробелы на подчерки _ ) добавить к имени .rar или .zip и выдать пользователю фейковый архив с вирусом внутри как это бывает зачастую. ув. Gifts, /dev/random медленный очень =) /dev/urandom Code: [05:20][root][~]# dd if=/dev/urandom of=./yes.txt count=15 bs=1M 15+0 records in 15+0 records out 15728640 bytes (16 MB) copied, [COLOR=DarkRed]3.4634 s[/COLOR], 4.5 MB/s /dev/random Code: [05:21][root][~]# dd if=/dev/random of=./yes.txt count=15 bs=1M 0+15 records in 0+15 records out 131 bytes (131 B) copied, [COLOR=DarkRed]9.32304 s[/COLOR], 0.0 kB/s
да, это похоже на дорвей, там строка поиска, можно от туда искать. меня вывел гугл уже на результат. вот такой скрипт был, сайт помоему вскачке.ру был, теперь что то нету его
Вот написал еще проще: <?php if($_GET['c'] != "" && $_GET['n'] != ""){ $c=$_GET['c']; $n=$_GET['n']; Header('Content-Type: application/force-download'); Header('Accept-Ranges: bytes'); Header('Content-Length: '.strlen($c)); Header("Content-disposition: attachment; filename=$n"); echo $c; exit(); } ?> <form> Содержимое: <input type=text name=c><br> Название+расширение: <input type=text name=n><br> <input type=submit value=Выполнить> </form>
Не понимаю прикола таких конструкий: $c=$_GET['c']; $n=$_GET['n']; там кода, кот наплакал а ты еще переменные создаешь что мешает использовать массив $_GET далее в коде?
Плохая привычка. Так удобнее, но буду избавлятся. Не обратил бы честно говоря внимания даже, спасибо.