自学内容网 自学内容网

PaoluGPT——千里挑一

开启题目:


点击“开始聊天”,发现已经跑路:


点击“查看聊天记录”,会发现一大堆聊天记录:

聊天记录在/list目录下


点两个具体的聊天记录,发现地址栏中URL发生变化,都是

/view?conversation_id=xxxx


让AI写个Javascript脚本,自动探寻网页上所有的子链接,检索内容含有关键词“flag”的子链接,写好之后在edge浏览器上执行:

// 获取所有带有 href 属性的 <a> 标签
const links = document.querySelectorAll('a[href]');

// 存储找到的包含“flag”的链接
const flagLinks = [];

// 遍历每个链接
links.forEach(link => {
  const href = link.getAttribute('href');
  if (href.includes('view')) {
    // 构建完整的子链接URL
    const subUrl = new URL(href, window.location.href).href;

    // 发送GET请求获取子页面内容
    fetch(subUrl, {
      headers: {
        'Authorization': 'Bearer 531:MEYCIQDHL9dv6rPhZXD7kTqsNQhOCMdkSDmQ9lwfWCGlJGX9WwIhAIRyevrdkoLnKaHDBDnUCADQ9Yt0R6nf5irm5hQwDTiI',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
      }
    })
      .then(response => {
        if (!response.ok) {
          throw new Error(`HTTP error: ${response.status}`);
        }
        return response.text();
      })
      .then(html => {
        const subDoc = new DOMParser().parseFromString(html, 'text/html');
        const textContent = subDoc.body.textContent || subDoc.body.innerText;
        if (textContent.toLowerCase().includes('flag')) {
          const title = link.textContent.trim() || '无标题';
          flagLinks.push({ title, subUrl });
          console.log(`找到包含'flag'的链接:标题: ${title}, 链接: ${subUrl}`);
        }
      })
      .catch(error => {
        console.error(`请求子链接失败: ${subUrl} - ${error.message}`);
      });
  }
});

// 打印找到的包含“flag”的链接
console.log(flagLinks);

成功找到flag


原文地址:https://blog.csdn.net/weixin_73049307/article/details/143782131

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!