Как отследить откуда запускали скрипт?

123 4
lutskboy
На сайте с 22.11.2013
Offline
173
#11
chaturanga #:

ключом может быть некий хеш, создаваемый скриптом, а-ля md5(pid) - алгоритм придумайте любой
его же и сверяйте в программе


каким скриптом. там код открытый. таким образом можно программу запустить и з 2.php просто добавив сверху етот алгоритм

WS
На сайте с 01.11.2008
Offline
136
#12

можно ещё вот так попробовать

1 - в с++ проге  определяете pid по getpid()

2 - в c++ проге запускаете системную команду

ps xao pid,ppid,pgid,sid,comm 

там будет весь список процессов, вместе с pid и parent pid

в полученном списке находите по pid программы parent pid (ppid), и если в списке есть pid, соответствующий  ppid, то смотрите, пхп или нет

C
На сайте с 22.08.2012
Offline
104
#13
lutskboy #:

каким скриптом. там код открытый. таким образом можно программу запустить и з 2.php просто добавив сверху етот алгоритм

если у вас подразумевается открытость алгоритма кодирования злоумышленнику, то никакой защиты от него вы не придумаете

lutskboy
На сайте с 22.11.2013
Offline
173
#14
Владимир #:

можно ещё вот так попробовать

1 - в с++ проге  определяете pid по getpid()

2 - в c++ проге запускаете системную команду

ps xao pid,ppid,pgid,sid,comm

там будет весь список процессов, вместе с pid и parent pid

в полученном списке находите по pid программы parent pid (ppid), и если в списке есть pid, соответствующий  ppid, то смотрите, пхп или нет

немного уточню. мне нужно запускать программу  именно с сайта  http://site.ru/script.php и файла  script.php . а не с консоли bash sh ...

 а разве я не могу зайти под именем php-fpm или cgi  или кто там его запускает и запустить от его имени? это уже не то что мне нужно

WS
На сайте с 01.11.2008
Offline
136
#15
lutskboy #:

немного уточню. мне нужно запускать программу  именно с сайта  http://site.ru/script.php и файла  script.php . 

 а разве я не могу зайти под именем php-fpm или cgi  или кто там его запускает и запустить от его имени? это уже не то что мне нужно

так вы должны сравнивать не с юзером, который запускает, а с командой из колонки comm, тогда всё ок будет
lutskboy
На сайте с 22.11.2013
Offline
173
#16
Владимир #:
так вы должны сравнивать не с юзером, который запускает, а с командой из колонки comm, тогда всё ок будет

запуская  script.php через веб с браузера нет нормального pid  как из консоли. 

php script.php

он всегда один и тот же .у меня  2405 . и не несет полезной для меня информации

fastuser    2405  0.0  1.8 693076 34100 ?        S    14:03   0:08 /opt/php74/bin/php-cgi php

и так если с консоли запуск. тут есть что то

root        9518  0.1  1.1 402816 21536 pts/0    S+   19:22   0:00 php /var/www/fastuser/data/www/сайт.vip/email.php 

WS
На сайте с 01.11.2008
Offline
136
#17
lutskboy #:

запуская  script.php через веб с браузера нет нормального pid  как из консоли. 

php script.php

он всегда один и тот же .у меня  2405 . и не несет полезной для меня информации

fastuser    2405  0.0  1.8 693076 34100 ?        S    14:03   0:08 /opt/php74/bin/php-cgi php

и так если с консоли запуск. тут есть что то

root        9518  0.1  1.1 402816 21536 pts/0    S+   19:22   0:00 php /var/www/fastuser/data/www/сайт.vip/email.php 

вы боитесь, что на виртуальном хостинге, кто-то запустит вашу с++ программу?

просто проверяйте юзера, из под которого она запускается, или там fastuser  один и тот же на весь хостинг для всех клиентов?

LEOnidUKG
На сайте с 25.11.2006
Offline
1726
#18
lutskboy :
как мне в myprogram определить что его запустил именно  script.php а не кто то другой.

Можно пример, кто этот другой и как он может запустить программу, о которой знает только script.php?

Может быть к проблеме подход не с той стороны. 

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
lutskboy
На сайте с 22.11.2013
Offline
173
#19
LEOnidUKG #:
Можно пример

script2.php 

<?php

exec('myprogram arg1 arg2');

LEOnidUKG
На сайте с 25.11.2006
Offline
1726
#20
lutskboy #:

script2.php 


Я перечитал топик... что-то тут у вас не вяжется.

Не понятна вся суть затеи. Ощущение, что проблема на ровном месте. У кого этот доступ к PHP, что он может так просто выполнять этот код.

123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий