- 博客(55)
- 资源 (64)
- 收藏
- 关注
转载 解决工控网络通信协议威胁的实践
来自于工控通信协议的威胁工控通信协议作为工控设备与应用、设备与设备之间沟通的一种重要语言。工控系统中如果需要实现远程数据监控(SCADA)就一定离不开通讯协议,SCADA系统中会使用经由双方约定的协议直接与下层设备或数据采集转换器进行数据通信。随着时代的发展,厂级监控的实时性、可靠性需求增高,工业通信总线通讯速率的不断提升,从RS232/485到工业以太网再到工业实时以太网,工控网络中大量引入...
2018-12-25 17:04:22 1225
转载 工控modbus协议fuzz测试验证小结
背景最近几个月从事工控安全工作,其中涉及到模糊测试和漏洞分析,之前一直在忙各自项目,所以对漏洞挖掘没怎么做,这两天刚好对施耐德PLC进行了一次fuzz,出现了两次异常,这篇文章对异常进行分析的一个小结。涉及到的知识因为时间关系这个文章写的不是很详细,如果你有一些基础的话,看起来会容易,会涉及到如下技术:1.python数据类型转字节流,涉及到struct库的使用。2.modbus协议数据包的结...
2018-12-25 16:42:52 3639 1
转载 nmap脚本(nse)原理和编写
Nmap脚本引擎原理一、NSE介绍 虽然Nmap内嵌的服务于版本探测已足够强大,但是在某些情况下我们需要多伦次的交互才能够探测到服务器的信息,这时候就需要自己编写NSE插件实现这个功能。NSE插件能够完成网络发现、复杂版本探测、脆弱性探测、简单漏洞利用等功能。脚本扫描通过选项被激活-sC: 使通用scripts生效--script: 指定自己的脚本文件--script-tra...
2018-12-25 14:54:48 10037 1
转载 工控安全入门分析
0x00写在前面工业4.0,物联网趋势化,工控安全实战化。安全从业保持敏感,本篇以科普角度对工控安全做入门分析,大牛绕过,不喜轻喷。 0x01专业术语SCADA:数据采集与监视控制系统ICS:工业控制系统DCS:分布式控制系统/集散控制系统PCS:过程控制系统ESD:应急停车系统PLC:可编程序控制器(Programmable Logic Contro...
2018-12-25 14:29:16 609
转载 一系列用于Fuzzing学习的资源汇总
本文主要是向大家推荐一系列,用于fuzzing和Exploit开发初始阶段学习的资源合集,其中将包括相关的书籍,课程 – 免费或收费的,视频,工具,教程,以及一些供大家练习使用的靶机应用。fuzzing书籍:《模糊测试-强制性安全漏洞发掘》作者: Michael Sutton, Adam Greene, Pedram Amini。《软件安全测试Fuzzing和zhi’laing质量保...
2018-12-25 14:21:07 862
转载 Fuzzing技术简介
一、什么是Fuzzing?Fuzz本意是“羽毛、细小的毛发、使模糊、变得模糊”,后来用在软件测试领域,中文一般指“模糊测试”,英文有的叫“Fuzzing”,有的叫“Fuzz Testing”。本文用fuzzing表示模糊测试。Fuzzing技术可以追溯到1950年,当时计算机的数据主要保存在打孔卡片上,计算机程序读取这些卡片的数据进行计算和输出。如果碰到一些垃圾卡片或一些废弃不适配的卡片,...
2018-12-25 11:37:42 5376 1
转载 linux shell case语句
case语句和判断语句[if...elif...else]功能类似;当在逻辑判断比较简单的情况下,比后者的代码量要少许多.case用法,用变量来匹配某值,如果匹配成功则执行它下面的命令,直到两个分号为止 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15...
2018-12-22 20:53:29 714
转载 记事本输入“联通”俩字,关闭再打开乱码
这是个很有意思的事情。 这里需要提一下ANSI,不同的国家和地区制定了不同的标准,由此产生了 GB2312, BIG5, JIS 等各自的编码标准。然后,这些编码方式没有固定的格式,但是比如说UTF-8的格式是非常明显的,比如最高位是0,110,1110等等。在记事本保存操作中,windows默认保存的编码是ANSI(在中国是GB2312)。 这样联通这两个字的二进制内码是:(一个...
2018-12-22 15:50:24 5358 1
转载 网络扫描技术总结
网络扫描器的主要功能 1.扫描目标主机识别其工作状态(开/关机) 2.识别目标主机的端口状态(监听/关闭) &n
2018-12-22 10:49:37 5551
转载 Cmake知识----编写CMakeLists.txt文件编译C/C++程序
1.CMake编译原理CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多。CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object))。因此CMake的编译基本就两个步骤:cmakemake...
2018-12-21 20:41:49 650
转载 OpenVAS 开放式漏洞评估系统--安装及说明
前言 OpenVAS是一款开放式的漏洞评估工具,主要用来检测目标网络或主机的安全性。与安全焦点的X-Scan工具类似,OpenVAS系统也采用了Nessus较早版本的一些开放插件。OpenVAS能够基于C/S(客户端/服务器),B/S(浏览器/服务器)架构进行工作,管理员通过浏览器或者专用客户端程序来下达扫描任务,服务器端负载授权,执行扫描操作并提供扫描结果。 一套完整的OpenVAS系...
2018-12-21 15:13:19 1441
转载 openvas进程间通讯api与报文交互
1.omp与manager之间的rest API 2. manager与scanner之间的rest API 3.omp与manager具体报文交互 4.manager与scanner具体报文交互
2018-12-21 09:53:35 766
转载 RESTful API浅谈
解释API,应用程序接口,也可以叫应用程序界面,或者简称为应用接口。应用程序的设计可以相当复杂,但最终的用户并不需要知道应用程序的内部到底是如何工作的,你只需要给用户提供一些操作接口,再告诉用户怎么用这些接口就行了。用个现实例子,比如手机上的音量按键,就像是应用程序里的接口,用户不用知道按下按键具体发生的事情,这是工程师研究的东西,用户只知道按下这个按钮可以增大音量,或者减小音量。再回到程...
2018-12-21 09:49:02 260
转载 linux c printf 不能输出
原因: 输出缓冲区的问题.unix上标准输入输出都是带有缓存的,一般是行缓存。对于标准输出,需要输出的数据并不是直接输出到终端上,而是首先缓存到某个地方,当遇到行刷新标志或者该缓存已满的情况下,才会把缓存的数据显示到终端设备上。ANSI C中定义换行符'\n'可以认为是行刷新标志。所以,printf函数没有带'\n'是不会自动刷新输出流,直至缓存被填满。解决方案:方案1、在p...
2018-12-20 20:09:02 9896 3
转载 suricata规则
Emerging威胁检测规则wiki:http://doc.emergingthreats.net/bin/view/Main/WebHomeEmerging规则文件:http://rules.emergingthreatspro.com/ 基本语法Snort规则与Suricata规则基本语法相同规则结构一、规则头部:1. 规则行为:行为声明,用于通知IDS引擎...
2018-12-20 10:21:07 8530
转载 configure: error: newly created file is older than distributed files!
在一个特定的环境中遇到如下情况:configure: error: newly created file is older than distributed files!make: warning: Clock skew detected. Your build may be incomplete.是因为现在的时钟要比文件的时间早,所以有两个方法去实现。1.设置当前系统的时间...
2018-12-20 09:22:11 880
转载 suricata的简介以及安装过程
Suricata介绍Suricata是一款高性能的网络IDS、IPS和网络安全监控引擎。它是由the Open Information Security Foundation开发,是一款开源的系统。软件的源代码可以通过http://suricata-ids.org/获得。IDS介绍IDS是英文“Intrusion Detection Systems”的缩写,中文意思是“入侵检测系统”。...
2018-12-19 19:44:12 2262
转载 gdb基本命令
[简介]=============GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。同时GDB也具有例如ddd这样的图形化的调试端。一般来说,GDB主要完成下面四个方面的功能:(1)启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。(2)可让被调试的程序...
2018-12-19 17:14:26 442
转载 gdb调试fork+exec创建的子进程的方法
最常见的多进程的形式如下:pid = fork();if (pid < 0) { // fork failed printf("fork error\n"); exit(1);} else if (pid > 0) { // parent process // command} else { // child process // comm...
2018-12-19 15:58:28 594 1
转载 gdb调试问题Missing separate debuginfos, use: debuginfo-install
在做GDB调试的时候,出现这样一个提示:Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.26-20.el7_2.x86_64 glibc-2.17-106.el7_2.8.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.13.2-12.el7_2...
2018-12-19 15:50:35 3483
转载 cmake编译时支持gdb调试
一般在调用./configure时,可以通过设置CXXFLAGS或者CFLAGS使程序可以支持调试,就是可以用GDB查看程序运行的信息,但在cmake编译时,在cmake过程和后面的make及make install都无法加入调试信息。当然可以加入调试信息的,方法如下:修改CMakeLists.txt文件,如我修改如下:# Version 2.4 might work, but it...
2018-12-19 15:30:11 1697
转载 linux 本地socket 简介
Unix domain socket 又叫 IPC(inter-process communication 进程间通信) socket,用于实现同一主机上的进程间通信。socket 原本是为网络通讯设计的,但后来在 socket 的框架上发展出一种 IPC 机制,就是 UNIX domain socket。虽然网络 socket 也可用于同一台主机的进程间通讯(通过 loopback 地址 127...
2018-12-19 10:54:08 898
转载 CentOS下Redis的安装
CentOS下Redis的安装前言安装Redis需要知道自己需要哪个版本,有针对性的安装,比如如果需要redis GEO这个地理集合的特性,那么redis版本就不能低于3.2版本,由于这个特性是3.2版本才有的。另外需要注意的是,Redis约定次版本号(即第一个小数点后的数字)为偶数的版本是稳定版(如2.8版、3.0版),奇数版本是非稳定版(如2.7版、2.9版),生产环境下一般需要使用...
2018-12-19 09:41:39 121
转载 工控系统的指纹识别技术
当前,指纹识别技术已被或坏或好的广泛应用于ICT系统。攻击者通过扫描网络获取设备指纹来关联漏洞入侵系统,安全防护者则利用设备指纹来发现系统的脆弱性,检测系统的网络异常。在工业控制系统(ICS)中,指纹识别技术亦用于发现ICS系统脆弱性,检测攻击行为等方向。本文主要分析和总结了工控安全领域的被动指纹识别技术。指纹识别是什么在ICT领域里,指纹识别是利用不同信息描述运行于网络中的设备或者软件的...
2018-12-17 17:18:45 2135
转载 make clean与make distclean的区别
make clean仅仅是清除之前编译的可执行文件及配置文件。 而make distclean要清除所有生成的文件。Makefile在符合GNU Makefiel惯例的Makefile中,包含了一些基本的预先定义的操作:make根据Makefile编译源代码,连接,生成目标文件,可执行文件。make clean清除上次的make命令所产生的object文件(后缀为“.o”...
2018-12-17 16:38:35 8980
转载 升级ruby的版本
升级ruby版本,有时候安装ruby的版本过低,需要进行升级,例如安装在centos6.7安装fpm需要ruby版本在1.9以上。1、主机环境如下:1 [root@test ~]# cat /etc/redhat-release 2 CentOS release 6.7 (Final)3 [root@test ~]# uname -r4 2.6.32-573.el6.x86_64...
2018-12-17 15:47:49 1330
转载 linux shell if [[ ]]和[ ]区别 || &&
[]和test 两者是一样的,在命令行里test expr和[ expr ]的效果相同。test的三个基本作用是判断文件、判断字符串、判断整数。支持使用 ”与或非“ 将表达式连接起来。test中可用的比较运算符只有==和!=,两者都是用于字符串比较的,不可用于整数比较,整数比较只能使用-eq, -gt这种形式。无论是字符串比较还是整数比较都千万不要使用大于号小于号。当然,如果你...
2018-12-16 10:57:12 15053 4
转载 cmd查看wifi密码
单个密码的获取1.打开cmd2.netsh wlan show profiles ------查看已连接的WiFi3.netsh wlan show profiles name="WiFi名称" key=clear ------获取已连接的WiFi密码 所有密码的获取CMD平常人看起來根本沒什麼用,但是如果你会使用,你会发现:它真的很强大!Windows 8、Win...
2018-12-15 16:46:53 2157 1
转载 使用OpenVas漏扫
0×01 建立一个扫描目标新建扫描目标Configuration→Targets→New Openvas扫描主机时可以手工输入,也可以通过文件导入。有默认配置好的扫描端口列表及存活测试,可根据实际情况下拉选择。 端口扫描列表可以通过星型图标创建自定义端口扫描策略。同样,通过星型图标可创建登录凭证。 在已知主机账号密码时可以进行登录扫描。 0×02...
2018-12-14 16:31:09 1497 2
转载 linux 多进程 多线程的选择
关于多进程和多线程,教科书上最经典的一句话是“进程是资源分配的最小单位,线程是CPU调度的最小单位”,这句话应付考试基本上够了,但如果在工作中遇到类似的选择问题,那就没有这么简单了,选的不好,会让你深受其害。经常在网络上看到有的XDJM问“多进程好还是多线程好?”、“Linux下用多进程还是多线程?”等等期望一劳永逸的问题,我只能说:没有最好,只有更好。根据实际情况来判断,哪个更加合适就是哪个...
2018-12-14 16:09:05 740 1
转载 web前端 react与vue 流行框架的比较
JavaScript是世界上最流行的语言之一,React和Vue是JS最流行的两个框架。但哪一款最适合你?JavaScript越来越受欢迎,许多科技巨头正在从中获益。每天都会出现大量的框架和语言,我们无法跟上所有这些框架和语言的步伐。很难确定哪些值得关注。JavaScript的世界正以前所未有的速度和作为软件开发的公司,我们无法承受忽视这个时代的讨论最多的框架-React.js和Vue....
2018-12-14 13:33:13 1196
转载 linux中fork()函数详解
一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来的进程...
2018-12-14 11:07:32 176
转载 NASL脚本语言
1.简介1.1.什么是NASL? NASL是一个为网络安全扫描工具Nessus开发的脚本语言。通过它,任何人都可以方便快速地针对新出现的漏洞编写出测试插件,也便于不同操作系统的用户分享测试脚本。除此之外,NASL还可以保证编写的脚本只能用于针对目的主机的测试,使编写者难以使用编写的脚本用于恶意用途。 使用NASL,你可以很容易地打造IP报文,或者发送通常的报文。NASL中还有一些专...
2018-12-14 09:45:18 2427 1
转载 使用Nessus漏扫
Nessus号称是世界上最流行的漏洞扫描程序,全世界有超过75000个组织在使用它。该工具提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。Nessus不同于传统的漏洞扫描软件,Nessus可同时在本机或远端上遥控,进行系统的漏洞分析扫描。Nessus也是渗透测试重要工具之一。所以,本章将介绍安装、配置并启动Nessus。5.1.1 安装和配置Nessus为了定位在目标系统上的漏洞,Ne...
2018-12-14 09:20:40 3219
转载 linux shell 获取当前正在执行脚本的绝对路径
常见的一种误区,是使用 pwd 命令,该命令的作用是“print name of current/working directory”,这才是此命令的真实含义,当前的工作目录,这里没有任何意思说明,这个目录就是脚本存放的目录。所以,这是不对的。你可以试试 bash shell/a.sh,a.sh 内容是 pwd,你会发现,显示的是执行命令的路径 /home/june,并不是 a.sh 所在路径:/...
2018-12-13 21:54:38 928
转载 vim tab设置为4个空格
为了vim更好的支持python写代码,修改tab默认4个空格有两种设置方法:1. vim /etc/vimrcsetts=4setsw=42.vim /etc/vimrcsetts=4setautoindent推荐使用第二种,按tab键时产生的是4个空格,这种方式具有最好的兼容性。在 Vim 中设置 Tab缩进用 tab 制表符还是空格,...
2018-12-13 21:35:01 1931 1
转载 docker privileged 权限 参数
$ docker help run ...--privileged=false Give extended privileges to this container...大约在0.6版,privileged被引入docker。使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。priv...
2018-12-13 20:15:52 3925
转载 网络空间搜索引擎全方位评测
目录最佳设计奖:Shodan最佳学术奖:Censys最佳先锋奖:Zoomeye(钟馗之眼)最佳潜力奖:Fofa从前有座山,山上有座庙,庙里有个老和尚和小和尚……这个简短无尽的儿童故事是很多人都知晓的,整个故事从开头就定义了空间的概念,让我们能够清楚的知道老和尚和小和尚在山上的庙里,网络空间同样如此。如果说GPS绘制出了世界的地图,那么网络空间搜索引擎就是整个互联网的地图。自...
2018-12-12 17:27:49 4234
转载 Sybase数据库 概述部署命令
概述 70年代,随着大型共享数据库应用的普及,美国SYBASE公司基于当时的关系代数理论所提出的数据库关系模型,开发了Sybase数据库系统; Sybase是基于SQL(Structured Query Language)的著名关系模型数据库系统,是世界上最流行的DBMS软件之一;它能在多种计算机硬件平台上运行,并能通过连网形成分布式数据库环境; SQL Server是指运行在主机上,能提...
2018-12-12 09:32:31 1095
转载 Docker报错 WARNING: IPv4 forwarding is disabled. Networking will not work.
问题:创建容器的时候报错# docker run -it -p 30001:22 --name=centos-ssh centos /bin/bashWARNING: IPv4 forwarding is disabled. Networking will not work. 解决办法:#vim /usr/lib/sysctl.d/00-system.conf添加如下代...
2018-12-11 19:51:55 140
字体wps.zip 用于linux wps 使用
2020-03-16
Nat_Type_Tester_.rar
2019-12-26
msfupdate.erb
2019-11-04
fuzz工具 teenage mutant ninja turtles
2019-01-14
Sybase ASE 12.5.4 PC 客户端
2018-12-12
Win32 OpenSSL
2015-04-18
ActivePerl
2015-04-18
编写 Debugging Tools for Windows 扩展 实例
2014-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人