
da horsie
16.11.2016
04:36:29
потом смотрю что там, и, если все ок, копирую куда надо
да хер с ним, добавил флаш

D'
16.11.2016
04:37:09
а файл большой?

da horsie
16.11.2016
04:37:27
хороший вопрос

Google

da horsie
16.11.2016
04:37:30
в теории большой
так что я не хочу его в память грузить
public function upload(Request $request)
{
$tmp_file = tmpfile();
stream_copy_to_stream($request->getContent(true), $tmp_file);
fflush($tmp_file);
$tmp_file_name = stream_get_meta_data($tmp_file)['uri'];
$tmp_file_type = mime_content_type($tmp_file_name);
if (!in_array($tmp_file_name, $this->allowed_types)) {
throw new ApiException("Invalid mime type: $tmp_file_type", ApiException::VALIDATION);
}
$hash = sha1_file($tmp_file_name);
$path = $this->getPath($hash);
rename($tmp_file_name, "{$this->upload_dir}/{$path}/$hash");
return [
'url' => "{$this->hostname}/{$path}/{$hash}",
];
}

D'
16.11.2016
04:39:16
норм так
"{$this->upload_dir}/{$path}/$hash"
забыл {}

da horsie
16.11.2016
04:40:08
о
instant code review
спасибо

D'
16.11.2016
04:40:53
выше тоже
throw new ApiException("Invalid mime type: $tmp_file_type", ApiException::VALIDATION);

da horsie
16.11.2016
04:41:18
ну там вроде и так норм
читабельно

Google

da horsie
16.11.2016
04:42:11
private function getPath(string $hash): string
{
$depth = 2;
$length = 2;
$path = [];
for ($i = 0; $i < $depth * $length; $i += $length) {
$path[] = substr($hash, $i, $length);
}
return implode('/', $path);
}
вот еще на ревью раз так)

D'
16.11.2016
04:42:44
а чего depth/length не в параметрах?

da horsie
16.11.2016
04:43:07
не успел
да и вряд ли они поменяются
у меня и так premature optimizations везде

Aleksandr
16.11.2016
04:45:16
А не знаете, как узнать на каком языке написан сайт?
Его серверная часть?

da horsie
16.11.2016
04:45:38
посмотреть заголовки?
натравить на него nmap?

D'
16.11.2016
04:46:03
в общем случае - никак

da horsie
16.11.2016
04:46:05
спросить у владельца?
погуглить?

D'
16.11.2016
04:46:12
в каком-то конкретном - можно подумать

f4rt~
16.11.2016
04:46:53
смотреть по ключам cms
типо index.php?do=register = DLE
и тд

Dmitriy
16.11.2016
04:47:11

da horsie
16.11.2016
04:47:14
какой сайт-то?

Google

f4rt~
16.11.2016
04:47:20

Aleksandr
16.11.2016
04:47:20
Ну я конкретно в сдучае Wordpess знаю
Вписываешь /wp-admin

D'
16.11.2016
04:47:43
причем тут WP и язык сайта?

Aleksandr
16.11.2016
04:47:53
Я узнаю что он на php

f4rt~
16.11.2016
04:47:53
соре

Aleksandr
16.11.2016
04:48:08
Ага

D'
16.11.2016
04:48:08
ну я тебе сказал - в общем случае никак не узнать

Dmitriy
16.11.2016
04:48:15

f4rt~
16.11.2016
04:48:25
соре

Aleksandr
16.11.2016
04:48:34
https://builtwith.com
Вот сервис нашёл какой-то

Dmitriy
16.11.2016
04:48:37

f4rt~
16.11.2016
04:48:40
разве что попробовать екшепшн вызвать

Aleksandr
16.11.2016
04:48:50

D'
16.11.2016
04:49:11
Я щас на Go забабахаю сайт, и в meta пропишу generator=wordpress
этот сайт выдаст wp

Aleksandr
16.11.2016
04:49:20
Вот на этом сервисе написано, что он на ruby on rails

Dmitriy
16.11.2016
04:49:31

Aleksandr
16.11.2016
04:49:47

Google

Dmitriy
16.11.2016
04:50:03

f4rt~
16.11.2016
04:50:14
работает правда только для популярных cms и все
я всегда по robots.txt ориентируюсь с чем имею дело, плюс тулзами нахожу путь к админке, обычно все написано
плюс вот есть чот типо такого https://2ip.ru/cms/

Dmitriy
16.11.2016
04:52:22

f4rt~
16.11.2016
04:52:32
так а смысл поставленой задачи, что может быть много вариантов? стоит поковырять сразу же ясно

Dmitriy
16.11.2016
04:53:16
Ну тут было ясно даже по домену =) . я даже сайт не открывал

f4rt~
16.11.2016
04:54:00

Admin
ERROR: S client not available

Dmitriy
16.11.2016
04:54:29
это они настраивать не умеют.

f4rt~
16.11.2016
04:55:08

Dmitriy
16.11.2016
04:55:51
все не настроишь)
ну переключтать в debug=false должны научиться. что бы трасс не показывать

Habetdin
16.11.2016
04:56:02

f4rt~
16.11.2016
04:56:13

da horsie
16.11.2016
04:56:20
хехе

Dmitriy
16.11.2016
04:56:37

f4rt~
16.11.2016
04:57:09
я тебе быстро покажу как мин 5 уязвимостей по оваспу

da horsie
16.11.2016
04:57:12

Dmitriy
16.11.2016
04:57:27

Google

f4rt~
16.11.2016
04:57:31
стоит только бурп сюит включить и все
я и path traversal ему покажу и все все все

Dmitriy
16.11.2016
04:58:18
так где сайт ? ей

Aleksandr
16.11.2016
04:58:20
Как ты сюда перешёл?

f4rt~
16.11.2016
04:59:21
офк
как иначе

Aleksandr
16.11.2016
04:59:38
А как?
Я вбил урл рандомный после /

Habetdin
16.11.2016
05:00:08

Aleksandr
16.11.2016
05:00:11
Но это не то

Dmitriy
16.11.2016
05:00:22

Habetdin
16.11.2016
05:00:37

Dmitriy
16.11.2016
05:00:52

Aleksandr
16.11.2016
05:02:19
Ну блин

Habetdin
16.11.2016
05:02:20

Aleksandr
16.11.2016
05:02:46
Я думал он про этот http://elda-theme.myshopify.com/

f4rt~
16.11.2016
05:02:57

Dmitriy
16.11.2016
05:03:08