本文由红日安全成员: Once 编写,如有不当,还望斧正。 大家好,我们是红日安全-Web安全攻防小组。 此项目是关于Web安全的系列文章分享,还包含一个HTB靶场供大家练习,我们给这个项目起了一个名字叫 Web安全实战 ,希望对想要学习Web安全的朋友们有所帮助。 1.1 任意文件读取下载漏洞简介 一些网站由于业务需求,可能提供文件查看或下载功能。如果对用户查看或下载的文件不做限制,则恶意用户能够查看或下载任意文件,可以是源代码文件、敏感文件等。 1.3 任意文件读取下载漏洞利用条件 存在读文件的函数 读取文件的路径用户可控且未校验或校验不严 输出了文件内容 任意文件读取下载漏洞测试 ## 2.1测试思路 寻找读取或下载文件的功能点,跳跃目录获取敏感文件 /etc/my.cnf /etc/httpd/conf/httpd.conf /root/.bash_history /root/.mysql_history /proc/self/fd/fd[0-9]
directory="logs"prefix="localhost_access_log" suffix=".txt"pattern="%h %l %u %t "%r" %s %b" /> 9. showreport="false" showserverinfo="false"/> web.xml 修改DefaultServlet 配置 showServerInfo 属性为false 或者,创建文件 catalina/util/ServerInfo.properties 如上会从catalina.jar解压org/apache/catalina/util/ServerIn fo.properties文件 ,文件内容如下:[root@VM_1_5_centos lib]# cat org/apache/catalina/util/ServerInfo.properties |grep -v '#'server.info catalina.jar jar uf catalina.jar org/apache/catalina/util/ServerInfo.properties 10.禁用http方法 编辑web.xml 文件中配置
Arm在今年3月份推出了ARmv9.Arm 期望Armv9架构将是未来3000亿颗基于Arm架构芯片的技术先驱,而Armv9架构中,ARM 提供了机密计算Arm Confidential ComputeArchitecture (Arm CCA)的安全新架构。 机密计算通过在硬件支持的安全环境中执行计算来显着降低与处理数据相关的风险,该环境保护代码和数据免受特权软件和硬件代理的观察或修改。 Arm CCA 提供额外的安全架构,即使在使用中也能保护数据和代码,并能够更好地控制谁可以访问数据和算法。 § 非常适合保护在公共云环境和主机操作系统的安全性和完整性难以审核或保证的任何平台中运行的工作负载。
4 APP反向编译工具 APP反向编译工具是APP安全领域很重要的工具,本节介绍Dex2jar、和jd-gui。秀一节介绍apktool。 lDex2jar:是把.apk文件反向转换为.jar文件。 lProguard:是AndroidSDK自带的jar文件混淆器软件。 ljd-gui:是一个基于JAVA GUI界面的转换jar文件成JAVA源代码的工具。 lapktool:是一款集成了android apk编译、转换签名文件、smali文件编辑等功能于一体的软件。 4.1Dex2jar、Proguard和jd-gui 1. apk文件反编译 首先进入dex2jar目录,把apk文件从手机中取下来(demo4.apk为反编译的apk文件)。 46 选择混淆的jar文件和混淆完毕的jar文件 接下来在“Library jars,wars,ears .....”区域内点击【Add…】按键,添加所有混淆的jar文件所需要辅助的jar文件包,如果用
打开和关闭文件 你必须先用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写. open 函数 你必须先用Python内置的open()函数打开一个文件 下面是不同模式打开文件的完全列表: ? ? file对象的属性 一个文件被打开后,你有一个file对象,你可以得到有关该文件的各种信息。 以下是和file对象相关的所有属性的列表: ? 当一个文件对象的引用被重新指定给另一个文件时,Python 会关闭之前的文件。用 close()方法关闭文件是一个很好的习惯。 # 打开一个文件 fo = open("foo.txt", "w") print( "文件名: ", fo.name) # 关闭打开的文件 fo.close() file对象提供了一系列方法,能让我们的文件访问更轻松 该方法从文件的开头开始读入,如果没有传入count,它会尝试尽可能多地读取更多的内容,很可能是直到文件的末尾。
JDK 9 jmods 目录中有97个jmod文件,这些文件都是干嘛的呢?我们在写代码的时候,都应该怎么用呢? /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/jmods$ tree . . ├── java.activation.jmod ├─
模块其实是对你包含所定义函数的文件,可以进行引入 OS模块 什么是OS模块,OS模块就是operating system的缩写,意思是操作系统。 那么我们创建一个文件夹,怎么做 mkdir(path) ? 当然要是重复了,会抛出异常 ? 会受到,鄙夷的。 这种原因,拒绝访问,肯定是权限没到位,那么右击文件属性,把所有的用户权限开到完全控制 但是很快我就反应过来,他妈的 remove是删除文件的,不是删除文件夹 ? rename重命名文件或文件夹 ? 看着两个文件,现在重命名 ? 方法;rename(‘以前文件名’,‘改后文件名’) 调用工具,system() ? 【包含文件】) ?
,不过这些方法有所局限,而变量文件可以动态地创建任意类型的变量 *** Variables *** 变量文件一般由 Python 模块实现,语法完全是Python 在变量文件中,有两种方法来创建变量 直接创建变量 , 则最先导入的生效 通过变量表格 和命令行方式设置的变量会覆盖变量文件中的同名变量【变量文件的变量优先级低】 *** Variables *** 声明变量文件时,路径搜索规则 首先,变量文件声明的时候 需求 在 test 目录下的 robot 文件中导入 var 目录下的变量文件 测试代码 ? 运行命令 进入 robot 文件所在目录,cmd robot 9_使用变量文件.robot 通过命令行(了解即可) 也是上面的跨目录栗子,执行以下命令即可 robot --variablefile . /var/9_var.py 9_使用变量文件.robot
微软于北京时间2016年9月13日发布了14个新的安全公告,其中7个为严重等级,7个为重要等级。 我们推荐您安装所有更新,对于暂时只采用部分更新的用户,我们推荐您首先部署等级为“严重”的安全公告。安全公告每月更新一次,旨在解决严重的漏洞问题。 ---- 2016年9月新的安全漏洞 以下是所有安全公告的内容,供您参考。 如果用户打开经特殊设计的 Microsoft Office 文件,那么这些漏洞中最严重的漏洞可能允许远程执行代码。成功利用这些漏洞的攻击者可以在当前用户的上下文中运行任意代码。 ,请以网站上的安全公告内容为准。
数据量过大一个Excel文件太大的一个主要原因是数据量过大。当你在Excel中处理大量数据时,文件大小会相应增加。这可能会导致文件变得笨重,加载和保存时间变长。2. 复杂的公式与计算如果你在Excel文件中使用了复杂的公式和计算,这也会导致文件变得庞大。每次更新或重新计算公式时,Excel都必须检查并执行相应的计算,这会增加文件的大小。3. 内嵌对象在Excel文件中插入内嵌对象,例如Word文档、PDF文件等,也会增加文件的大小。这些对象需要额外的存储空间来保存相关数据,并且在文件打开时需要加载。5. 未压缩的图像和媒体插入未经压缩的图像和媒体文件,如高分辨率图片、音频和视频文件,会显著增加Excel文件的大小。这些文件通常具有较大的文件大小,因此插入多个或较大的图像和媒体文件会导致文件变得庞大。 历史记录和修订Excel文件中的历史记录和修订也会占用存储空间,并导致文件变得庞大。当你对文件进行频繁的更改、保存和修订时,这些历史记录会积累并增加文件的大小。9.
文件上传本身不是漏洞,但如果文件上传功能的限制出现纰漏,允许了不合法且影响网站安全的文件的上传 可以将不合法且影响网站安全稳定性的文件等内容上传的均为“文件上传漏洞” 黑方将文件上传后可通过手段执行以及上传的脚本文件 9 if( ! $uploaded_ext = substr( $uploaded_name, strrpos( $uploaded_name, '.' ) + 1); 9 imagecreatefrompng( $uploaded_tmp ); 33 imagepng( $img, $temp_file, 9) 而在安全领域下有一个名词:绕过(过狗) 通过Burp代理进行访问后拦击数据包并修改后释放上传 ?
Class 文件是一组以8个字节为基础额二级制流 各数据项目严格按照顺序紧凑的排列在Class文件中,中间没有任何分隔符 Class文件的伪结构只包含两种数据类型: 无符号数,以u1、u2、u4、u8 个字节的无符号数,用来描述数字,索引引用,数量值或者按照UTF-8编码构成字符串值 表,由多个无符号数或者其他表作为数据项构成的复合数据类型,以_info结尾,用于描述具有层次关系的复合结构数据 整个Class文件本质上就是一张表 methods_count attributes_count u2 1 attributeds attributed_info attributes_count 1. magic(魔法数) 用于确认这个文件是否为一个能被虚拟机接受的 Class文件。 SourceFile属性结构 sourcefile_index:指向常量池中CONSTANT_Utf8_info,其值为源码文件的文件名 8.6 ConstantValue属性 通知JVM自动为静态变量赋值
[+] VMware vCenter 7.0.2.00100 unauth Arbitrary File Read + SSRF + Reflected XSS https://github.com/l0ggg/VMware_vCenter
启用OSPF TTL 安全检查 为了抵御TTL攻击,OSPF TTL 安全检查机制应运而生。启用此功能后,OSPF将仅接受TTL为255的数据包,拒绝任何TTL小于配置阈值的数据包。 步骤: 启用OSPF TTL 安全检查 首先,需要在OSPF配置中启用TTL安全检查功能。 验证配置 配置完成后,建议验证OSPF TTL 安全检查是否已正确启用。 4、网络设备不支持OSPF TTL 安全检查 在某些情况下,一些旧的或特殊类型的网络设备可能不支持OSPF TTL 安全检查功能。 解决方案:在启用OSPF TTL 安全检查之前,请确保网络设备支持此功能。如果有设备不支持,可以考虑升级设备固件或寻找其他安全措施。
启用OSPF TTL 安全检查为了抵御TTL攻击,OSPF TTL 安全检查机制应运而生。启用此功能后,OSPF将仅接受TTL为255的数据包,拒绝任何TTL小于配置阈值的数据包。 步骤:图片启用OSPF TTL 安全检查首先,需要在OSPF配置中启用TTL安全检查功能。 验证配置配置完成后,建议验证OSPF TTL 安全检查是否已正确启用。 4、网络设备不支持OSPF TTL 安全检查在某些情况下,一些旧的或特殊类型的网络设备可能不支持OSPF TTL 安全检查功能。 解决方案:在启用OSPF TTL 安全检查之前,请确保网络设备支持此功能。如果有设备不支持,可以考虑升级设备固件或寻找其他安全措施。
NTFS (New Technology File System),是 WindowsNT 环境的文件系统。新技术文件系统是Windows NT家族的限制级专用的文件系统。 NTFS取代了老式的FAT文件系统。NTFS 提供长文件名、数据保护和恢复,并通过目录和文件许可实现安全性。NTFS 支持大硬盘和在多个硬盘上存储文件。 第五步:将D盘格式化为ntfs文件系统。 第六步:在D盘中创建一个test.txt文件,在里面添加内容为123456。 第七步:右键test文件,点击属性,进入属性界面。 第十三步:打开本地磁盘D,点击test文件,可以访问。 第十四步:切换用户到test2。 第十五步:打开本地磁盘D,点击test文件,无权访问。
大纲1.并发安全的数组列表CopyOnWriteArrayList2.并发安全的链表队列ConcurrentLinkedQueue3.并发编程中的阻塞队列概述4.JUC的各种阻塞队列介绍5.LinkedBlockingQueue HashMap是ConcurrentHashMap并发安全的ArrayList是CopyOnWriteArrayList并发安全的LinkedList是ConcurrentLinkedQueue从CopyOnWriteArrayList 所以CopyOnWriteArrayList可以保证多线程对数组写写 + 读写的并发安全。 并发安全的HashMap是ConcurrentHashMap并发安全的ArrayList是CopyOnWriteArrayList并发安全的LinkedList是ConcurrentLinkedQueue 因此使用这些并发安全的集合时,要考虑并发下的统计数据的不一致问题。
Nova 安全组 1.1 配置 节点配置文件配置项说明controller /etc/nova/nova.confsecurity_group_api = nova 是的 nova secgroup* FWaaS 并不旨在取代安全组的功能,并且它提供更为补充安全组,特别是在其当前实现状态下。 FWaaS 目前缺乏安全组提供的一些功能,包括无法指定通信的方向等。 411d-b678-e6db3dac45f5', 'position': 1, 'destination_port': None, 'id': u'8658229d-6e34-4069-b091-e560f9e54dc9 ', 'name': u'rule-allow-icmp', 'tenant_id': u'74c8ada23a3449f888d9e19b76d13aab', 'enabled': True, 'action -7b65e6e8c480', 'name': u'fule-allow-tcp-80', 'tenant_id': u'74c8ada23a3449f888d9e19b76d13aab', 'enabled
: 绕过方法: 绕过文件内容检测 方法: 常见图片类型的文件幻数如下: 文件加载检测 1. 第五步,使用中国蚁剑密码连接 连接成功 点开目录列表,找到了文件上传成功的文件 绕过服务端检测 服务端的代码通常检测三个点:MIME类型、文件内容、文件后缀 绕过MIME类型检测 JPEG 图形 .jpeg,.jpg image/jpeg 8. au 声音文件 .au audio/basic 9. 绕过文件内容检测 一般通过检测文件内容来判断上传文件是否合法 方法: 1. 通过检测上传文件内容开始处的文件幻数来判断。 2. 文件加载检测 一般是调用API或函数对文件进行加载测试。 gif 文件幻数检测就要在文件开头写上下面的值: Value = 47 49 46 38 39 61 要绕过 png 文件幻数检测就要在文件开头写上下面的值: Value
numpy提供两种格式的文件读写,分别是npy和txt,前者是numpy自有的一种文件格式,后者是txt格式支持。 对应函数: 文件格式 读函数 写函数 npy load save txt loadtxt savetxt 1. npy 格式文件读写 import numpy as np a = np.arange( ('a',a) # 加载数组 b = np.load('a.npy') print(b) save()函数先提供保存名称,再提供保存对象,会自动再名称后面加上后缀.npy load()函数记得要文件名的全名 (文件名+后缀,例如:a.npy) 2. txt格式读写 import numpy as np a = np.arange(10) # 保存数组 np.savetxt('a.txt',a) # 加载数组