此次比赛偏中等难度,高级中学十三年团队共解出6题,不过还是乱杀

排名第二,还是很开心的
团队名称:高级中学十三年
解题人:xinyi,糖糖,太阳能
Web
1. ezbyp@ss
打开容器以后看到a和b是进行md5碰撞
还要使得a≠b构造a和b a=QNKCDZO&b=240610708
if (isset($_POST['password'])){
if ((($_POST['password'])>9999999)&&((strlen($_POST['password']))<8))
{
$status2=true;
看到这里发现password即要大于99999999内容长度又要小于8
构造出password是password=1e7%00*-*
最终payload是a=QNKCDZO&b=240610708&password=1e7%00*-*
使用post请求得到一串base64加密的

使用base64解码即可得到flag

Flag: flag{31ad7be2-3b18-414f-be8e-6dea3f8c664b}
2.Ezupload
根据题目给的hint3 .htaccess解析绕过
所以先将.htaccess写出来

先将.htaccess上传
上传成功后我们打开F12

可以看到上传的路径
接下来上传.htaccess写的shell1.jpg

上传成功
现在使用蚁剑连接

连接后在html目录下看到flag.php文件打开就得到flag
Flag: flag{upl0ad_in_my_ctf_challenge}
PWN
使用checksec查看发现没有PIE保护

使用ida进行分析

看到第12行get函数存在栈溢出前面输入到but中然后put出来

发现还有一个后门函数
构造出exp

运行后输入cat /flag
即可得到flag
Flag:flag{canary-protect-JKjnkBJHm-jBJBIUbjib}
Reverse
下载附件打开

随便输入以后出现这个点确定以后发现输出了
将那串md5解(4efe4660597da0c41aac0a9870202f19)’
解密后得到Ture

使用die打开然后查找字符串

找到有一串md5加密后的解密发现是True
(f827cf462f62848df37c5e1e94a4da74)
将True输入进附件给的软件里面

发现输出了一个Your Win!!

在刚刚查找字符串是看到这个就打开C盘发现生成了
data_flowers.txt
打开发现文本框的东西这个文件里面也有

打开发现这个字符串包裹上提交
Flag:flag{BBA1JHB58DG}
Misc部分
混乱的base

根据提示发现是爆破base64大小写,脚本如下
import base64
text = 'ZMXHZ3TCDXI1DF9ZMF9LEN0='
def all_possible(text):
res=[""]
for i in text:
if not i.isalpha():
for j in range(len(res)):
res[j] += i
else:
for k in range(len(res)):
tmp = res[k]
res[k] += i.lower()
res.append(tmp + i.upper())
return res
def baopo():
k = all_possible(text)
res = []
for i in k:
try:
f = base64.b64decode(i + '').decode("utf-8")
if(f.isprintable()):
res.append(f)
except:
pass
for i in res:
print(i)
print("[*]一共解出{0}个".format(len(res)))
baopo()

运行结果如下
flag{\ur5t_s0_ez}
flGg{\ur5t_s0_ez}
flag{Bur5t_s0_ez}
flGg{Bur5t_s0_ez}
flag{\ur5t_Y0_ez}
flGg{\ur5t_Y0_ez}
flag{Bur5t_Y0_ez}
flGg{Bur5t_Y0_ez}
flag{\ur5t_s0_Kz}
flGg{\ur5t_s0_Kz}
flag{Bur5t_s0_Kz}
flGg{Bur5t_s0_Kz}
flag{\ur5t_Y0_Kz}
flGg{\ur5t_Y0_Kz}
flag{Bur5t_Y0_Kz}
flGg{Bur5t_Y0_Kz}
一共解出16个,发现flag{Bur5t_Y0_ez}符合flag的标准,上交,显示正确
我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A
在Ruby中是否有Gem或安全删除文件的方法?我想避免系统上可能不存在的外部程序。“安全删除”指的是覆盖文件内容。 最佳答案 如果您使用的是*nix,一个很好的方法是使用exec/open3/open4调用shred:`shred-fxuz#{filename}`http://www.gnu.org/s/coreutils/manual/html_node/shred-invocation.html检查这个类似的帖子:Writingafileshredderinpythonorruby?
我正在使用ruby2.1.0我有一个json文件。例如:test.json{"item":[{"apple":1},{"banana":2}]}用YAML.load加载这个文件安全吗?YAML.load(File.read('test.json'))我正在尝试加载一个json或yaml格式的文件。 最佳答案 YAML可以加载JSONYAML.load('{"something":"test","other":4}')=>{"something"=>"test","other"=>4}JSON将无法加载YAML。JSON.load("
默认情况下:回形针gem将所有附件存储在公共(public)目录中。出于安全原因,我不想将附件存储在公共(public)目录中,所以我将它们保存在应用程序根目录的uploads目录中:classPost我没有指定url选项,因为我不希望每个图像附件都有一个url。如果指定了url:那么拥有该url的任何人都可以访问该图像。这是不安全的。在user#show页面中:我想实际显示图像。如果我使用所有回形针默认设置,那么我可以这样做,因为图像将在公共(public)目录中并且图像将具有一个url:Someimage:看来,如果我将图像附件保存在公共(public)目录之外并且不指定url(同
我在一个ruby文件中有一个函数可以像这样写入一个文件File.open("myfile",'a'){|f|f.puts("#{sometext}")}这个函数在不同的线程中被调用,使得像上面这样的文件写入不是线程安全的。有谁知道如何以最简单的方式使这个文件写入线程安全?更多信息:如果重要的话,我正在使用rspec框架。 最佳答案 您可以通过File#flock给锁File.open("myfile",'a'){|f|f.flock(File::LOCK_EX)f.puts("#{sometext}")}
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我需要实现具有各种灵活需求的密码安全。这些要求基本上取自Sanspasswordpolicy:Strongpasswordshavethefollowingcharacteristics:Containatleastthreeofthe
安全产品安全网关类防火墙Firewall防火墙防火墙主要用于边界安全防护的权限控制和安全域的划分。防火墙•信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。防火墙是一个由软件和硬件设备组合而成,在内外网之间、专网与公网之间的界面上构成的保护屏障。下一代防火墙•下一代防火墙,NextGenerationFirewall,简称NGFirewall,是一款可以全面应对应用层威胁的高性能防火墙,提供网络层应用层一体化安全防护。生产厂家•联想网御、CheckPoint、深信服、网康、天融信、华为、H3C等防火墙部署部署于内、外网编辑额,用于权限访问控制和安全域划分。UTM统一威胁管理(Un
我尝试使用Net::HTTP向Twitter发送GET请求(出于隐私原因替换了用户ID):url=URI.parse("http://api.twitter.com/1/friends/ids.json?user_id=12345")resp=Net::HTTP.get_response(url)这会在Net::HTTP中引发异常:NoMethodError:undefinedmethodempty?'for#from/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:1
运行bundle安装时,我收到以下消息:Rubygems2.0.14isnotthreadsafe,soyourgemswillbeinstalledoneatatime.UpgradetoRubygems2.1.0orhighertoenableparallelgeminstallation.这很奇怪,因为在我的RubyGems环境中它说我的RubyGems版本是:2.4.5.1(见下文)~/w/Rafftopia❯❯❯gemenvRubyGemsEnvironment:-RUBYGEMSVERSION:2.4.5.1-RUBYVERSION:2.2.5(2016-04-26patc
我一直在使用zeroMQ,我希望能够通过Internet安全连接。我在ruby中,可以使用SSL和/或某种shh连接,但找不到有关如何执行此操作的任何示例。我找到了这个旧的stackoverflow链接,HowdoeszeromqworktogetherwithSSL?说他们正在研究某种安全性,但那是一年前的事了,我找不到任何新的引用资料。即使这不是内置在zeroMQ中,我也假设会有一些方法可以使用OpenSSL或类似的东西来设置它。注意:如果您想要安全传输,zeroMQ网站提到使用VPN或其他东西。我不想使用VPN。一定有更好的方法。 最佳答案