小编Dee*_*lue的帖子

有人可以离线编辑javascript文件来运行恶意代码吗?

我担心与我的网站的javascript文件有关的事情,我不确定这是否可行.

当有人访问网站时,将下载Js文件,如果有人编辑了下载的js脚本并插入了他自己的代码,然后刷新了网站.在新刷新中,网站将读取已编辑的Js文件并运行恶意代码.恶意代码可能用于以正常方式在服务器上运行某些代码.

例:

用户只能在其页面中发布文章:

HTML

文章表单仅在用户页面中显示.

<?php
if( $user->id == $page->userID )
{
?>    
<form>
<h1>Add new article:</h1><br />
<textarea name="articleText" cols="65" rows="3"></textarea>
<input class="SubmitArticle" id="<?php echo $userPage->id; ?>" name="SubmitArticle" type="button" value="Submit article" />
</form>
<?php
}
?>
Run Code Online (Sandbox Code Playgroud)

使用Javascript

$(".SubmitArticle").click( function(e){
    var targetPage = $(this).attr('id');
    var thisForm = $(this).parent();
    var postData = thisForm.serialize() + "&targetPage=" + targetPage;

    $.post(document.location, postData, function(data) {
        $('#mainDiv').html(data);
    });
});
Run Code Online (Sandbox Code Playgroud)

PHP

if( isset($_POST["SubmitArticle"]) )
{
    $pageID = $_POST["targetPage"];
    $text = $_POST["articleText"];

    PublishArticle( $pageID , $text ); …
Run Code Online (Sandbox Code Playgroud)

html javascript php xss jquery

6
推荐指数
2
解决办法
2243
查看次数

使用具有相同域的多个smtp服务器?

我使用MailGun发送电子邮件和Zoho接收电子邮件,这很好.

但后来我想启用从Zoho发送能够回复收到的电子邮件,所以我和MailGun一起将Zoho spf和DKIM添加到域中,MailGun也完美地发送了来自两台服务器的电子邮件,这些邮件都是正确签名和发送的.

我的问题:这样做有什么缺点吗?例如域名被列入黑名单,还是被视为垃圾邮件?

我的第二个问题:为什么人们不这样做?我甚至可以添加第三个smtp服务器和单独的电子邮件任务:第一个服务器用于交易电子邮件,第二个服务器用于批量,第三个服务器用于接收.

email smtp spam mailgun server

5
推荐指数
1
解决办法
1304
查看次数

在php中获取url内容的安全性

我担心在PHP中从未知URL获取内容的安全性.

我们将基本上使用cURL从用户提供的URL获取html内容并查找Open Graph元标记,以将链接显示为内容卡.

因为网址是由用户提供的,所以我担心在此过程中可能会收到恶意代码.

我有另一个问题:curl_exec实际上是将完整文件下载到服务器吗?如果是,则使用curl时可能会下载病毒或恶意软件吗?

php security url curl fetch

3
推荐指数
1
解决办法
540
查看次数

HybridAuth意外的会话行为

我试图让HybridAuth忘记最后一次用户登录,但没有任何效果!! 然后我注意到使用HybridAuth时非常奇怪的会话行为:

1-即使使用session_destroy,也不会破坏HybridAuth会话:

session_start();
var_dump($_SESSION);  //Session Values before authentication

require_once("hybridauth/Hybrid/Auth.php");
$config = 'hybridauth/config.php'; 

$hybridauth = new Hybrid_Auth( $config );
$google = $hybridauth->authenticate( "Google" );

session_unset();
session_destroy();

var_dump($_SESSION);  //Session values after destroy
Run Code Online (Sandbox Code Playgroud)

输出:

Session Values before authentication!
array (size=2)
  'HA::CONFIG' => 
    array (size=3)
    < ----- content here ------>
  'HA::STORE' => 
    array (size=5)
    < ----- content here ------>

Session values after destroy
array (size=0)
    empty
Run Code Online (Sandbox Code Playgroud)

我甚至在初始化Hybrid_Auth类之前就获得了会话值.当我刷新页面时,虽然看起来在代码末尾清除了值,但仍会保留相同的值.

2-启动时清除会话时的无限重定向循环

session_start();
session_destroy();

require_once( "hybridauth/Hybrid/Auth.php" );
$config = 'hybridauth/config.php'; 

$hybridauth = new Hybrid_Auth( $config );
$google …
Run Code Online (Sandbox Code Playgroud)

php session oauth hybridauth

2
推荐指数
1
解决办法
772
查看次数

标签 统计

php ×3

curl ×1

email ×1

fetch ×1

html ×1

hybridauth ×1

javascript ×1

jquery ×1

mailgun ×1

oauth ×1

security ×1

server ×1

session ×1

smtp ×1

spam ×1

url ×1

xss ×1