把管理员密码(加密后)直接写在 PHP 文件里,安全性有所提升吗?
既然把管理员的密码存在数据库里有遭遇爆库的危险,那我把管理员的密码加密后当作一个常量直接写在 PHP 文件里,安全性会得到提升吗?
不考虑旁注提权之后查看这个 PHP 文件,因为如果他/她能够查看 PHP 文件里的代码,那么他/她肯定也能看到 config.php 里保存的数据库密码。
2014-06-15 0:42 补充:
这里所说的防止被爆库是指降低被爆出管理员密码的概率,不考虑数据库中存在的其他密码(或者是这个站点不存在其他密码,只有管理员可以登录后台)
回复内容:
既然把管理员的密码存在数据库里有遭遇爆库的危险,那我把管理员的密码加密后当作一个常量直接写在 PHP 文件里,安全性会得到提升吗?
不考虑旁注提权之后查看这个 PHP 文件,因为如果他/她能够查看 PHP 文件里的代码,那么他/她肯定也能看到 config.php 里保存的数据库密码。
2014-06-15 0:42 补充:
这里所说的防止被爆库是指降低被爆出管理员密码的概率,不考虑数据库中存在的其他密码(或者是这个站点不存在其他密码,只有管理员可以登录后台)
管理员的密码存放在哪里都一样。
管理员密码即便被爆了出来也不一定能拿WebShell,看服务器安全方面做得如何。
PHP是可以访问数据库的,也可以对数据库执行一些操作,网站你不用数据库难道纯静态吗?开玩笑呢哈哈~ 只要爆了SQL、XSS等漏洞,那些黑客就有千百种奇淫技巧去想办法拿到WebShell,只要拿到WebShell了,你那密码放在那里都一样没有区别的。
提权的时候你后台的密码一般可以用来参考做弱口令~ 但是拿来做提权可能就说明了这个密码对题主来说通用性太强了。。。
网站的安全要做好,服务器的安全更要做好。
--------------------------------补充---------------------------------
没事给自己的代码做做代码审计,把服务器安全做好点。大部分能杜绝掉黑客的入侵,如果是放在虚拟主机上边的话。我只能说祝你好运,千百个网站放一块另一个被爆菊被提权跨到你哪儿也是无济于事~
看到你都要写死到文件了,不如来个障眼法,密码登录永远都是错误,只有特定的才能触发,比如get参数。
我觉得写在哪里都是一样的,因为现成密码都是按照一定算法加密的,即使得到了密码也不一定能还原出真实密码,如果算法强度够的话。所以说获得加密密码是没有什么意义的
所以说,安全不安全主要还不在密码这一块。抛开服务器配置问题和软件bug导致的漏洞,程序里的漏洞主要还是sql注入和xss。只要做好输入的过滤一般问题不大。
照楼主补充所说,密码强度足够的情况下是暴不出来的。
密码的保护和防止爆库完全是两个不同的问题,解决了一个并不能自动解决另外一个。
爆库的主要原因是SQL注入和XSS,并不是密码泄漏,只要你的PHP本身能访问数据库,而且程序中又有拼接SQL之类的漏洞,就算是密码没有泄漏一样会被爆。
以被脱裤为前提保护网站管理员密码?
保护入口、限制重试,还有防止不要被脱裤更加重要吧
其实我最近玩google authenticator 体验不错,稍作努力就可以搞定两步式动态密码验证,这里有网页版的实现:http://blog.tinisles.com/2011/10/google-authenticator-one-time-password-algorithm-in-javascript/
我会加密写在环境变量里边
暴力破解的去看下,放哪里都是一样的。
楼主说的加密应该是2中情况,1)加密成二进制无法反编译的,2)md5之类的加密
两种都是无法承受暴力破解的,加密成二进制反编译的,可以防止程序被盗,锁定,但是加密成md5的无防盗。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

숙련된 PHP 개발자라면 이미 그런 일을 해왔다는 느낌을 받을 것입니다. 귀하는 상당한 수의 애플리케이션을 개발하고, 수백만 줄의 코드를 디버깅하고, 여러 스크립트를 수정하여 작업을 수행했습니다.

이 튜토리얼은 PHP를 사용하여 XML 문서를 효율적으로 처리하는 방법을 보여줍니다. XML (Extensible Markup Language)은 인간의 가독성과 기계 구문 분석을 위해 설계된 다목적 텍스트 기반 마크 업 언어입니다. 일반적으로 데이터 저장 AN에 사용됩니다

JWT는 주로 신분증 인증 및 정보 교환을 위해 당사자간에 정보를 안전하게 전송하는 데 사용되는 JSON을 기반으로 한 개방형 표준입니다. 1. JWT는 헤더, 페이로드 및 서명의 세 부분으로 구성됩니다. 2. JWT의 작업 원칙에는 세 가지 단계가 포함됩니다. JWT 생성, JWT 확인 및 Parsing Payload. 3. PHP에서 인증에 JWT를 사용하면 JWT를 생성하고 확인할 수 있으며 사용자 역할 및 권한 정보가 고급 사용에 포함될 수 있습니다. 4. 일반적인 오류에는 서명 검증 실패, 토큰 만료 및 대형 페이로드가 포함됩니다. 디버깅 기술에는 디버깅 도구 및 로깅 사용이 포함됩니다. 5. 성능 최적화 및 모범 사례에는 적절한 시그니처 알고리즘 사용, 타당성 기간 설정 합리적,

문자열은 문자, 숫자 및 기호를 포함하여 일련의 문자입니다. 이 튜토리얼은 다른 방법을 사용하여 PHP의 주어진 문자열의 모음 수를 계산하는 방법을 배웁니다. 영어의 모음은 A, E, I, O, U이며 대문자 또는 소문자 일 수 있습니다. 모음이란 무엇입니까? 모음은 특정 발음을 나타내는 알파벳 문자입니다. 대문자와 소문자를 포함하여 영어에는 5 개의 모음이 있습니다. a, e, i, o, u 예 1 입력 : String = "Tutorialspoint" 출력 : 6 설명하다 문자열의 "Tutorialspoint"의 모음은 u, o, i, a, o, i입니다. 총 6 개의 위안이 있습니다

정적 바인딩 (정적 : :)는 PHP에서 늦은 정적 바인딩 (LSB)을 구현하여 클래스를 정의하는 대신 정적 컨텍스트에서 호출 클래스를 참조 할 수 있습니다. 1) 구문 분석 프로세스는 런타임에 수행됩니다. 2) 상속 관계에서 통화 클래스를 찾아보십시오. 3) 성능 오버 헤드를 가져올 수 있습니다.

PHP의 마법 방법은 무엇입니까? PHP의 마법 방법은 다음과 같습니다. 1. \ _ \ _ Construct, 객체를 초기화하는 데 사용됩니다. 2. \ _ \ _ 파괴, 자원을 정리하는 데 사용됩니다. 3. \ _ \ _ 호출, 존재하지 않는 메소드 호출을 처리하십시오. 4. \ _ \ _ get, 동적 속성 액세스를 구현하십시오. 5. \ _ \ _ Set, 동적 속성 설정을 구현하십시오. 이러한 방법은 특정 상황에서 자동으로 호출되어 코드 유연성과 효율성을 향상시킵니다.
