利用网页内嵌Frame来盗链和流量导入比较常见,也可以用于XSS攻击,如果中招的话,可以通过设置 X-Frame-Options到HTTP响应头来解决。解决方法只对支持X-Frame-Options的浏览器有效。
X-Frame-Options HTTP 响应头是用来给浏览器指示允许一个页面可否在 <frame>, <iframe> 或者 <object> 中展现的标记。网站可以使用此功能,来确保自己网站的内容没有被嵌到别人的网站中去,也从而避免了点击劫持 (clickjacking) 的攻击。
使用HTTP 响应头信息中的设置 X-Frame-Options属性
使用 X-Frame-Options的属性参数:
DENY:表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。
SAMEORIGIN:表示该页面可以在相同域名页面的 frame 中展示。
ALLOW-FROM:表示该页面可以在指定来源的 frame 中展示。
如果你自己不用frame也要防止别人用frame可以设置为DENY,如果你自己用frame但要防止别人用frame可以设置为SAMEORIGIN
Read more…
Nginx打开CHACHA20_POLY1305支持需要替换Nginx的OpenSSL库为BoringSSL或LibreSSL
具体实现替换方法请参考
Nginx替换OpenSSL为LibreSSL 请参考
https://www.lidaren.com/archives/1702
Nginx替换OpenSSL为BoringSSL 请参考
https://www.lidaren.com/archives/1705
修改nginx.conf让nginx支持CHACHA20加密算法即可
这里增加”EECDH+CHACHA20:EECDH+CHACHA20-draft:”
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
#BoringSSL 默认关闭SSLv3
ssl_protocols TLSv1 TLSv1.1TLSv1.2; |
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
#BoringSSL 默认关闭SSLv3
ssl_protocols TLSv1 TLSv1.1TLSv1.2;
Read more…
先科普
BoringSSL 是Google创建的 OpenSSL 分支,但使用BoringSSL的代码不能保证API或ABI的稳定性,所以谷歌会继续向 OpenSSL递交bug修正,继续资助Core Infrastructure Initiative和OpenBSD基金会。
谷歌使用了超过70个OpenSSL补丁,部分被接受合并到了OpenSSL主库,但大部分没有。随着Android、Chrome和其它项目开始需要这些补丁的子集,事情日益变得复杂,要保证所有补丁在不同代码库正常工作需要太多精力。所以他们决定创建OpenSSL分支。
简单总结一下BoringSSL的优缺点
优点:兼容OpenSSL,修正了许多OpenSSL的BUG,OpenSSL改不了的BUG也被BoringSSL改了。
缺点:BoringSSL只为TLS和HTTPS而生,部分OpenSSL开关默认是关闭的,其他用途的话还是建议OpenSSL。
Nginx替换OpenSSL为BoringSSL与替换为LibreSSL方法基本类似,手动编译会比较麻烦
编译之前需要进行代码的补丁修正,这里提供一个已经实现好的编译脚本供参考
github @ajhaydock
https://github.com/ajhaydock/BoringNginx
Read more…
先科普
LibreSSL是OpenSSL加密软件库的一个分支,为一个安全套接层(SSL)和传输层安全(TLS)协议的开源实现。在OpenSSL爆出心脏出血安全漏洞之后,一些OpenBSD开发者于2014年4月创立了LibreSSL,目标是重构OpenSSL的代码,以提供一个更安全的替代品。LibreSSL复刻自OpenSSL库的1.0.1g分支,它将遵循其他OpenBSD项目所使用的安全指导原则。
简单总结一下LibreSSL的优缺点
优点:兼容OpenSSL,代码简单,分支清晰,便于安装、使用和维护
缺点:不支持旧安全算法,部分加密算法效率不高。
安装编译环境
#安装编译环境
yum install -y gcc gcc-c++ pcre-devel openssl openssl-devel |
#安装编译环境
yum install -y gcc gcc-c++ pcre-devel openssl openssl-devel
创建工作目录,统一使用绝对路径
#创建工作目录,统一使用绝对路径
mkdir /work
cd /work |
#创建工作目录,统一使用绝对路径
mkdir /work
cd /work
Read more…
之前将Ubuntu服务器由LAMP切换到LEMP,由于Apache和Nginx的SSL证书的配置方式不同,https站点只能先暂停,今天更换了Comodo Positive SSL证书后https站点恢复继续访问。在此记录一下如何在Nginx环境下配置SSL证书。
1.到Comodo的管理后台下载Comodo Positive SSL证书。下载完成后解压的压缩包里包含以下几个证书文件
www_lidaren_com.crt
COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt
AddTrustExternalCARoot.crt |
www_lidaren_com.crt
COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt
AddTrustExternalCARoot.crt
2.使用CAT命令将这几个证书文件合并到一个文件,如果使用notepad的话需要注意按顺序添加。
cat ./www_lidaren_com.crt ./COMODORSADomainValidationSecureServerCA.crt ./COMODORSAAddTrustCA.crt ./AddTrustExternalCARoot.crt > www_lidaren_com_new.crt |
cat ./www_lidaren_com.crt ./COMODORSADomainValidationSecureServerCA.crt ./COMODORSAAddTrustCA.crt ./AddTrustExternalCARoot.crt > www_lidaren_com_new.crt
3.上传证书和之前创建CSR时生成的.key文件到服务器,这里我把证书放在这里
Read more…
最近服务器流量暴增,服务器的Apache进程出现进程不断增长而出现进程不能及时杀死释放内存的问题,由pre-fork模式更改为worker模式也不能起到明显效果。
最后只能将Wordpress博客整体由LAMP切换到LEMP环境,访问正常后,发现Nginx环境下的伪静态设置与Apache的.htaccess设置方式略有不同,在此记录一下。
Apache环境下使用.htaccess实现Wordpress的通用伪静态效果
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</ifmodule> |
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</ifmodule>
Read more…
Recent Comments