本文来自网易云社区 在安全领域向来是先知道如何攻,其次才是防.针对题主的问题,在介绍如何防范网站被黑客扫描撞库之前,先简单介绍一下什么是撞库. 撞库是黑客通过收集互联网已泄露的用户和密码信息,生成对于的字典表,尝试批量登录其他网站后,得到一系列可以登录的用户.因为很多用户在不同网站使用的账号密码大多是相同的,因此黑客可以通过获取用户在A网站的账户从而尝试登录B网站. 那么碰见撞库之后,我们如何防护呢?为此我们咨询了网易云易盾安全专家.根据他的描述:撞库一般有以下几种形式,每种形式有一些不同的处置…
感谢某电商平台安全工程师feiyu跟我一起讨论这个漏洞的修复.以往在安全测试的过程中后台经常存在验证码不失效果造成的撞库问题,甚至在一些银行或者电商的登录与查存页面同样存在这个问题,一旦造成撞库无论对用户账号的安全性还是网站的负载都是巨大的挑战.其实造成问题的原因并不复杂,主要是研发在开发过程中缺少对安全的认知,造成的疏忽. 今天心血来潮自己写了个验证码来模拟下出现的问题,首先我们从前端页面开始分析: <!DOCTYPE html> <html> <head> <…
很多软件组件,大家都能想到了,大家也能做出来,但是成熟稳定.可靠.易用.功能全面,可信任,可相信,可开源就不是很容易,需要树立良好的口碑才可以. 1:往往会有黑客,进行撞库挖掘漏洞,很多系统的账户有可能被猜测出密码来,会存在严重的安全问题. 2:全部加上图片验证码等,用户体验比较差,天天用的用户会很难受. 3:恶意刷屏.大数据查询有恶意查询时,服务器进入恶性循环,数据库压力会过大,为了防止进入恶性循环,能控制调用频率比较好. 4:对外,对内提供接口调用时,合作伙伴,内部接口调用频率过高时,服务器…
项目内容:基于DES算法加密的防撞库密码系统 小组名:zqhzkzkj 目标:1.对用户输入的8位字符进行DES加密,要求用户输入8位密钥 2.对于不同的网站,不同的用户名生成不同的密码 小组成员:周岐浩.钟轲.郑凯杰 实验内容: 为了防止一个用户在不同的网站使用同一个密码,而导致一个网站被破译所有网站都被破译,于是我们修改了我们的项目. 分为四大步: 一.给定64bit的明文M,通过一个固定初始置换IP得到M0 二.进行16轮相同迭代运算,这些运算被称为轮函数f 三.对比特串R16L16使用逆…
李姐姐之前跟我们分享了子域名枚举工具subDomainBrute<subDomainsBrute — 改进渗透测试时暴力枚举子域名的python脚本>,这回带给我们htpwdScan htpwdScan 是一个简单的HTTP暴力破解.撞库攻击脚本: 1. 支持批量校验并导入HTTP代理,低频撞库可以成功攻击大部分网站,绕过大部分防御策略和waf2. 支持直接导入互联网上泄露的社工库,发起撞库攻击3. 支持导入超大字典4. 其他细微功能:随机X-Forwarded-For.随机SessionID…
360网站卫士常用前端公共库CDN服务 360网站卫士常用前端公共库CDN服务…
最近有朋友说自己的网站平时并未作弊,文章也都是原创的,更新很稳定.可不知道为什么网站突然就被各大搜索引擎降权了,一直找不到原因.最后发现是网站被挂马了,导致网站被连累了.在此,借助马海祥博客的平台,给大家简单的介绍下js挂马的方法及如何防止网站被挂马. 一.常见JS挂马方法 现在最多见的JS挂马方法有两种,一种是直接将JavaScript脚本代码写在网页中,当访问者在浏览网页时,恶意的挂马脚本就会通过用户的浏览器悄悄地打开网马窗口,隐藏地运行. 这种方法使用的关键代码如下: window.ope…
脚本功能: 利用itertools生成密码字典(迭代器形式) 多线程并发从密码字典中取出密码进行验证 验证成功后把密码写入文件中保存 #!/usr/bin/env python # -*- coding: UTF-8 -*- # Author:Leslie-x import itertools as its import threading import rarfile import os words = '0123456789abcdefghijklmnopqrstuvwxyz' # 涉及到生…
其实日常生活中我们的用户名和密码就那么几个,所以这给撞库带来了可能,本文主要给出python脚本撞库的一点粗浅代码.这里只讨论技术本生,代码中某榴的地址也已经改掉,避免被管理员误解禁言等发生,谢谢大家理解. 代码如下: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47…
md5加密(或者说摘要算法)大家都很熟悉了 就不解释了 现在很多数据库设计都喜欢用单向加密的方式保存密码,验证时对提交的密码再次加密之后做密文对比 /// <summary> 使用MD5加密 /// </summary> /// <param name="input">加密字符串</param> /// <remarks>2015.08.26</remarks> public static Guid ToMD5(s…
ST官方网站改版后,基本上很难搜索到固件库的地址,找了半天才找到固件库的下载地址,通过此方法可以找到其他需要的资源,故记下来方便大家. 下载的网站地址为: Home>Tools and Software> Software> MCU Software> STM32 MCUs Software> STM32 Firmware 固件库连接:http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1743 下载其中的产…
转自:http://www.cnblogs.com/sickworm/p/4562081.html 最近在用ZXing这个开源库做二维码的扫描模块,开发过程的一些代码修改和裁剪的经验和大家分享一下. 建议: 如果需要集成到自己的app上,而不是做一个demo,不推荐用ZXing的Android外围开发模块,只用核心的core目录的代码就好了.android和android-core的代码设计的不好,扩展性太差了(我在后期开发新需求的时候改修改了很多CameraManager的逻辑).只使用cor…
一.什么是彩虹表? 彩虹表(Rainbow Tables)就是一个庞大的.针对各种可能的字母组合预先计算好的哈希值的集合,不一定是针对MD5算法的,各种算法的都有,有了它可以快速的破解各类密码.越是复杂的密码,需要的彩虹表就越大,现在主流的彩虹表都是100G以上. 二.上哪找彩虹表去? 现在有很多大牛已经把自己的彩虹表共享出来了,所以你可以去下载.还有一种方法就是自己通过工具生成. 不过自己生成有点不切合实际,生成小的彩虹表吧数据少,可以破解密码的位数少(复杂程度低),而且费时费力,4核4GB内…
最近在用ZXing这个开源库做二维码的扫描模块,开发过程的一些代码修改和裁剪的经验和大家分享一下. 建议: 如果需要集成到自己的app上,而不是做一个demo,不推荐用ZXing的Android外围开发模块,只用核心的core目录的代码就好了.android和android-core的代码设计的不好,扩展性太差了(我在后期开发新需求的时候改修改了很多CameraManager的逻辑).只使用core目录的集成方法很简单,参考: https://github.com/zxing/zxing/blo…
做个记录,使用Detector进行php网站webshell扫描 开源项目托管地址:https://github.com/emposha/PHP-Shell-Detector安装使用都很简单…
ST官方网站改版后,基本上很难搜索到固件库的地址,找了半天才找到固件库的下载地址,通过此方法可以找到其他需要的资源,故记下来方便大家. 下载的网站地址为: Home>Tools and Software> Software> MCU Software> STM32 MCUs Software> STM32 Firmware 固件库连接:http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1743 下载其中的产…
index.php页面<?php session_start(); if($_SESSION[temp]==""){ //判断$_SESSION[temp]==""的值是否为空,其中的temp为自定义的变量 if(($fp=fopen("counter.txt","r"))==false){ echo "打开文件失败!"; }else{ $counter=fgets($fp,); //读取文件中数据…
本文介绍Python3中String模块ascii_letters和digits方法,其中ascii_letters是生成所有字母,从a-z和A-Z,digits是生成所有数字0-9.string.punctuation是所有标点'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~' String模块中的常量: string.digits:数字0~9 string.ascii_letters:所有字母(大小写) string.lowercase:所有小写字母…
最近负责公司各产品线购买模块的开发,各项功能如期开发完成后测试那边反馈回来一个问题:IOS手机在点击支付宝购买后,跳转到支付宝网站时不输入支付密码,直接点返回,返回到我们自己的APP购买界面发现页面显示内容是第一次进入购买页面时候的设备信息,不能完整的还原新设备的购买界面,安卓手机不存在这个问题.经排查,原来是苹果手机的缓存策略导致,第一次点击购买的时候,参数已经注入到页面,post请求后正确跳转到第三方支付宝网站,不购买直接返回,由于苹果手机缓存了之前的购买页面,导致返回的时候不再发送post…
此文已由作者张佃鹏授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. clojure是一门动态类型的语言,在类型检查方面并没有c++/java这种静态类型语言好用,所以多个模块之间进行接口参数传递时,由于接口文档设计不严谨等原因,总会发生接口参数类型错误,参数个数不正确等问题,给代码调试带来很大的挑战,因此在clojure中,对接口参数的进行类型和范围的检查是非常必要的.为此,我们找到了clojure.spec这个库( https://clojure.github.io/c…
此文已由作者赵计刚授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1.guava cache 当下最常用最简单的本地缓存 线程安全的本地缓存 类似于ConcurrentHashMap(或者说成就是一个ConcurrentHashMap,只是在其上多添加了一些功能) 2.使用实例 具体在实际中使用的例子,去查看<第七章 企业项目开发--本地缓存guava cache>,下面只列出测试实例: import java.util.concurrent.ExecutionExc…
本文来自网易云社区 "Question"为网易云易盾的问答栏目,将会解答和呈现安全领域大家常见的问题和困惑.如果你有什么疑惑,也欢迎通过邮件(zhangyong02@corp.netease.com)提问. 近期很多人咨询盾盾关于Android安全的各类问题,在此整理了一篇问答合集,以飨读者. 一.什么是Android界面劫持 界面劫持是指在Android系统中,恶意软件通过监控目标软件的运行,当检测到当前运行界面为某个被监控应用的特定界面时(一般为登录或支付界面),弹出伪造的钓鱼页面…
转自:http://blog.csdn.net/nzfxx/article/details/51804193 大家好,我们现在来讲解关于加密方面的知识,说到加密我认为不得不提MD5,因为这是一种特殊的加密方式,它到底特殊在哪,现在我们就开始学习它 全称:message-digest algorithm 5 翻译过来就是:信息 摘要 算法 5 1.特点 1.长度固定: 不管多长的字符串,加密后长度都是一样长 作用:方便平时信息的统计和管理 2.易计算: 字符串和文件加密的过程是容易的. 作用: 开…
转自:http://blog.csdn.net/linlzk/article/details/45536065 最近发现群内大伙对用Hbuilder做的APP怎么做登录功能以及维护登录状态非常困惑,而我前一段时间正好稍微研究了一下,所以把我知道的告诉大家,节约大家查找资料的时间. 你是否真的需要登录功能? 把这个问题放在最前面并不是灌水,而是真的见过很多并不需要登录的APP去做了登录功能,或者是并不需要强制登录的APP把登录作为启动页. 用户对你的APP一无所知,你就要求对方注册并登录,除非AP…
登录 保存密码 安全 加密 最近发现群内大伙对用Hbuilder做的APP怎么做登录功能以及维护登录状态非常困惑,而我前一段时间正好稍微研究了一下,所以把我知道的告诉大家,节约大家查找资料的时间. 你是否真的需要登录功能? 把这个问题放在最前面并不是灌水,而是真的见过很多并不需要登录的APP去做了登录功能,或者是并不需要强制登录的APP把登录作为启动页. 用户对你的APP一无所知,你就要求对方注册并登录,除非APP本身已经很有名气或者是用户有强需求,否则正常人应该会直接把它删掉. 比较温和的方式…
导入hashlib模块import hashlibs='yulin123456's.encode()#把数字转换成bytes类型m=hashlib.md5(s.encode())print(m.hexdigest())#md5是不可逆的,就是没有办法解密的,网站MD5加密属于撞库,将常用的密码搜集存放在自己的数据库中def my_md5(s): news=str(s).encode() m=hashlib.md5(news) return m.hexdigest()s=my_md5(123456…
message-digest algorithm 5(信息-摘要算法),md5的长度,默认为128bit,也就是128个0和1的二进制串.但是,这样表达是很不友好的,所以将二进制转成了16进制,每4个bit表示一个16进制,所以128/4 = 32 换成16进制表示后,为32位了. 加密和摘要,是不一样的 加密后的消息是完整的:具有解密算法,得到原始数据: 摘要得到的消息是不完整的:通过摘要的数据,不能得到原始数据: 原始MD5存在的问题:撞库破解 这是概率极低的破解方法,原理就是: 1.建立一…
常用模块 1.os 2.sys 3.random 4.string 5.time 6.hashlib 一.os模块 os模块主要用来操作文件.目录,与操作系统无关.要使用os模块首先要导入OS模块,用命令import os 即可. 目录和文件操作 1.os.getcwd()--用来获取当前工作目录 3.os.chdir(),改变当前脚本工作目录,相当于shell下的CD print(os.getcwd())#取当前工作目录 *************os.chdir("E:\\besttest\…
在做webqq或者说app开发的时候,免不了会有接口是有权限的(如查询用户敏感信息等),这时接口安全设计思路就非常重要了. 简单一点,在APP中保存登录数据,每次调用接口时传输 程序员总能给自己找到偷懒的方法,有的程序为了省事,会在用户登录后,直接把用户名和密码保存在本地,然后每次调用后端接口时作为参数传递.真省事儿啊!可这种方法简单就像拿着一袋子钱在路上边走边喊“快来抢我呀!快来抢我呀!”,一个小小的嗅探器就能把用户的密码拿到手,如果用户习惯在所有地方用一个密码,那么你闯大祸了,黑客通过撞库的…
Rational AppScan 工作原理 Rational AppScan(简称 AppScan)其实是一个产品家族,包括众多的应用安全扫描产品,从开发阶段的源代码扫描的 AppScan source edition,到针对 Web 应用进行快速扫描的 AppScan standard edition,以及进行安全管理和汇总整合的 AppScan enterprise Edition 等.我们经常说的 AppScan 就是指的桌面版本的 AppScan,即 AppScan standard e…