P inurl write php uid

P inurl write php uid

У меня есть отображение страницы из базы данных. С этим у меня есть функция отображения. У меня все работает правильно, но я хочу изменить переменную, которая видна в конце URL, теперь она из столбца «id» в моей базе данных, и я бы хотел, чтобы она была из столбца «name».

Это моя функция отображения (включена в другой файл)

И Get PHP в заголовке страницы отображения выглядит следующим образом:

Решение

Так что я пропустил это большое время в первый раз. Мои извенения. Вот что я нашел, чтобы работать для части запроса. И должен помочь с SQL-инъекциями.

posix_setuid — Устанавливает UID текущего процесса

Описание

Устанавливает фактический идентификатор пользователя текущего процесса. Это привилегированный процесс и требует соответствующих прав (обычно прав суперпользователя root) в системе для возможности выполнить эту функцию.

Список параметров

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Пример использования posix_setuid()

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

Смотрите также

  • posix_setgid() — Устанавливает идентификатор группы для текущего процесса GID
  • posix_seteuid() — Устанавливает эффективный идентификатор пользователя для текущего процесса EUID
  • posix_getuid() — Возвращает фактический идентификатор пользователя текущего процесса UID
  • posix_geteuid() — Возвращает эффективный идентификатор пользователя текущего процесса EUID

User Contributed Notes 7 notes

Note that on unix, if your target user does not have a valid shell, some php functions (eg: tempnam) will not work correctly:

$ grep www-data /etc/passwd
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin

$ cat test.php
#!/usr/bin/php -q
= posix_getpwnam ( "www-data" );
$id = $info [ "uid" ];

$file = tempnam ( "/tmp" , "something" );
print "PRE SetUID: $file
" ;

$SETUID = posix_setuid ( $id );

Читайте также:  Startcn что это за программа

$file = tempnam ( "/tmp" , "something" );
print "POST SetUID: $file
" ;
?>

$ sudo ./test.php
PRE SetUID: /tmp/somethingrsb1qZ
POST SetUID:

In response to a note above that advocated the user of system() in a setuid program written in C, this is generally a bad idea for security.

You should use the standard library calls like execl() instead because system() can be manipulated to execute the wrong thing using the SHELL, IFS and possibly other variables.

When you do a posix_setuid from root to some other users you will not have access to files owned by root according to their permissions. For instance if you change owner of the process and still need to open a file for read or write with 600 permission owned by root you will receive a permission denied.
There are some ways to do this (i.e. a unix socket or tcp daemon etc), but probably the most easiest way is:

Open the file before changing ownership of process, save the file pointer in a global variable and use it after changing ownership.

For example assume /root/test_file is a file owned by root:root and have a permission of 600 and you are running this script under root. This code will not work:

// Change ownership of process to nobody
posix_setgid ( 99 );
posix_setuid ( 99 );

$fd = fopen ( ‘/root/test_file’ , ‘a’ );
fwrite ( $fd , "some test strings" );
fclose ();

?>

But this one will work:

= fopen ( ‘/root/test_file’ , ‘a’ );

// Change ownership of process to nobody
posix_setgid ( 99 );
posix_setuid ( 99 );

fwrite ( $fd , "some test strings" );
fclose ();

Читайте также:  Процессор с каким техпроцессом потребляет меньше энергии

?>

Hope this helps some one.

[Tested on CentOS 5 — Linux 2.6.x — PHP 5.2.x]

У меня есть страница отображения страниц из базы данных. При этом у меня есть функция отображения. У меня все работает правильно, но я хочу изменить переменную, которая видна в конце URL-адреса, теперь это из столбца "id" в моей базе данных, и я хотел бы, чтобы это было из столбца "name".

Это моя функция отображения (входит в другой файл)

И Get PHP в заголовке страницы отображения выглядит следующим образом:

Поэтому я пропустил это большое время в первый раз. Мои извинения. Вот что я нашел для работы с частью запроса. И должен помочь с SQL-инъекциями.

Ссылка на основную публикацию
Adblock detector