首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

附加进程 到远程服务器中Docker容器内 调试

很多时候,我们在本地开发过程中程序运行很正常,但是发布到线上之后由于环境的原因,可能会有一些异常。通常我们会通过日志来分析问题,除了日志还有一种常用的调试手段就是:附加进程。...VS中的附加进程非常强大,目前提供了9种常用的附加方式。在当前.Net Core支持跨平台的大背景下,其中Linux环境和Linux Docker的附加显得尤为重要。...那么我们来看看如何附加到远程服务器中的Docker。...,取消勾选以下选项:启用“仅我的代码”要求源文件与原始版本完全匹配3.附加进程选择Docker(Linux容器),并点击查找,配置Linux服务器信息4.选择容器在列表中选择要附加的容器。...并点击附加,弹出选项中选择托管(.NET Core For Unix) 5.触发线上逻辑,确认是否能命中断点通过触发线上业务逻辑,可以看到已经命中了断点 附加进程到远程服务器中的Docker这种模式,可能用的不多

1.2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    C语言 进程

    进程 每个进程在内核中都有一个进程控制块(PCB)来维护进程相关的信息,Linux内核的进程控制块是task_struct结构体。进程id。系统中每个进程有唯一的id,在C语言中用pid_t类型表示。...内核根据父进程复制出一个子进程,父进程和子进程的PCB信息相同,用户态代码和数据也相同。因此,子进程现在的状态看起来和父进程一样,做完了初始化,刚调用了fork进入内核,还没有从内核返回。...是父进程先返回还是子进程先返回,还是这两个进程都等待,先去调度执行别的进程,这都不一定,取决于内核的调度算法。...任何进程在刚终止时都是僵尸进程,正常情况下,僵尸进程都立刻被父进程清理了。如果一个父进程终止,而它的子进程还存在(这些子进程或者仍在运行,或者已经是僵尸进程了),则这些子进程的父进程改为init进程。...进程间通信每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走

    1.2K10

    OGG 21c 远程捕获进程延迟问题处理

    远程捕获进程延迟问题处理 前面几天发布了一篇使用 OGG 21c 遇到的几个问题之后,居然在新的周一后又发现了一个与 OGG 相关的问题,那是什么问题呢?...说来也简单就是使用 OGG21c 在中间机配置好了远程捕获 EXTRACT 进程,将数据导入到目标端 19c 后,源端捕获进程有很大的延迟,按照这个延迟来看,本地的归档日志也都删除了,可这个捕获进程呢没有任何报错...--从数据库注册里去掉 ext3 unregister extract ext3 database --登录数据库 dblogin USERIDALIAS source_11g --注册 ext3 到数据库中...但记得之前测试环境单机 11g 用的 OGG21c 也是可以的,那么是因为我这环境是 RAC 的问题吗?是因为远程复制吗?苦思不得其解,久久不能找到答案。.../sqlpatch/21281961/postdeinstall.sql 打完补丁,重启捕获进程 ext3 打完补丁,重启进程后,捕获进程一个多小时的延迟,几秒内瞬间就没有了。

    64920

    远程Debug Java进程的方法

    原文地址 远程debug的意思是启动一个Java进程,启动一个debugger进程,将两者连接起来,利用debugger来debug Java进程。...利用JDPA我们除了能够在IDE开发的时候debug,也能够将IDE attach到一个生产环境上正在运行的Java进程做debug(事实上这两个场景在本质上是一样的)。...我们先ctrl+c把进程停止掉。 1)把项目导入到IDEA里,因为如果没有源码的话我们没有办法打断点 2)按照下面步骤新建一个Remote Run/Debug Configuration: ?...Host和Port的设定了被debug的Java进程的Host和Port,实际上这也告诉我们,远程Debug是通过网络进行的。...Command line arguments for remote JVM这个文本框你是不能修改的,它告诉了你如果要这个Java进程能够被远程Debug,那么必须添加这些参数才可以。

    2.3K20

    远程木马创建傀儡进程分析

    远程木马创建傀儡进程分析 点击链接,下载本实验项目以及相关工具,提取码:8189 一、实验目的 该样本具有一定的免杀性,分析该样本都用了什么技术,能达到免杀效果,所以本次实验目的如下: (...3、本程序涉及到UPX脱壳,手工脱壳后需要修改导入表,因为导入表在壳子里,我们把壳子脱掉了,导表表就没有了,需要将壳子程序的导入表赋值到脱壳后的程序中。...火绒剑里运行一下,了解样本行为,发现该样本创建傀儡进程B 将样本托拽到火绒剑运行,排除掉一些不关心的动作,比如打开注册表,获取键值等操作。...,我们需要将其文件偏移改为内存偏移,编辑后如下: 退出lordPE工具,将修复后的傀儡进程B重命名为C 4....复后的傀儡进程C有UPX,手工脱UPX壳,存为程序D 用PEiD打开修复后的傀儡进程C,发现有UPX壳。

    18710

    远程进程Shellcode注入调试技巧

    在病毒分析的过程中,时常会遇到很多病毒为了躲避杀软的检测,使用进程注入的方式,将shellcode注入到系统进程中执行,本文将介绍一些在遇到shellcode注入进程时所使用的调试技巧。...情形一:PE进程远程注入shellcode到其它进程 PE类文件在进行进程注入的时候,可能会注入一个PE文件,也有可能是注入一段shellcode,但注入的流程通常是一样的。...就是远程线程启动时的context(上下文)。...情形二:脚本病毒/宏病毒远程注入shellcode到其它进程 脚本病毒/宏病毒注入shellcode时所使用的函数与PE类略有不同,下面以一个宏病毒的分析过程为例来进行说明。...如果修改为0xCC,需要注意,应该把调试器的实时调试设置选成“附加前无需确认”,这样进程启动后才会自动附加到OD进行调试(记得将内存修改回原值,如果没有自动附加,就手动附加一下进程): ?

    1.7K21

    多进程服务器

    一、思路 先与客户端建立好连接, 每次监听到一个客户端之后,都需要产生一个子进程去处理这个连接,然后父进程继续去等待监听,唯一一个要注意的点就是要使用信号来监听子进程是否结束,从而对其进行回收,防止僵尸进程的产生...&opt, sizeof(opt)); (3)bind函数 bind(lfd, (struct sockaddr*)&ser_addr, sizeof(ser_addr));b这个函数主要目的就是将服务器的地址结构绑定到套接字...lfd上,所以开始要设置服务器的ser_addr:ser_addr.sin_family = AF_INET, ser_addr.sin_port = htons(8888);ser_addr.sin_addr.s_addr...监听到了客户端后,就要开始创建子进程来对这个监听进行处理;pid = fork() 3、子进程处理通信 因为子进程不需要监听连接,使用可以close(lfd);之后便可以进行通信处理 void do_work...sizeof(buf)); tcp.Write(cfd, buf, n); tcp.Write(STDOUT_FILENO, buf, n); } } 4、父进程回收子进程

    4.7K20

    Linux从程序到进程

    计算机如何执行进程呢?这是计算机运行的核心问题。即使已经编写好程序,但程序是死的。只有活的进程才能产出。我们已经从Linux进程基础中了解了进程。现在我们看一下从程序到进程的漫漫征程。...当然,还可以是C++,Java,Objective-C等等。选用C语言的原因是:它是为UNIX而生的语言。) main()函数中调用了inner()函数。...进程附加信息 除了上面的信息之外,每个进程还要包括一些进程附加信息,包括PID,PPID,PGID(参考Linux进程基础以及Linux进程关系)等,用来说明进程的身份、进程关系以及其它统计信息。...内核可以通过查看自己空间中的各个进程的附加信息就能知道进程的概况,而不用进入到进程自身的空间 (就好像我们可以通过门牌就可以知道房间的主人是谁一样,而不用打开房门)。...每个进程的附加信息中有位置专门用于保存接收到的信号(正如我们在Linux信号基础中所说的“信箱”)。

    1.5K90

    利用远程进程分叉转存Lsass凭据

    image.png 分叉远程进程 滥用Windows中有限的分叉功能的新方法。 如果你不分叉自己的进程,而是分叉一个远程进程....如果攻击者能够分叉一个远程进程,他们将能够深入了解目标进程,而不需要敏感的进程访问权 如PROCESS_VM_READ可以被反病毒软件监控。...当使用传统的NtCreateProcess(Ex)变体时,分叉一个远程进程是相对简单的。...通过在SectionHandle中传递NULL,在ParentProcess参数中传递目标进程的PROCESS_CREATE_PROCESS句柄,一个远程进程的分叉将被创建,攻击者将收到分叉进程的句柄。...LSASS通常是攻击者的目标,他们希望捕获当前机器的凭证 在典型的攻击中,像Mimikatz这样的恶意程序直接与受害者机器上的LSASS对接,然而,一个更隐蔽的选择是将LSASS的内存转储到攻击者机器上进行处理

    66910

    Nginx服务器的进程

    Nginx服务器的进程有3类:主进程、工作进程、缓存进程 (1)主进程 Nginx启动时运行的主要进程,主要功能是与外界通信和对内部其他进程进行管理 主要工作内容 1)读取配置文件,验证有效性和正确性...2)建立、绑定、关闭 socket 3)按照配置生成、管理、结束工作进程 4)接收指令,如 重启、升级、退出 5)不中断服务,平滑重启、升级,升级失败的回滚处理 6)开启日志文件,获取文件描述符 (2)...工作进程 由主进程生成,生成数量由配置文件指定,工作进程生存于主进程的整个生命周期 主要工作内容 1)接收请求 2)将请求依次送入各个功能模块进行过滤处理 3)IO调用,获取响应数据 4)与后端服务器通信...,接收后端服务器处理结果 5)数据缓存,访问缓存索引、查询、调用缓存数据 6)发送请求结果 7)接收主进程指令,如 重启、升级、退出 (3)缓存进程 缓存进程有两类 1)缓存索引重建进程 nginx启动后由主进程生成...,在缓存元数据重建完成后就自动退出 该进程启动后,对缓存文件的目录结构扫描,在内存中建立索引元数据库 2)缓存索引管理进程 生存于主进程的整个生命周期 负责在索引元数据更新完成后,对元数据是否过期进行判断

    4.4K40

    python 进程间通信(四) -- 共享内存与服务器进程

    但 Python 的 multiprocessing 包中仍然提供了两种方法让你可以在多进程环境下共享数据: 共享内存 服务器进程 3....系统中的 bool 类型 3.2. lock 参数 使用共享数据,就必然涉及到竞争条件的抢夺,普通的赋值、加减乘除都是原子性的,但有时我们需要执行一些并不是原子性的操作,此时就需要加锁,例如先比较后操作...服务器进程 — server process python 提供了一种十分类似共享内存的数据共享机制 — 服务器进程。...通过 multiprocessing 包中的 Manager 类可以构造一个服务器进程对象,他支持用于进程间共享的多种数据类型: list dict Namespace Lock RLock Semaphore...BoundedSemaphore Condition Event Barrier Queue Value Array 一旦创建,对象的使用与原生类型的用法是完全相同的,因此相比于共享内存,服务器进程的使用更为简单和灵活

    4.4K20

    服务器被入侵,异常进程无法杀掉,随机进程名

    故事情节: 有一天在聚餐中,我有一个朋友和我说他的服务器上有有个异常的进程他一直在占满CPU在运行,我在一顿谦虚之后答应了他,有空登录上他的服务器看一下具体情况。...就是以上三张图,在proc目录中的exe指向的文件已被删除,我看到这里,我好奇这个进程肯定是被隐藏掉了。这时,我急中生智跟这位朋友要了root账号密码。...登录服务器用top命令一看,发现一个奇怪的进程在运行,我使用kill命令将其杀后,等了十来分钟后,发现没有被启动,这时我和这位朋友说干掉了,他问我是不是kill掉了,我说嗯,他又补充到,这个进程杀掉过段时间会起来的...没过多久,我又看了一下,发现这个进程换了个名字又启动了。...还干满了CPU,就在这时,我在研究这个进程运行文件的时候发现: 这个进程会连到一个韩国的服务器上,我访问这个IP发现是一个正常的网站,没有异常情况。

    11.3K40
    领券