近日,AI的浪潮对各个产业发起了巨大的冲击,网络安全也不例外,但目前大多数的结合都是建议式的,比如你像deepseek提问“如何通关DVWA的low难度的Command Injection模块关卡?”(如下图)
AI只会给你一些通关的建议,具体的通关操作还是需要你手动去完成的。
而我们今天要介绍的,则是解放你的双手,利用几条通俗易懂的命令,就操纵AI来自动化完成你的所有请求。
我们先来通过一个视频看一下最终实现的效果:(本演示视频删除了等待AI响应的时间,实际整个流程走完花了十多分钟)
关于这一系列操作,我们给AI的提示如下:
1.连接http://127.0.0.1:8000/index.php2.这是一个DVWA的靶机,使用默认密码登录3.进入DVWA Security,将安全级别设为low,然后提交4.进入Command Injection模块,利用漏洞执行whoami命令
我们可以看到,我们并没有给AI非常具体的命令,但AI依然可以成功执行这些操作:
•比如我们只给出了“使用默认密码登录”的命令,却并没有给出具体的默认用户名和密码;•再比如我们只提示“利用漏洞执行whoami命令”,却并没有给出具体的漏洞利用POC;
具体的代码其实很简单:
import asyncio
import os
from langchain_openai import ChatOpenAI
from pydantic import SecretStr
from browser_use import Agent, Browser
from aioconsole import ainput
api_key = "你的Deepseek的API的密钥"
if not api_key:
raise ValueError('DEEPSEEK_API_KEY is not set')
async def run_pentest():
browser = Browser()
llm=ChatOpenAI(
base_url='https://api.deepseek.com/v1',
model='deepseek-chat',
api_key=SecretStr(api_key))
async with await browser.new_context() as context:
agent = Agent(
task=(
'1. 连接http://127.0.0.1:8000/index.php '
'2. 这是一个DVWA的靶机,使用默认密码登录'
'3. 进入DVWA Security,将安全级别设为low,然后提交'
'4. 进入Command Injection模块,利用漏洞执行whoami命令'
),
llm=llm,
use_vision=False,
browser_context=context,
)
await agent.run()
while True:
user_input = input("请输入任务内容(输入'q'退出): ")
if user_input.lower() == 'q':
print("程序已退出")
break
agent.add_new_task(user_input)
await agent.run()
if __name__ == '__main__':
asyncio.run(run_pentest())
利用时只有两处需要改变:
1.api_key = "你的Deepseek的API的密钥"
修改为你的API密钥2.task=
后输入自己需要AI执行的任务
知识星球目前新人优惠,欢迎加入:
本文参考:https://github.com/SunZhimin2021/AIPentest/blob/main/Tools/interactivewebpentest.py
原文始发于微信公众号(天翁安全):无需手动操作!deepseek自动通关DVWA靶场
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论