问答中心
来自黑客世界帮助中心部分;你可以在任何与技术和信息学相关的话题上寻求帮助。
查看问题
没有热门问题
-
1 票1 个答案
-
-1 票4 个答案
-
-1 票8 个答案
-
0 票1 个答案
-
0 票0 个答案
1,363个问题在此版块
-
.NET(C#)调用百度免费IP查询接口查询IP归属地
.NET(C#)调用百度免费IP查询接口查询IP归属地 IP地址查询是目前互联网上最常用的功能之一了,特别是做多城市的平台,经常需要根据用户的IP来跳转到对应城市! 以前大家打交道比较多的是纯真IP库,或者其它第三方平台API。前者的优势是在于IP资源都在自己服务器,方便。劣势是更新慢,数据不甚准确(特别是需要特定省份或城市时)。后者优势在于更新及时,方便!劣势是依赖于第三方平台。 在本文推荐的就是第二种,百度云开放平台官方API,分为免费版本与收费版本,免费版本IP库一周更新一次,免费申请,免费使用。 推荐理由主要是使用方便,百度大平台,API的稳定也更好。重要的是收费版本价钱也不贵,如果免费版本支持不住大量请求时,只要修改action地址就可以切换到收费版本。 免费版API接口说明与申请在这里:http://apistore.baidu.com/apiworks/servicedetail/114.html 只要传二个参数:apikey与IP即可,注意的是apikey必须放到head中去。 请求地址:ttp://apis.baidu.com/apistore/iplookupservice/iplookup 示例代码: …
0 票0 个答案 -
一个钓鱼后门的分析
一个钓鱼后门的分析 Kimsuky APT组织已经由多个安全团队进行了分析,它最早是由卡巴斯基研究人员于2013年发现,2019年半岛地区攻击活动频繁。该组织位于朝鲜,攻击对象主要是朝鲜相关的政治目标。结合历史的攻击记录,推测Kimsuky更关注于朝鲜半岛的政治外交问题,通常结合相关热点事件向目标发起鱼叉邮件攻击,攻击诱饵较多为hwp文档。 2. 样本概况 2.1 样本信息 文件名:简历样式.hwp.scr 大小:1156608bytes MD5:47C95F19EBD745D588BB208FF89C90BA SHA1:01172C3DAC99CAE246005752A6A66479D8861225 CRC32:39599F94 样本于2020年2月28日在推特上被公布 2.2 测试环境及工具 运行平台:Windows 7 X64 系统监控工具:火绒剑调试工具:X64Dbg、IDA Pro抓包软件:WireShark 3. 执行流程 3.1 功能简述 该样本是Kimsuky组织的一个远控木马,伪装成Word文档诱导受害者点击, 启动后会打开一个正常的文档文件, 同一时间攻击代码也会运行. 为逃避杀毒软件检测, 样本会经过多次加载才执行恶…
0 票0 个答案 -
C#代码常用18大注意点
C#代码常用18大注意点 1、使用PascalCasing命名方式(即每个单词首字母都大写)来命名方法名与类。 public class ClientActivity { public void ClearStatistics() { //... } public void CalculateStatistics() { //... } }2、使用camelCasing 命名方式(即除首字母外的每个单词首字母都大写)来命名变量与参数 。 public class UserLog { public void Add(LogEvent logEvent) { int itemCount = logEvent.Items.Count; // ... } }3、不要使用Hungarian(匈牙利)命名法或者其它类型标识来标记变量(控件除外,如: txtUser)。 // Correct int counter; string name; // Avoid int iCounter; string strName;4…
0 票0 个答案 -
MONO中sql“传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正
MONO中sql“传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正 在Mono平台运行我的一个ASP.NET程序时,程序 出异常提示:传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 4: 参数名无效。 System.Data.SqlClient.SqlException 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 4: 参数名无效。 Description: HTTP 500.Error processing request. Details: Non-web exception. Exception origin (name of application or object): Mono SqlClient Data Provider. Exception stack trace: 说实话MONO的异常远没有.NET的这么详细。在上面信息中,根本未能定位具体的错误信息。因为该代码在windows系统中正常运行,所以本地开发环境无法捕获该异常。 好吧,只能用排除法,最后将错误定位到了一句数据库查询语句上。 SqlParameter[] parameters = { …
0 票0 个答案 -
Flutter(一)之Flutter开发初体验
Flutter(一)之Flutter开发初体验 一. 创建Flutter项目创建Flutter项目有两种方式:通过命令行创建 和 通过开发工具创建 1.1. 通过命令行创建通过命令行创建非常简单,在终端输入以下命令即可: **注意:**Flutter的名称不要包含特殊的字符,另外不可以使用驼峰标识 创建完之后使用自己喜欢的开发工具打开即可 flutter create learn_flutterimage-20190915164546394 1.2. 通过开发工具创建我这里也可以直接通过Android Studio来进行创建: 选择Start a new Flutter project,之后填写相关的信息即可,这里不再赘述 1.3. 默认程序分析我们讲创建的应用起来跑在模拟器上(我这里选择iPhone模拟器,Android也可以),会看到如下效果: 默认项目分析: 我们之前已经分析过目录结构了,在目录下有一个lib文件夹,里面会存放我们编写的Flutter代码; 打开发现里面有一个main.dart,它是我们Flutter启动的入口文件,里面有main函数; 默认代码分析: 这是一个计数器的案例程序,点击右下角的 + 符号,上面显示的数字会递增;…
0 票0 个答案 -
新手程序员必知的十个秘密
新手程序员必知的十个秘密 初出茅庐的你带着仍残留墨香的毕业证书踏上工作岗位,马上就被书上没写的规则和各种繁杂的日常事务来了个下马威。这样的故事实在是司空见惯,编程工作也不例外,如果你不想成为其中之一,请学学以下这 10 项无需手把手指导就能学会的基本技能: 1、版本控制系统(VCS) VCS 也许是计算机课程最大的疏漏。这些课程光记得教如何写代码,但却往往忘记教学生如何去管理代码。每一个程序员都应该懂得利用 Git 或 Subversion 有效地创建 repository(仓库),编辑与提交代码,进行分支与合并,了解项目工作流。 帮助地址:http://www.uml.org.cn/pzgl/200907179.asp 2、学会写作 身为程序员要写的不只有代码。你还要写项目的发布说明,给版本控制写提交消息,在系统里面写漏洞报告。这些和许多地方都需要清晰有效的文字交流—但这个技能计算机科学却很少强调。 3、正则表达式 正则表达式本身就是一门语言,每一个现代程序员都要擅长。每一门现代语言都支持正则表达式或者有相关标准库。如果代码需要校验某字符串是否含有 5 个字符、1 个破折号和 1 个数字,你应该马上就能写出 /^[A-Z]{5}-\d$/。 …
0 票0 个答案 -
iOS,Android,.NET通用的AES加密算法
iOS,Android,.NET通用的AES加密算法 这两天为移动App开发API,结果实现加密验证时碰到一大坑。这里不得不吐槽下又臭又硬的iOS,Windows Server无法解密出正确的结果,Android则可以,后来使用了通用的AES256加密算法才最终搞定。 搞服务器端小伙伴没有接触过iOS,所以也没料到过这种情形。他使用了AES128 with IV的加密算法,Android端可以顺利通过加密验证。 但是iOS端使用AES128算法后出现问题,虽然可以在本地加密解密,但是无法被服务器解密成功。 后来经过多方查找,才了解到一个蛋疼的事实,iOS只支持AES PKCS7Padding算法,在服务器端修改为响应算法后,顺利通过。 这里主要参考一篇博文,以下给出通用AES算法: //头文件 #import <Foundation/Foundation.h> @interface NSData (AES) - (NSData *)AES256EncryptWithKey:(NSString *)key; - (NSData *)AES256DecryptWithKey:(NSString *)key; @end实现代码: #imp…
0 票0 个答案 -
vue实现登录、注册、退出、跳转等功能
vue实现登录、注册、退出、跳转等功能 本文给大家介绍vue实现登录、注册、退出、跳转功能,具体代码如下所示: 效果图1: 效果图2: 效果图3: 效果图4: 完整实例: <!DOCTYPE html> <html> <head> <meta charset="GBK"> <title></title> <style> ul li { margin: 0; padding: 0; list-style: none; } #app { width: 600px; height: 400px; margin: 0 auto; border: 1px solid #ccc; } .title{ text-align:center; } .tab-tilte{ width: 99%; } .tab-tilte li{ float: lef…
0 票0 个答案 -
把Dapper 换成 SqlSugar ORM类的方法详解
把Dapper 换成 SqlSugar ORM类的方法详解 为什么要写这篇文章因数我看到很多人虽然用着SqlSugar,但是同时也用着Dapper,因为SqlSugar兼容了Dapper所有API,所以既然你用了SqlSugar那么就没有必要在同一个项目中使用2个ORM 所以这篇文章是给使用SqlSugar或者你想使用SqlSugar的朋友看的 Dapper 介绍Dapper是一个轻量级开源的ORM类,他是通过扩展IDbConnection提供一些有用的扩展方法去查询您的数据库,所以Ado.Net支持的数据库,他都可以支持。 在速度方面具有“King of Micro ORM”的头衔,几乎与使用原始的ADO.NET数据读取器一样快。很多人第一次使用了他之后,就深深的喜欢上他了。 SqlSugar 介绍SqlSugar 同样轻量级小巧,功能方面更加全面,需求都是来自1000多开发人员的真实项目需求,在这些需求上进行完美的设计,经过5年多的积累, 可以完美满足企业级的所有需求特别是查询功能,支持了各种类型的返回例如DataTable、List、字典等,还支持各种查询, 例如一次查询多个结果集,当然也支持存储过程 性能对比在基础功能查询上性能双方是相当…
0 票0 个答案 -
nodejs+express最简易的连接数据库的方法
nodejs+express最简易的连接数据库的方法 环境搭建1.首先需要自行安装node环境 2.然后全局安装 express 1npm install -g express3.创建express项目文件夹 express创建项目默认为jade模板引擎,若使用其他引擎,使用命令切换 1express node_demo -e (选择ejs模板) // 在项目名称的后面添加 -e 那么创建出来的模板文件就是.ejs类型,语法是与html相同的 在vscode中打开我们建好的项目,目录如下: 对于ejs看着不习惯的同学可以将其改为html,如下: 然后还需要将在views新建一个index.html 与error.html 内容如下 index.html error.html 安装依赖 npm install 启动项目 npm start 监听bin/www文件,默认端口为3000,可在www文件中更改, 打开浏览器,输入localhost:3000 这时我们就可以看到页面显示的内容是index.html 里面定义的内容了 因为每次修改都需要重新启动,比较麻烦,这里有个插件nodemon,可以自动重启 1npm install node…
0 票0 个答案 -
从开发角度看那些FastJson漏洞不为人知的事情
从开发角度看那些FastJson漏洞不为人知的事情 文章来源自FreeBuf.COM 前言在FastJson<=1.2.24漏洞公布时我还是一个开发,对于这个消息我震撼至极,那时的FastJson的热度可谓如日中天。但是,对FastJson漏洞复现过后突然心就被伤了,那些把FastJson漏洞吹的捧上神坛的人是否真的知道他的影响程度? 概述本文将从漏洞运用所依赖的条件,怎么样发现此漏洞,漏洞产生的原理跟踪,以及评价这个漏洞四个维度去分析。 漏洞运用所依赖的条件之所以先将这个模块是为了先泼大家一盆冷水,先降低大家人对FastJson漏洞的影响程度的认知。 众所周知 1.FastJson<=1.2.47是利用的先决条件 2.其二是 JSON.parseObject(text2);但是,满足第二个条件的难度你真的知道嘛? 我们编辑的POC在前端与后端进行交互的包中,意味着在后端拿到请求参数时进行JSON.parseObject(参数)进行参数的json转换。下面上代码 只有满足这样的条件,也就是在后端拿到用户请求的参数时,将其使用FastJson提供的JSON.parseObject(参数)这个API进行json格式化的时候才会产生我们所说…
0 票0 个答案 -
2020渗透测试面试问题大全
2020渗透测试面试问题大全 渗透篇 1、介绍一下自认为有趣的挖洞经历 挖洞也有分很多种类型,一种是以渗透、一种是以找漏洞为主,如果是前者会想各种办法获取权限继而获取想要的的东西完成渗透目标,这类跟HW类似,目标各种漏洞不算,要有Shell,服务器权限才给分,这才是最接近实战渗透,跟某部门有合作的话也是属于这种打击网络犯罪获得权限、传销数据、组织架构,服务器权限、等...... 2、你平时用的比较多的漏洞是哪些?相关漏洞的原理?以及对应漏洞的修复方案? SQL注入、密码组合,前者防护分为几种,CDN -> Web -> 数据库 -> 主机,设置最小权限来应对。密码组合根据个人习惯 3、php/java反序列化漏洞的原理?解决方案? php中围绕着serialize(),unserialize()这两个函数,序列化就是把一个对象变成可以传输的字符串,如果服务器能够接收我们反序列化过的字符串、并且未经过滤的把其中的变量直接放进这些魔术方法里面的话,就容易造成很严重的漏洞了。 O:7:"chybeta":1:{s:4:"test";s:3:"123";} 这里的O代表存储的是对象(object),假如你给seriali…
0 票0 个答案 -
为大家精选一份WEB信息/资产收集的武器库(下)
为大家精选一份WEB信息/资产收集的武器库(下) 知己知彼,百战不殆在WEB实战渗透中,信息收集,资产收集至关重要。 所收集到的信息,资产决定了最后成果的产生。 信息收集个人理解更偏向于单一系统下组件,指纹等常规信息的收集,整合。 资产收集则更偏向于针对一个网站,一个公司,一个域名全方面的信息收集,信息资产包括但不限于子域名,app,小程序等。 当然最主要的是找一些不对外公开的线上系统,往往这些系统更容易出现漏洞,也可以拿到很高的奖励或积分。 两者收集的思路不能局限,发散而聚合,特此整合一些优秀的信息收集,资产收集文章,分享出来一起学习大佬们的思路,最终形成自己的收集体系。 今天分享一些WEB信息/资产收集的武器库。 武器库1、ARL资产侦察灯塔系统https://github.com/TophantTechnology/ARL简介: 旨在快速侦察与目标关联的互联网资产,构建基础资产信息库。协助甲方安全团队或者渗透测试人员有效侦察和检索资产,发现存在的薄弱点和攻击面。 2、LangSrcCurise资产监控系统 https://github.com/LangziFun/LangSrcCurise简介: LangSrcCurise资产监控系统是…
0 票0 个答案 -
Emlog的文章页访问密码美化页面代码
Emlog的文章页访问密码美化页面代码 2018年emlog的文章页访问密码美化页面教程(尾部提供下载)。 http://52bug.cn/content/uploadfile/201811/d3791541085946.jpg Emlog程序的钩子远不如 WordPress 这么丰富,因此这一美化只能通过直接修改 Emlog 代码来实现。 具体的位置在 include/model/log_model.php 文件末尾的 authPassword 函数。 一、将原来的函数里的 if ($pwd !== addslashes($logPwd)) { echo <<<EOT <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>emlog message</title> <style type="text/css"> <!-- body{background-color:#F7F7F7;font-family: Arial;fon…
0 票0 个答案 -
2020渗透测试面试问题大全(前端篇)
2020渗透测试面试问题大全(前端篇) 前端篇 1、什么是同源策略? 源就是主机、协议、端口名的一个三元组 同源策略(Same Origin Policy, SOP)是Web应用程序的一种安全模型,被广泛地应用在处理WEB内容的各种客户端上,比如各大浏览器,微软的Silverlight,Adobe的Flash/Acrobat等等。 2、XSS 能用来做什么? 网络钓鱼、窃取用户Cookies、弹广告刷流量、具备改页面信息、删除文章、获取客户端信息、传播蠕虫 3、XSS的三种类型,防御方法 反射型、Dom Base XSS、存储型 防御方法这个只能说个大概,毕竟这是一个比较大的话题,而且防御的方法还得看所在的业务等。从网络层、主机层、Web层、数据库,通过CDN都有过滤常见一些攻击手法,但不能有CDN就以为可以了,添加CDN只是让攻击成本增高,开启HttpOnly,以防确实存在避免cookies被获取,CSP策略、再就是语言中提供的函数对输入过滤,以及输出编码以及ModSecurity类的防火墙。 4、存储型xss原理? 如网站留言版,把插入的记录存储在数据库中,插入的代码会一直留在页面上,当其它用户访问会从数据库中读取并触发漏洞。…
0 票0 个答案 -
2020渗透测试面试问题大全(下)
2020渗透测试面试问题大全(下) 22、如果给你一个网站,你的渗透测试思路是什么? 在获取书面授权的前提下。 其实这是一个非常大的话题,渗透大部分思路都是如此,而面试官是想听到你回答不一样的答案让人眼前一亮 如何才做到让人眼前一亮都需要看你的经验,把你实践的过程拿出来说,以及遇到什么问题如何解决,最终取得成果 渗透其它大同小异,而做为渗透者知识的储备、基础扎实、耐心、细心都是必不可少。 23、谈一谈Windows系统与Linux系统提权的思路? Windows Windows服务比较多所以方法也如此,最基本的就是Exp提权,数据库SQLServer、MYSQL UDF等、第三方软件提权。 除此之外提权的成功与否和在于信息收集也非常重要,你对这台服务器和管理员了解多少。 windows权限提升(二) Linux Linux也是类似,除了EXP或者高版本的内核无法提权之外,通过第三方软件和服务,除了提权也可以考虑把这台机器当跳版, 达到先进入内网安全防线最弱的地方寻找有用的信息,再迂回战术。 linux权限提升 Brief 枚举脚本 以root权限运行的程序 用户安装的软件 弱口令或者明文密码 只能内部访问的服务 suid和guid错误…
0 票0 个答案 -
SSRF的基本概念和原理
SSRF的基本概念和原理 SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统) SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等等。 1、监测 SSRF漏洞的验证方法: 1)因为SSRF漏洞是让服务器发送请求的安全漏洞,所以我们就可以通过抓包分析发送的请求是否是由服务器的发送的,从而来判断是否存在SSRF漏洞 2)在页面源码中查找访问的资源地址 ,如果该资源地址类型为 www.baidu.com/xxx.php?image=(地址)的就可能存在SSRF漏洞 4[1] 2、SSRF漏洞的成因 防御 绕过 成因:模拟服务器对其他服务器资源进行请求,没有做合法性验证。利用:构造恶意内网IP做探测,或者使用其余所支持的协议对其余服务进行攻击。防御:禁止跳转,限制协议,内外网限制,URL限制。绕过:使用不同协议,针对IP…
0 票0 个答案 -
Navicat_11 and 12 Pro专用破解补丁
Navicat_11 and 12 Pro专用破解补丁 一、下载 Navicat官方下载地址:点击打开链接 二、破解步骤 1、打开破解工具: http://www.webyang.net/data/uploads/internal/image/20180512/20180512072050_15758.png 2、点击右上角的patch,选择到你安装路径的navicat.exe,点击确定,提示 navicat.exe - x64 -> Cracked. http://www.webyang.net/data/uploads/internal/image/20180512/20180512072053_93246.png 3、选择你自己安装的语言版本,修改你的名字和组织,然后点击生成。 http://www.webyang.net/data/uploads/internal/image/20180512/20180512072054_35344.png 4、把生成的key输入到navicat.exe的激活码里面去,这一步有可能会提示秘钥不对。如果不对,在注册机重新生成一个即可。 http://www.webyang.net/dat…
0 票0 个答案 -
2020渗透测试深信服一面
2020渗透测试深信服一面 了解哪些漏洞 文件上传有哪些防护方式 用什么扫描端口,目录 如何判断注入 注入有防护怎么办 有没有写过tamper 3306 1443 8080是什么端口 计算机网络从物理层到应用层xxxx 有没有web服务开发经验 如何向服务器写入webshell 有没有用过xss平台 网站渗透的流程 mysql两种提权方式(udf,?) 常见加密方式xxx ddos如何防护 有没有抓过包,会不会写wireshark过滤规则 清理日志要清理哪些 SQL注入防护 1、使用安全的API 2、对输入的特殊字符进行Escape转义处理 3、使用白名单来规范化输入验证方法 4、对客户端输入进行控制,不允许输入SQL注入相关的特殊字符 5、服务器端在提交数据库进行SQL查询之前,对特殊字符进行过滤、转义、替换、删除。 6、规范编码,字符集 五、为什么参数化查询可以防止SQL注入 原理: 使用参数化查询数据库服务器不会把参数的内容当作sql指令的一部分来执行,是在数据库完成sql指令的编译后才套用参数运行 简单的说: 参数化能防注入的原因在于,语句是语句,参数是参数,参数的值并不是语句的一部分,数据库只按语句的语义跑 六、SQL头注入点 UA R…
0 票0 个答案 -
XSS的基本概念和原理
XSS的基本概念和原理 1、XSS原理 反射型 用户提交的数据中可以构造代码来执行,从而实现窃取用户信息等攻击。需要诱使用户“点击”一个恶意链接,才能攻击成功 存储型 存储型XSS会把用户输入的数据“存储”在服务器端。这种XSS具有很强的稳定性。 DOM型 通过修改页面的DOM节点形成的XSS,称之为DOM Based XSS。 2、DOM型和反射型的区别 反射型XSS:通过诱导用户点击,我们构造好的恶意payload才会触发的XSS。反射型XSS的检测我们在每次请求带payload的链接时页面应该是会带有特定的畸形数据的。DOM型:通过修改页面的DOM节点形成的XSS。DOM-based XSS由于是通过js代码进行dom操作产生的XSS,所以在请求的响应中我们甚至不一定会得到相应的畸形数据。根本区别在我看来是输出点的不同。 3、DOM型和XSS自动化测试或人工测试 人工测试思路:找到类似document.write、innerHTML赋值、outterHTML赋值、window.location操作、写javascript:后内容、eval、setTimeout 、setInterval 等直接执行之类的函数点。找到其变量,回溯变量来源观察是…
0 票0 个答案