分类目录归档:代码

Atom Walkthrough

HackmyVm的靶机Atom,下载地址是https://hackmyvm.eu/machines/machine.php?vm=Atom

正常nmap扫描,只能找到22端口,非常蹊跷。卡在第一步就非常郁闷了,cromiphi制作的靶机总是有点小坑的!

└─$ nmap -sV -sC -Pn  -oN port.log 192.168.56.118  
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-07-22 20:20 CST
Nmap scan report for 192.168.56.118
Host is up (0.0026s latency).
Not shown: 999 closed tcp ports (conn-refused)
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 9.2p1 Debian 2+deb12u2 (protocol 2.0)
| ssh-hostkey: 
|   256 e7:ce:f2:f6:5d:a7:47:5a:16:2f:90:07:07:33:4e:a9 (ECDSA)
|_  256 09:db:b7:e8:ee:d4:52:b8:49:c3:cc:29:a5:6e:07:35 (ED25519)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

继续阅读

整了个鸿蒙官方文档的下载器

HarmonyOs的官方开发文档非常有价值,但有时不能联网,所以写了个小脚本,批量下载并打包成epub。python代码,命令行界面使用PyInquirer实现,用pygments库实现代码高亮。
主界面如下:

***************************************************
HarmonyOs Development Guides/References Downloader
功能:下载HarmonyOs的官方文档并生成epub
版本:3.0
时间:2024-07-18
****************************************************
? 主功能菜单,选择你的操作:  (Use arrow keys)
 ❯  1) 下载应用开发文档(3.1/4.0,已归档)
    2) 下载API参考文档(3.1/4.0,已归档)
    3) 下载应用开发文档(next)
    4) 下载API参考文档(next)
    5) 下载AGC文档
    6) 下载设计指南
    7) 退出程序

继续阅读

修改python的amzqr库,使其支持中文编码

amzqr是一个非常方便的文字信息生成二维码的python库,美中不足是原作者代码不支持中文。根据github上提交的pr,记录一下支持中文的修改方法。

1. 修改amzqr.py

    #if not isinstance(words, str) or any(i not in supported_chars for i in words):
    #不对中文字符进行检测
    if not isinstance(words, str):

继续阅读

Kali对AWUS1900网卡的支持

AWUS1900性能很强,但对Kali的支持并不太好,不能免驱。
驱动程序安装如下:

apt install linux-headers-$(uname -r)
apt install realtek-rtl8814au-dkms

一定要安装头文件,直接安装realtek驱动没用。然后需要重新启动linux才能进入monitor模式。但实测效果还不如其它AWUS卡。

绕过PyQt6的一些小坑

直接进入干货,供遇到相同情况的小伙伴参考。

一、pyuic6导出designer设计的窗体,py代码不完全兼容PyQt6

用Qt Designer设计完界面后,要用pyuic6导出为py文件,再在代码中调用,但直接调用会报错,原因是部分代码(主要是窗体对齐)导出的还是PyQt5的格式。
如导出为:

QtCore.Qt.AlignHCenter

在PyQt6下应该是:

QtCore.Qt.AlignmentFlag.AlignHCenter

需要将所有的对齐代码修改过来。可以用脚本自动处理(在windows下时可用wsl执行)。

awk '{sub(/Qt.AlignH/,"Qt.AlignmentFlag.AlignH");sub(/Qt.AlignL/,"Qt.AlignmentFlag.AlignL
");sub(/Qt.AlignB/,"Qt.AlignmentFlag.AlignB");sub(/Qt.AlignV/,"Qt.AlignmentFlag.AlignV");sub(/Qt.AlignT/,"Qt.AlignmentFlag.AlignT");sub(/Qt.AlignR/,"Qt.AlignmentFlag.AlignR"
);print $0}'

继续阅读

部署使用WebGoat6网络漏洞测试平台

什么是WebGoat?引用一下OWASP官方介绍:

WebGoat是OWASP组织研制出的用于进行web漏洞实验的应用平台,用来说明web应用中存在的安全漏洞。WebGoat运行在带有java虚拟机的平台之上,当前提供的训练课程有30多个,其中包括:跨站点脚本攻击(XSS)、访问控制、线程安全、操作隐藏字段、操纵参数、弱会话cookie、SQL盲注、数字型SQL注入、字符串型SQL注入、web服务、Open Authentication失效、危险的HTML注释等等。WebGoat提供了一系列web安全学习的教程,某些课程也给出了视频演示,指导用户利用这些漏洞进行攻击。

WebGoat多年来一直是版本5.4,今年升级为版本6。主要是基于新的框架和界面对各项课程进行了重新集成,项目主页是 https://github.com/WebGoat/WebGoat

先来看一下两个版本的界面:

实际使用中,新版本不仅界面漂亮,关键是hints、solutions等选项的内容更加完善,便于学习。使用WebGoat有两种方法,一是直接下载运行包WebGoat-6.0-exec-war.jar,然后:

java -jar WebGoat-6.0-exec-war.jar

随后就可以在本机浏览器里使用了:http://localhost:8080/WebGoat

但是个人更倾向于另一种方法,就是下载源码包,通过maven部署使用。好处是可以完成一些需要修改源代码的课程,而且不限于本机运行。但全新安装tomcat、maven、java等必需环境,而且把参数设置好非常麻烦,所以直接在OWASP的Broken Web APP虚拟机上使用是最方便的,因为环境都已经构建好了。具体步骤如下:

下载得到WebGoat-Master.tar.gz,复制到/var/www里解压,得到WebGoat-master项目目录;
因为虚拟机启动时tomcat已经运行了,所以要先停止服务,再用mvn启动。将几个过程写成批处理:

    cat >~/run_webgoat6.sh<<EOF
    /etc/init.d/tomcat6 stop
    cd /var/www/WebGoat-master
    mvn clean tomcat:run-war
    EOF

这样,WebGoat5.4和6两个版本就是虚拟机里共存了。开机以后不运行run_webgoat6.sh脚本,则启动webgoat5.4,运行了以后再从主界面进入就可以play了!

给hostapd打补丁, 解决rt3070网卡建立软AP时无法握手的问题

折磨了自己一周多,供遇到同样问题的朋友们参考。

一般有两种方法在kali linux下建立软AP,一是使用airbase-ng,优点是运行方便,适应网卡的范围比较广,比如常见的rtl8187的网卡,局限是只能建立OPN和WEP加密的,不支持WPA和WPA2加密。二是通过hostapd,支持OPN、WEP、WPA、WPA2等多种加密方式,但支持的网卡有限。

之前我手上有rtl8187的网卡,一直把它当作神器,后来发现完全是被误导了,不仅信号一般,且支持的模式相当有限,最关键是不支持hostapd建立WPA加密的AP。用iw list命令可以看到rtl8187网卡支持的模式:

iw list
…
Supported interface modes:
     * IBSS
     * managed
     * monitor

一阵google后,在某电商那淘了一块rt3070芯片的,价格便宜、童叟无欺,支持b/g/n(rtl8187仅支持b/g),标配双6dBi增益天线,iw list看一下,瞬间发现这泥马才是真正的神器啊!(强烈推荐!!)

Supported interface modes:
     * IBSS
     * managed
     * AP
     * AP/VLAN
     * WDS
     * monitor
     * mesh point

继续阅读

一个简单的脚本,实现自动执行MITM攻击(更新0.2)

这几天折腾MITM攻击,反复输入同样的命令很烦人,参照国外论坛一个脚本,结合自己的习惯修改了一下,将几个常用命令写到一个文件里,实现相对自动的操作。

脚本很简单,简单说一下功能,内容就不多注释了。

1)设置监听网卡、端口、目标IP;

2)设置tcpxtract、driftnet、urlsnarf等辅助工具的启用;

3)自动运行sslstrip和ettercap,并输出数据到/tmp/(用户定义)目录中供后期分析;

4)监听结束后调用etterlog显示数据,并调用wireshark进行抓包分析;

5)简单的输入判定;

6)可以在命令行中输入一组或两组IP,重复运行时可通过bash log获取上次输入,不用每次运行都要重复输入IP。(更新)

代码如下:

继续阅读