首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >PC应用程序渗透测试

PC应用程序渗透测试

作者头像
OneTS安全团队
发布2025-11-12 16:27:16
发布2025-11-12 16:27:16
1050
举报
文章被收录于专栏:OneTS安全团队OneTS安全团队

声明

本文属于OneTS安全团队成员Gal0nYu的原创文章,转载请声明出处!本文章仅用于学习交流使用,因利用此文信息而造成的任何直接或间接的后果及损失,均由使用者本人负责,OneTS安全团队及文章作者不为此承担任何责任。

一、DVTA靶场搭建

虚拟机windows7安装Sql server 2008和ssms,然后创建数据库DVTA并创建以下表

代码语言:javascript
复制
CREATE TABLE "users" (
     "id" INT IDENTITY(0,1) NOT NULL,
     "username" VARCHAR(100) NOT NULL,
     "password" VARCHAR(100) NOT NULL,
     "email" VARCHAR(100) NULL DEFAULT NULL,
     "isadmin" INT NULL DEFAULT '0',
     PRIMARY KEY ("id")
 )

 INSERT INTO dbo.users (username, password, email, isadmin)
 VALUES
 ('admin','admin123','admin@damnvulnerablethickclientapp.com',1),
 ('rebecca','rebecca','rebecca@test.com',0),
 ('onets','onets','onets123@163.com',0),
 ('raymond','raymond','raymond@test.com',0);

  CREATE TABLE "expenses" (
     "id" INT IDENTITY(0,1) NOT NULL,
     "email" VARCHAR(100) NOT NULL,
     "item" VARCHAR(100) NOT NULL,
     "price" VARCHAR(100) NOT NULL,
     "date" VARCHAR(100) NOT NULL,
     "time" VARCHAR(100) NULL DEFAULT NULL,
     PRIMARY KEY ("id")
 )

添加ftp站点

ip为192.168.56.110

下载DVTA靶场:https://github.com/srini0x00/dvta

修改DVTA.exe.Config中的ip为192.168.56.110

使用admin/OneTs123登录,配置成功

可以参考文章:https://cn-sec.com/archives/2671615.html

二、DVTA靶场渗透测试

1、Dvta靶场有以下漏洞

不安全的本地数据存储 不安全的日志记录 弱加密 缺少代码混淆 公开的解密逻辑 SQL 注入 CSV 注入 内存中的敏感数据 DLL 劫持 传输中的明文数据 使用逆向工程绕过客户端保护

2、信息收集

使用cff explorer来查看客户端信息

使用PEID是否加壳

3、不安全的本地数据存储

注册表内存在敏感数据

利用regshot比较客户端运行前后注册表差别

泄露账号密码

本地静态文件信息泄露

4、调试日志中存在敏感数据

DVTA.exe > test.log

泄露账号密码

5、Sql注入

admin’ or ‘1’=’1

成功登录

6、内存中存在敏感数据

使用Process Hacker双击选中DVTA,点击Memory->Strings

泄露账号密码

7、传输中的明文数据

客户端流量分析

如果是HTTP流量,可通过Proxifier将流量转发给Burp Suite

如果是TCP流量,利用Echo Mirage或者TCP View,再配合WireShark去捕获流量

用Echo Mirage捕获ftp流量

可以发现敏感数据

TCPView查看服务器地址

Wireshark查看流量,存在sql语句明文传输

8、Dll劫持

利用process hacker搜索DVTA加载的dll

msfvenom -p windows/exec CMD=calc.exe -f dll -o DWrite.dll OneTS=Test

替换DWrite.dll,成功弹出计算机

9、使用逆向工程绕过客户端保护

用dnSpy来反编译DVTA,修改Login类中的if判断语句if (isadmin != 1),从而让普通用户可以用管理员的身份登录

10、CSV 注入

添加price的值为=1+2

点击”Backup Data to Excel”保存,打开保存的expenses.csv

发现price的值变为3

三、其他漏洞测试项

1、远程线程注入

使用远程线程注入工具进行测试

成功注入

攻击者可以通过对客户端进行远程线程注入来达到攻击目的

2、消息 Hook

使用 AFLK 进行键盘消息的劫持

SetWindowsHookEx 是 Windows 提供的消息钩子函数,恶意软件可以通过这个函数进行全局消息钩取以得到目标敏感信息

3、程序可篡改

修改数据之前计算程序的 Hash 值和使用010 editor查看二进制数据

使用010 editor修改其二进制数据之后再次进行 Hash 值检测,查看程序是否可以运行

DVTA无法篡改

4、程序可调试

使用 OllyDBG对程序进行动态逆向分析

程序可以进行调试的情况下,容易让攻击者进一步了解其函数逻辑关系,进行进一步攻击

5、编译选项检测

利用PEGetSecurity工具检测得到报告

Get-PESecurity -directory D:\WEB\CS客户端测试工具\DVTA\DVTA\bin\Release\ -recursive | Export-CSV file.csv

Windows 提供大量机制帮助系统、软件抵抗外部攻击。如果开启相关安全编译选项,则是安全的

6、签名检测

使用数字签名检测工具进行数字签名检测

程序进行可信电子证书签名,是用于辨别程序或者第三方库是否可信的重要途经之一,同时有效防止程序篡改或者被替换

7、静态分析

通过静态分析代码中是否存在敏感信息和危险函数

8、Xss

案例:

Foxmail邮件客户端跨站脚本攻击漏洞(CNVD-2025-06036)

https://blog.csdn.net/weixin_43172311/article/details/147189744

代码语言:javascript
复制
POC:
<html>
<body>
  <!-- 利用图片加载失败触发恶意代码 -->
  <img src="x" onerror="
    const fs = require('fs');
    fs.writeFileSync('C:\\malware.exe', getRemotePayload("onets"));
    executeSilently('C:\\malware.exe');
  ">
</body>
</html>

9、命令执行

案例参考文章:

https://xz.aliyun.com/news/313

https://youngrichog.github.io/2021/01/05/Electron%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%BC%8F%E6%B4%9E%E6%8C%96%E6%8E%98/

https://cn-sec.com/archives/41519.html

10、客户端溢出漏洞

参考文章:

https://nosec.org/home/detail/2355.html

https://qkl.seebug.org/vuldb/ssvid-4085

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-11-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OneTS安全团队 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档