2010-07-28 4 views
1

웹 브라우저만으로 HTML 파일이나 javascript와 같은 PHP 소스 파일을 얻을 수있는 방법이 있습니까? 그렇다면 어떻게? 이유가 없다면?PHP가 PHP 파일을 가져 오는 중

+0

왜 내가 투표해야합니까? – denniss

+1

이것이 폐쇄 된 이유를 모릅니다. 어쨌든,'AddHandler application/x-httpd-php-source .phps'에 대해서는 google을 사용하고 PHP 스크립트의 출력 대신 PHP 소스를 반환하도록 Apache를 설정하는 방법에 대한 기사를 찾을 수 있습니다. –

+1

동일한 질문입니다. http://stackoverflow.com/questions/498521/php-security-retrieving-php-file-from-server-un-processed –

답변

2

아니요, 불가능합니다. 서버 측 언어는 으로 해석되고 출력이 브라우저로 전송되기 전에 해석되어야합니다.

+0

쉽지는 않을 수도 있습니다. – rook

+0

맞아 ... 서버가 실패하면 전체 텍스트가 웹 브라우저에 올바르게 인쇄됩니까? PHP 스크립트는 어떻게 해석됩니까? – denniss

+0

그래,하지만 이것은 클라이언트의 동작이 아닌 잘못된 서버 측 코드에 따라 달라집니다. 요구에 따라 서버 측 코드를 검색하는 것은 불가능합니다. –

0

웹 서버가 실패 할 경우에만. 그렇지 않으면 아니오, 모든 코드가 서버에서 실행되고 그 결과 만 브라우저에 전송되기 때문입니다.

2

물론. 그러나 웹 서버가 파일을 반환하고 먼저 해석하지 않도록 구성된 경우에만 해당합니다. PHP 파일을 호스팅하는 대부분의 웹 서버는이 방식으로 구성되지 않습니다.

3

원격 서버에서 PHP 소스 코드를 읽으려면 사용자가 리모컨을 찾고 악용해야합니다. file disclosure vulnerability. 응용 프로그램에서 자주 발생하며 w3af과 같은 웹 응용 프로그램 취약점 스캐너를 사용하여 감지 할 수 있습니다.

기능을 사용하여 파일을 읽는 데 MySQL 기반의 SQL 주입을 사용할 수 있습니다. described here.

httpd가 소스 코드 노출 공격 (예 : IIS)에 취약 할 수 있습니다.

0

아니요, 아니요, MySQL 암호 및 기타 중요한 데이터로 인해 막대한 보안 위험이 발생할 수 있습니다.

+0

음 ... 그게 내가 걱정하는 이유입니다. – denniss

+0

암호 *를 코드에 넣으시겠습니까? 그 자체가 엄청난 보안 위험입니다. 그것들을 설정 파일에 넣고 웹 공간 외부에 파일을 두어 서버가 보낼 수있는 방법이 없도록하십시오. 매우 제한적인 권한으로 파일을 잠급니다. 파일을 버전 제어로 확인하지 마십시오. –

1

이렇게 할 수있는 방법이 있습니다. 웹 서버의 코드 예제를 보여주기 위해 ".phps"를 text/plain으로 제공하도록 웹 서버를 설정해야합니다. PHP를 실행하는 웹 사이트에서 코드를 푸시하려고한다면 실제로 불가능합니다. 웹 브라우저가 아닙니다.

0
<?printf($f='<?printf($f=%c%s%c,39,$f,39);?>',39,$f,39);?> 

그렇습니다.

+0

??? 도대체'$ f'가 무엇이고,이 스크립트가 성취해야 할 것이 무엇이고, 당신의 서버가 아닌 서버에서 어떻게 실행해야합니까? – mpen

+0

Mark,이 코드는 자체적으로 인쇄합니다. – iandisme

관련 문제