go语言网络扫描开源工具 Go语言开发工具

fscan默认扫描端口

快捷、简单的安全漏洞扫描工具fscan

长泰ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!

fscan是一款用go语言编写的开源工具,一款内网综合扫描工具,方便一键自动化、全方位漏扫扫描。

支持主机存活探测、

端口扫描、

常见服务的爆破、

ms17010、

redis 批量写公钥、

计划任务反弹 shell、

读取 win 网卡信息、

web 指纹识别、

web 漏洞扫描、

netbios 探测、

域控识别等功能

主要功能

1.信息搜集:

存活探测(icmp)

端口扫描

2.爆破功能:

各类服务爆破(ssh、smb等)

数据库密码爆破(mysql、mssql、redis、psql等)

3.系统信息、漏洞扫描:

netbios探测、域控识别

获取目标网卡信息

高危漏洞扫描(ms17010等)

4.Web探测功能:

webtitle探测

web指纹识别(常见cms、oa框架等)

web漏洞扫描(weblogic、st2等,支持xray的poc)

5.漏洞利用:

redis写公钥或写计划任务

ssh命令执行

golangci-line 工具介绍

在 ci 过程中,经常有一些可以通过静态分析或者白盒检测去避免一些问题以及规范代码格式!使用Go语言一般是使用 golangci-line 作为代码检测工具!

参考官网:

安装: curl-sSfL | sh -s -- -b $(go env GOPATH)/bin v1.43.0

版本信息: golangci-lint--version

目前我司是自己二开的 golangci-line,所以这里使用的开源版本,其实大同小异,就是开发了一些插件!

这个就是一个工具,集成了各类自动检测代码的工具,所以不需要本地安装太多的工具,只需要这个工具即可!

由于它需要一个go的项目,这里以我自己的项目去介绍, 项目地址:,如果有同学想自己尝试下可以直接下载我这个项目!项目也比较规范!

其实执行 golangci-lint run-h 就可以获取以下帮助

例如我经常使用的: 我日常就是开启format功能!

1、默认使用的插件

2、默认没用的

3、presets 分类:

具体可以参考我的:

主要是做一些 无用代码检测,简化代码,格式化代码!然后执行 golangci-lint run --fix 即可

Grafana的介绍与使用

Grafana是一款用Go语言开发的开源数据可视化工具,可以做数据监控和数据统计,带有告警功能。目前使用grafana的公司有很多,如paypal、ebay、intel等。

①可视化:快速和灵活的客户端图形具有多种选项。面板插件为许多不同的方式可视化指标和日志。

②报警:可视化地为最重要的指标定义警报规则。Grafana将持续评估它们,并发送通知。

③通知:警报更改状态时,它会发出通知。接收电子邮件通知。

④动态仪表盘:使用模板变量创建动态和可重用的仪表板,这些模板变量作为下拉菜单出现在仪表板顶部。

⑤混合数据源:在同一个图中混合不同的数据源!可以根据每个查询指定数据源。这甚至适用于自定义数据源。

⑥注释:注释来自不同数据源图表。将鼠标悬停在事件上可以显示完整的事件元数据和标记。

⑦过滤器:过滤器允许您动态创建新的键/值过滤器,这些过滤器将自动应用于使用该数据源的所有查询。

Dashboard的建立都是基于某一个数据源的,所以要先加一个数据源。

可视化方式有很多种,不过Graph、Table、Pie chart 这三种基本就已经满足数据展现要求了。

把这个Graph折线图Copy一份,改一下展现方式即可。

注意:默认添加完table后,如果有数字,会以K为单位,比如将300000展示位30k。

数字展示方式修改,Add column style:

当表格中出现数据后,需要通过筛选条件进行筛选,grafana提供了模板变量用于自定义筛选字段。

Type:定义变量类型

Query:这个变量类型允许您编写一个数据源查询,该查询通常返回一个 metric names, tag values or keys。例如,返回erver names, sensor ids or data centers列表的查询。

interval:interval值。这个变量可以代表时间跨度。不要按时间或日期直方图间隔硬编码一个组,使用这种类型的变量。

Datasource:此类型允许您快速更改整个仪表板的数据源。如果在不同环境中有多个数据源实例,则非常有用。

Custom:使用逗号分隔列表手动定义变量选项。

Constant:定义一个隐藏常数。有用的metric路径前缀的dashboards,你想分享。在dashboard export,期间,常量变量将作为一个重要的选项。

Ad hoc filters:非常特殊类型的变量,只对某些数据源,InfluxDB及Elasticsearch目前。它允许您添加将自动添加到使用指定数据源的所有metric查询的key/value 过滤器。

上面的Table和Graph分别使用了interval和query来定义变量进行筛选,不再重复。

grafana只有graph支持告警通知。

grafana的告警通知渠道有很多种,像Email、Teams、钉钉等都有支持。

在grafana.ini中开启告警:

要能发送邮件通知,首先需要在配置文件grafana.ini中配置邮件服务器等信息:

Grafana是个功能强大、展现层很漂亮的数据可视化监控工具,本篇主要介绍了Grafana基于MySQL数据源的安装及常用姿势,也支持其他数据源如ElasticSearch、InfluxDB等。更多内容可看 官网

Go语言的开源项目

1.Docker项目

网址为 。

介绍:Docker是一种操作系统层面的虚拟化技术,可以在操作系统和应用程序之间进行隔离,也可以称之为容器。Docker可以在一台物理服务器上快速运行一个或多个实例。例如,启动一个Cent OS操作系统,并在其内部命令行执行指令后结束,整个过程就像自己在操作系统一样高效。

2.golang项目

网址为 。

介绍:Go语言的早期源码使用C语言和汇编语言写成。从Go 1.5版本自举后,完全使用Go语言自身进行编写。Go语言的源码对了解Go语言的底层调度有极大的参考意义,建议希望对Go语言有深入了解的读者读一读。

3.Kubernetes项目

网址为 。

介绍:Google公司开发的构建于Docker之上的容器调度服务,用户可以通过Kubernetes集群进行云端容器集群管理。

4.etcd项目

网址为 。

介绍:一款分布式、可靠的KV存储系统,可以快速进行云配置。

5.beego项目

网址为 。

介绍:beego是一个类似Python的Tornado框架,采用了RESTFul的设计思路,使用Go语言编写的一个极轻量级、高可伸缩性和高性能的Web应用框架。

6.martini项目

网址为 。

介绍:一款快速构建模块化的Web应用的Web框架。

7.codis项目

网址为 Labs/codis。

介绍:国产的优秀分布式Redis解决方案。

8.delve项目

网址为 。

介绍:Go语言强大的调试器,被很多集成环境和编辑器整合。

GO语言涉及静态扫描吗

gometalinter是一个go语言linter工具集,通过静态代码扫描,能够找出代码中潜在的问题。

Vault的基本用法

介绍Vault的基本用法,包括安装和数据存取

vault是使用go语言开发的开源工具,必须先安装golang

这个例子中,我们使用zookeeper作为后段存储。

因为需要支持多个vault实例,不能使用本地文件系统存储;另外使用zookeeper作为存储,必须配置api_addr参数。

初始化只需要整个vault集群执行一次就行;如果有多个vault实例,只要任何一个,只需要执行一次即可。

会生成5个unseal key和一个root token;其中unseal key下面就会用到,必须存好不可丢失,而root token则是一个超级用户token,必须妥善保管,一般用它来做系统配置,然后签出用户token。

Rest API:

前面我们生成了5个unseal key,这是vault的缺省配置,一共生成5个unseal key,每次解封必须使用其中的三个。(这5和3可以在初始化的时候配置)

解封操作需要在每一个实例的每次启动时执行。

Rest API

三次解封,在查看结果:

Rest API

查看secrets激活状态

在能够进行secret的读写操作之前,必须先激活secrets引擎。

激活操作也初始化一样,整个集群只需要第一次启动的时候执行一次就行。

这里用到了TOKEN,是在vault初始化的时候生成的。

Rest API

Rest API

这个地方需要注意的是,虽然每个path(secert/mypath)下面有多个key/value对,但他们都是值,实际上只有path才是唯一的key,这就是说不能对一个path下面的单独key进行修改,vault只能覆盖整个path的内容,例如:

Rest API

上面这两条命令,后面一条可能是想修改mykey1的值,保留mykey2的值,但实际情况会覆盖前面一条的所有值,即mykey2会丢掉。


分享名称:go语言网络扫描开源工具 Go语言开发工具
URL标题:http://myzitong.com/article/dodoghc.html