三个素性检验
Python实现三个素性检验使用方法:直接运行,根据提示选择模式、输入检验的数n和循环次数k即可
代码import random
import time
def QuickPower(a,n,p):#快速幂算法
tmp = a
ret =1
while(n >0):
if(n&1):
ret = (ret * tmp) % p
tmp = (tmp * tmp) % p
n>>=1
return ret
def Jacobi(n,m):# calc Jacobi(n/m)
n = n%m
if n==0:
return 0
Jacobi2 =1
if not(n&1):#若有n为偶数,计算Jacobi2 = Jacobi(2/m)^(s)其中n = 2^s*t t为奇数
k = (-1)**(((m**2-1)//8)&1)
while not(n&1):
Ja ...
xss-labs靶场练习
xss-labs靶场练习Level 1
观察url的构造,这里是向服务器提交了个名为name的参数,值为text,并且值和值的长度都在页面有回显。
查看网页源码
name参数的值直接插入到了标签之中。那么这样看来这一关主要就是考察反射型XSS。
payload:name=<script>alert('xss')</script>
Level 2
从url地址来看,依然是get方式传递参数,所以猜测考察的还是反射型XSS。只不过这一关将参数名换成了keyword。
查看页面源码
这里有两个地方回显值的地方,利用第一关的payload试试
观察源码,第一处回显处的特殊字符被编码了,不能利用,第二处的回显处可以完整的回显值,可以利用这里构造payload,
这里需要构造闭合
"><script>alert('xss')</script>
Level 3url构造同上一关
页面源码和上一关的差不多,只是双引号变成单引号
尝试构造payload:
'><script ...
DC-7靶场练习
DC-7靶场练习环境kali:192.168.10.128
dc-7:192.168.10.196
信息收集靶机发现:
netdiscover -r 192.168.10.0/24
端口扫描
nmap -sS -sV -T4 -A -p- 192.168.10.196
发现靶机打开了22(ssh)和80(http)端口
打开web端http://192.168.10.196/
这个网站使用的CMS是Drupal8
第一反应就是使用searchsploit和MSF来寻找利用模块,但是尝试了好几个脚本和模块都没有拿到shell
翻译一下首页的内容,获取到一点点线索,并且得到线索在框外部
欢迎来到 DC-7
DC-7 引入了一些“新”概念,但我会让你弄清楚它们是什么。 :-)
虽然这个挑战并不是那么技术性的,但如果你需要诉诸蛮力或字典攻击,你可能不会成功。
您必须做的是“跳出”框框思考。
方法在“外”框。 :-)
回到网页发现Drupal是被DIY过的,重点看首页的footer部分,也就是网页的最下方的黑色区域,靶机的除了”Powered by Drupal”,还多了一个 ...
DC-6靶场练习
DC-6靶场练习环境kali:192.168.10.128
dc-6: 192.168.10.174
信息收集nmap 192.168.10.0/24
这里可以看到靶机已经开了22端口和80端口
再用下面命令查看是否还开着其他端口
打开web端,打开http://192.168.10.174/,发现网页会跳转到http://wordy/并且打不开
修改hosts文件,在文件里面添加
192.168.10.174 wordy
修改后保存,重新打开http://wordy/
打开成功
这是个WordPress的站点,WordPress 5.1.1
目录扫描dirb http://wordy/
找到了后台登录的目录
http://wordy/wp-admin/
爆破后台账号密码通过wpscan爆破后台用户名
wpscan --url http://wordy/ -e u
admin mark graham sarah jens
将其保存在user.txt中
有密码,还需要密码
作者为了降低难度,在vulhub给出了提示:dc-6的字典是可以被筛检的,可以大 ...
DC-4靶场练习
DC-4靶场练习环境kali:192.168.10.128
dc-4:192.168.10.191(未知)
信息收集先探测主机,发现靶机dc-4
nmap 192.168.10.0/24
靶机IP为192.168.10.191,开放了22和80端口
经过dc-2的教训,查看作者是否还隐藏了其他端口
nmap -A -p 1-65535 192.168.10.191
就两个开放的端口
打开web端,只有一个简单的登录界面
根据Admin Information Systems Login提示,这里是让我们用admin登录
弱口令爆破Username:admin,Password:随便填,点击Submit,用burpsuite抓包进行密码爆破
密码字典我随便用一个,经过一段时间,密码爆破出来了
密码为happy
尝试登录:
登录成功
命令执行登录成功后,点击Command ,发现这里是执行命令的页面
用burpsuite进行抓包重放
可以发现这里的命令,空格用+号代替了
尝试更改使用其他命令,看看这里能否执行:
这里我把命令改为了id
可以看到命令执行了
...
DC-2靶场练习
DC-2靶场练习练习环境kali:192.168.10.128
靶机dc-2:192.168.10.184(假装不知道)
练习开始先用nmap找一下靶机的IP和端口:
nmap 192.168.10.0/24
扫出靶机,IP:192.168.10.184
这里只发现开了个80端口,很可疑,有猫腻,换条命令试试:
nmap -A -p 1-65535 192.168.10.184
果然有猫腻:隐藏了ssh服务的7744端口
先去web端看看:http://192.168.10.184
它会自动跳转到dc-2,似乎被重定向了
修改一下hosts文件就行了
vim /etc/hosts
加上192.168.10.184 dc-2 保存即可
重新打开web端,成功打开网站
并发现flag
打开flag,得到:
这里似乎在暗示我用cewl这个工具
cewl是一个ruby应用,爬行指定url的指定深度。也可以跟一个外部链接,结果会返回一个单词列表,这个列表可以扔到John the ripper工具里进行密码破解。cewl还有一个相关的命令行工具应用FAB,它使用相同的元数据提取 ...
DC-1靶场练习
DC-1靶场练习练习环境kali:192.168.10.128
靶机:未知
两个虚拟机都使用桥接(为了方便)
信息收集先用kali扫描域内存活的主机
nmap 192.168.10.0/24
扫描到靶机,获得以下信息:
靶机IP:192.168.10.100
开放端口: 22(ssh),80(http),111(rpcbind)
先从80端口入手,浏览器打开
http://192.168.10.100
使用Wappalyzer查看信息
可以看到这个网站的cms是Drupal 7
然后就出于本能的去搜索一下这个版本的CMS的漏洞
经过一番查找,得到该漏洞的交互式命令执行python3脚本:
import requests
import re
from sys import argv
domain = argv[1]
def exploit(command):
HOST=domain
get_params = {'q':'user/password', 'name[#post_render][]& ...
ssti学习
ssti学习环境搭建我这里用了vulhub+docker-compose搭建的环境
下载好docker、docker-compose和vulhub后,找到ssti对应文件夹,打开终端
docker-compose build
docker-compose up -d
然后用浏览器访问本机的8000端口
漏洞检验页面啥也没有,只能去看看源码了
从源码得知,参数是name,用get方法传入参数
假设没看源码,需要给参数传入一些东西来检验它存不存在ssti
为了方便,这里用burpsuite抓包
传入的是
?name={{7*7}}
页面返回49,说明这里存在ssti漏洞,而且还是jinja2的
漏洞利用套路基本思路就是利用 python 中的魔术方法找到自己要用的函数
dict: 保存类实例或对象实例的属性变量键值对字典
class: 返回调用的参数类型
mro: 返回一个包含对象所继承的基类元组,方法在解析时按照元组的顺序解析
bases: 返回类型列表
subclasses: 返回object的子类
init: 类的初始 ...
joomla 反序列化漏洞(CVE-2015-8562)
joomla 反序列化漏洞(CVE-2015-8562)1.简介本漏洞根源是PHP5.6.13前的版本在读取存储好的session时,如果反序列化出错则会跳过当前一段数据而去反序列化下一段数据。而Joomla将session存储在Mysql数据库中,编码是utf8,当我们插入4字节的utf8数据时则会导致截断。截断后的数据在反序列化时就会失败,最后触发反序列化漏洞。
2.影响版本
Joomla 1.5.x, 2.x, and 3.x before 3.4.6
PHP 5.6 < 5.6.13, PHP 5.5 < 5.5.29 and PHP 5.4 < 5.4.45
3.复现过程这里使用vulhub搭建环境
环境启动后访问http://your-ip:8080/,按照指示安装即可
连接数据库:
安装完成后,访问主页,抓个包
先把UA头和Cookie删除,构造数据包,让服务器返回Cookie
发起请求:
GET / HTTP/1.1
Host: ip:8080
Accept: text/html,application/xhtml+xml,applicat ...
网络渗透实验四
网络渗透实验四 :CTF实践实验目的:通过对目标靶机的渗透过程,了解CTF竞赛模式,理解CTF涵盖的知识范围,如MISC、PPC、WEB等,通过实践,加强团队协作能力,掌握初步CTF实战能力及信息收集能力。熟悉网络扫描、探测HTTP web服务、目录枚举、提权、图像信息提取、密码破解等相关工具的使用。
系统环境:Kali Linux 2、WebDeveloper靶机来源:https://www.vulnhub.com/
实验步骤和内容:目的:获取靶机Web Developer 文件/root/flag.txt中flag。
基本思路:本网段IP地址存活扫描(netdiscover);网络扫描(Nmap);浏览HTTP 服务;网站目录枚举(Dirb);发现数据包文件 “cap”;分析 “cap” 文件,找到网站管理后台账号密码;插件利用(有漏洞);利用漏洞获得服务器账号密码;SSH 远程登录服务器;tcpdump另类应用。
实施细节:首先用Nmap发现靶机:
发现靶机开了80端口和22端口
用浏览器打开http://192/168/118.135
用whatweb ...