草庐IT

SECURITY

全部标签

php - 使用 AMFPHP 框架在 ActionScript 3 中通过 PHP 安全连接 MySQL

我的Flash影片想与MySQL服务器通信以在MySQL和SWF之间获取和保存数据。我知道AMFPHP可以帮助通信,但是有没有一种安全的方法来加密双方之间发送的文本(除了MD5中的散列密码)?据我所知,默认情况下,AMFPHP以纯文本形式发送数据。另外,听说Flash在网络请求时CPU占用率很高。有什么轻量级框架建议吗? 最佳答案 我实际上对AMFPHP知之甚少,但通常您不应该直接从客户端发送SQL查询。无论您的加密有多好,有人都可以破解它,然后他们可以对您的服务器为所欲为。您应该在PHP中创建一个API,客户端可以使用该API在数

php - 保护 PHP Web 服务/相关连接数据的最佳方式?

所以我目前正在构建一个使用PHP作为Web服务的应用程序,该应用程序随后与我存储数据的数据库进行对话。我选择了这条路线,因为我将有一个前端应用程序,它将与数据库对话并将被分发,我不想在其中包含任何敏感的连接数据。截至目前,我的应用程序是这样工作的:1)客户端应用程序将数据打包为JSON,并通过AJAX将其发送到外部PHP网络服务。2)PHP网络服务接收请求并验证它。此验证是通过检查是否通过查询字符串提供了正确的参数,传递的JSON字符串是有效的JSON,json_decodedJSON对象中的属性与我期望的JSON对象具有相同的名称来完成的,并且每个属性的值类型都是我期望的JSON对象

mysql - 为什么旧的mysql密码函数被认为是不安全的

我知道旧的mysql密码函数(pre-4.1)被认为是不安全的,但我不确定为什么。它被认为不安全的具体原因是什么? 最佳答案 根据MySQLdocsonpasswordhashing:ThepasswordhashingmechanismwasupdatedinMySQL4.1toprovidebettersecurityandtoreducetheriskofpasswordsbeingintercepted.我不确定这是否意味着“降低密码被拦截的风险”还有什么意义,或者它是否只是意味着它们更难破解,但主要区别在于生成的哈希值的大

php - 是否有必要取消设置 php 密码变量?

是否有必要为我的MySQL数据库取消设置我的密码变量。目前,我的“dbpwd.php”代码是这样的:#databasesetup$dbserver="localhost";$db_usrname="blah";$db_pwd="blahblahblah";$dbname="blah";但我在想......这是一个安全问题......因为任何人都可以这样做:这难道不会让他们完全访问我的东西吗...那么在您的php代码末尾取消设置敏感变量是一种好习惯吗?还是我遗漏了什么?编辑以澄清...在上面列出的这种情况下...他们将使用他们自己的php服务器(不是我的),并使用php文件中的inclu

php - 我应该在所有输出上使用 htmlentities() 吗? (防止XSS攻击)

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:WhatarethebestpracticesforavoidingxssattacksinaPHPsiteWhatarethecommondefensesagainstXSS?我正在尝试使我编写的PHP应用程序安全,但对转义输出有疑问。一旦我了解到这样做可以防止SQL注入(inject),我就转而使用带有PDO的准备好的语句,而且似乎另一种主要的攻击类型是XSS。我像这样为我的页面构建输出(假设变量中包含来自数据库的数据):$output='';$output.='Name:'.$name.'Address

php - 清理公众意见的最佳方式是什么?

所以我有一个表单可以接受来自用户的一些输入,这些输入稍后可能会显示在页面上。从安全的角度来看,我考虑的做法是获取输入,将mysql_real_escape_string()函数应用于所有输入,然后使用准备好的语句插入。检索数据时,我会在将其显示在屏幕上之前对其执行htmlspecialchars()。这样可以吗?我是否忽略了一些重要的事情? 最佳答案 两件事:在将所有输入发送到数据库之前,您必须对所有输入进行转义;为了那个原因:mysql_real_escape_string是正确的工具,如果您不使用准备好的语句如果你使用的是准备好

mysql - Fail2Ban - 登录到 mysql

我们有几台带有SSH公共(public)(使用sFTP)的服务器。显然,攻击太多了。我们希望将禁止的日志放入MySQLDB中以进行统计等。有没有人试过这个?谢谢 最佳答案 Fail2SQL-AnSQLloggerforFail2BanFail2SQL由Fail2Ban调用并将信息记录到MySQL数据库,包括地理位置和总禁令数。然后,此信息可用于报告、图表或由第三方程序使用以采取进一步行动,例如永久阻止、向ISP报告等。 关于mysql-Fail2Ban-登录到mysql,我们在Stack

php - 这些安全功能是否足够?

我正在努力保护我的网站,这样我就不会受到sql注入(inject)或xss的攻击。这是我的代码://here'stheform(abbreviated)FirstName:"/>//submitbuttonetcif(isset($_POST['submit'])){//getsridofextrawhitesapceandescapes$first_name=mysqli_real_escape_string($dbc,trim($_POST['first_name']));//checkif$first_nameisastringif(!is_string($first_name)

mysql - Zend - 插入/更新时我需要使用 quote() 吗?

我正在开发一个允许用户在mySQL中输入VARCHAR(255)字段的应用程序,因此安全性是一个主要问题。我无法理解quote()。如果我使用quote('test'),数据在SELECT上返回为'\'test\'',这是不希望的。如何取消引用此数据?如果我绕过quote(),我可以查看phpmyadmin并查看“测试”,因此Zend似乎不会自动为我转义引号...我的代码看起来像这样:publicfunctiongetDbTable(){if(null===$this->_dbTable){$this->setDbTable(newZend_Db_Table($this->_table

mysql - 限制在特定表中使用 Select * in MySQL

我有一个包含一些敏感数据的表,我想在已经采取的措施之外进一步保护这些数据。如果发生入侵导致攻击者获取我们的PHP源代码,我想进一步保护数据库中的一些数据。数据已经在数据库中加密,加密key安全地存储在源代码之外,但不幸的是,这些只是延迟,希望能让我们有时间发现入侵并关闭系统。但是,代码的逆向工程在技术上是可行的。作为故障保险,我想限制针对特定表的选择语句。我们的代码永远不需要一次从表中检索多个记录。有没有一种方法可以限制从MySQL的管理端从表返回的行数,以便像SELECT*FROMsecure_data_table;这样的查询?不可能吗? 最佳答案