freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

【白嫖】GitHub Action 云扫描器
Initsec 2023-06-05 09:41:02 205100
所属地 北京

GitHub Action介绍

GitHub Actions 是一种持续集成和持续交付 (CI/CD) 平台,可用于自动化构建、测试和部署应用程序,执行代码质量检查,创建和发布软件包,发送通知,执行持续集成和持续部署等等。可以根据自己的需求和工作流程来定义和配置这些自动化任务

可以理解为GitHub提供了一台最长可以使用6小时的云服务器,每次push代码时,该云服务器都会按照你提前设定好的流程去执行一遍。

简单演示

以构建简单的 subfinder子域名收集 - nuclei漏扫为例,先使用subfinder进行子域名收集,然后使用nuclei进行漏扫,最后将结果上传到GitHub的当前仓库中。

创建git项目,编写.github/workflows/blank.yml内容如下,基本上都能看懂每一步干啥,每个字段解读可参考官方文档

name: CI
on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
      - uses: actions/checkout@v3

      # Setup Go environment
      - name: Setup Go environment
        uses: actions/setup-go@v4.0.1
        with:
          go-version: 1.20.1

      # 安装subfinder 和 nuclei
      - name: Run Install
        run: |
          go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest
          go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest

      # 使用
      - name: Run tools
        shell: bash
        run: |
          domain=$(cat input/domain.txt)
          subfinder -d $domain -o output/subdomains.txt
          nuclei -l output/subdomains.txt -o output/vuln.txt -s medium

      # push到当前仓库
      - name: Commit files
        run: |
          git config --local user.email "github-actions[bot]@users.noreply.github.com"
          git config --local user.name "github-actions[bot]"
          git add *
          git commit -m "commit change file"

      - name: GitHub Push
        # You may pin to the exact commit or the version.
        # uses: ad-m/github-push-action@40bf560936a8022e68a3c00e7d2abefaf01305a6
        uses: ad-m/github-push-action@v0.6.0
        with:
          # Token for the repo. Can be passed in using $\{{ secrets.GITHUB_TOKEN }}
          github_token: ${{ secrets.GITHUB_TOKEN }}
          branch: ${{ github.ref }}


整体目录结构如下:

.
├── .github
│   └── workflows
│       └── blank.yml
├── .gitignore
├── input
│   └── domain.txt // 内容为gm7.org
└── output
    └── res.txt


上传到Github中,Github将会通过Action自动构建,按照我们设置的流程运行,结果如下。

res

结果push到仓库,可随时查看。

push

注意事项

创建workflow

如果要从头写一个workflow的话,建议在Github中新建模板后再改。

action

此外右边有语法参考,还可以直接从市场复制想要的东西,很方便。

cankao

remote: Write access to repository not granted.

需要在当前仓库的设置中,赋予workflow写权限。

image-20230602下午21707374

速度方面

个人感觉速度比较慢,比较欠缺,有这精力不如直接买台服务器配了,一劳永逸。

# 渗透测试 # web安全
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 Initsec 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
Initsec LV.4
这家伙太懒了,还未填写个人描述!
  • 15 文章数
  • 4 关注者
GitHub代码搜索限制
2023-06-07
【WEB安全】SMTP注入
2023-06-06
【WEB安全】详解信息泄漏漏洞
2023-05-30
文章目录