Injected Evil

SSRF漏洞实战:从原理到绕过与内网探测全解析 SSRF(服务器端请求伪造)是一种常见的安全漏洞,其核心原理在于攻击者能够诱使服务器向内部或外部地址发起非预期的请求。理解SSRF需要从Web应用的基本请求机制入手,当应用程序在处理用户提供的URL参数时,若缺乏严格的校验,便可能将服务器变为攻击内网的跳板。这一漏洞的技术价值在于它能够绕过网络边界防护,直接访问受信任的内部服务,从而造成严重的安全风险。在实际应用场景中,SSRF常出现在远程资源加载、数据转码、Webhook测试等功能点。通过利用IP地址的多种表示形式、URL解析差异以及非HTTP协议(如fi 阅读详情
By: evilphreak

 

admin note: The author of this article apologizes for bad english. Most people who read rootkit.com understand that many of the articles are translated from native language - no problems. Staff took some liberty in attempting to rewrite a little bit of it.

In this article I wish to describe techniques which will allow bypass of the majority of modern proactive protection and firewalls. This idea is not new and has travelled all over enough, but I present something new that has not appeared.
Some time was invested. The material is practical and only a theoretical minimum. Certainly, techniques like this are used some of the time in private utilities. But until recently these techniques have not been brought together and presented.

Much has been made to me by other researchers. For it, it is necessary to tell it thanks. For their boldness to lay out on public opinion the
unique methods. The bypass described here did not appear anywhere,
but is based on some known techniques. We will start.



The theory
======
What is a protection bypass? It is possibility to carry out action which are forbidden by protection. Here there are no rules and laws, there is simply problem to achieve result. There is a private war between authors of firewalls and proactive protection. Certainly, this is war. The presented material is only applicable to Windows NT OS though theoretical principles can be used anywhere. This is a short description of this model.
On the victim computer is a firewall which has ‘proactive protection’. The behavior-blocking firewall is defined by a set of rules. Rules are two kinds - global rules and rules for applications. Generally speaking, at the heart of bypass of any protection are 1) assumptions, 2) exceptions, and 3) errors made by developers of protection. These three things give bypass practically to any protection. And it should be known there has still not been a protection which has not broken.
We will apply this theory to personal firewalls and use three points set forth above. If search is successful, we have won.

To bypass a personal firewall it is necessary to use existing rules, or to destroy the model of rules, or to use an error in the ON protection. With errors in ON most difficult. First they are not universal, secondly they are difficult for finding and using. Most the best bypass uses a minimum of undocumented functions and structures and is applicable to all protection, i.e. is universal. I will not give such bypass Therefore we will use
non-universal undocumented techniques. We will return to
rules firewall – if we break them in ring0, the protection comes to an end. To use existing rules in this purpose we use general injection techniques that have been known for a long time. I.e. code execution in a context of the entrusted application. So, if we somehow will force entrusted application
Internet Explorer to execute our code, we can send data bypassing protection.
In general universally it is necessary брять a browser by default and it to
use as a victim of execution of our code. And it is final in the injected code we exploit pre-existing rules which are available in firewall rather Internet Explorer
(for example, proceeding on 80 port). Now things are easy - to execute inject thus remained not noticed for proactive protection which run to close all methods
which are used for inject. Now we will describe concrete attacks which are applicable for concrete firewalls.

The general theory of injection
=================
Inject always consists their two stages:
1) Writing code in address space process-victim
2) Execute written code

These stages can be any kind - obvious or indirect and to use any accessible
techniques. If each of stages is not found out by protection, That can be carried out inject.
Thus each stage is obligatory, without any of them inject it will not be carried out.

CreateProcess
=============
Algorithm as follows: hooking in our the process from NTDLL - ZwCreateSection,
ZwQuerySection also we create process by means of CreateProcess. Before return from
CreateProcess are caused hooked ZwCreateSection/ZwQuerySection.
Here it is necessary to look inside mechanism process creations - when process, one of stages - opening of a file of an EXE-file and its displaying on address
space of created process is created. Projection creation becomes function
ZwCreateSection. In an interceptor of function ZwCreateSection it is possible
to write To this moment any data by means of the same KERNEL32!WriteProcessMemory
and thus proactive protection will be silent. Further after projection creation,
code CreateProcess receives an input point (Entry Point) new process (i.e. its primary stream)
by means of function ZwQuerySection. Interceptor ZwQuerySection returns an input
point, but not real - taken of optional header - and false - namely the address of
our code which is necessary for executing. I.e. In the image when function CreateProcess
will finish work will be will be executed our code which will send data where it
is necessary in a context of the entrusted application.

Well. Here there are some moments to which I would like to pay attention.
In output agent ZwCreateSection not always it is possible to write by means of WriteProcessMemory, it is found out by some protection. In this case it is
possible to intercept as well WriteProcessMemory which also is caused inside CreateProcess. When process in it is created variable environments of parental
process if obviously variable environments are not specified are written. Here in this place intercepting WriteProcessMemory it is possible to write down the
shellcode. Too most with PEB. Even easier simply to specify in parametre - lpEnvironment the address of ours shellcode. Well. But it too not always works.
There is a way of record which while works always - if it is possible to create process successfully. Algorithm of record the following:

1) Call CreateProcess with flag CREATE_SUSPENDED
2) file Creation, record shellcode in a file
3) Creation of a projection of a file with shellcode by means of NtCreateSection
4) file Displaying on address space of the suspended process by means of NtCreateSection

Way though also known, but it is far all authors of protection it while have covered.
Many protection block creation of network process, and some in general process creation. But not all. For example, known Kaspersky Internet Security
7.0.0.125 gives in on this attack. Also on this attack early versions Agnitum Outpost (and Outpost 2008 if it will be possible to create successfully process)
give in. Well and a heap overseas firewalls such as Norton Internet Security 2008, Bit Defender Total Security 2008, Zone Alarm 7 on average options
(on a maximum blocks), Agava Firewall, Ashampoo Firewall, AhnLab V3 Internet Security 2007, Black ICE PC Protection 3.6, Look'n'Stop 2.06, Normal Personal Firewall 1.4,
Visnetic Firewall 3.0 etc. etc.

Let's pass to practical realisation of the given method. The browser is by default received
By means of access to a key by default in разедел "http/shell/open/command":

      lea ecx, [hKey]
      push ecx
      push KEY_READ
      push 0
      lea ecx, [SubKey]
      push ecx
      push HKEY_CLASSES_ROOT
      call RegOpenKeyEx

      lea ecx, [cbData]
      push ecx
      lea ecx, [Buffer]
      push ecx
      push NULL
      push NULL
      push NULL
      push [hKey]
      call RegQueryValueEx


After execution of the given code in buffer there will be a way to a browser by
default. Further we create process in suspended condition:


      lea eax, [pi]
      push eax
      lea eax, [si]
      push eax
      push NULL
      push NULL
      push CREATE_SUSPENDED
      push 0
      push NULL
      push NULL
      lea eax, [Buffer]
      push eax
      push NULL
      call CreateProcess


Further we create a projection of a file and it is projected it on address space
of the created process:


      push [hFile]
      push 0x8000000; SEC_COMMIT
      push PAGE_EXECUTE_READWRITE
      push NULL
      push NULL
      push SECTION_ALL_ACCESS
      lea eax, [hSection]
      push eax
      call NtCreateSection

      push PAGE_EXECUTE_READWRITE
      push 0
      push 1; ViewShare
      mov [ViewSize], 0
      lea ecx, [ViewSize]
      push ecx
      push NULL
      push 0
      push 0
      push [ebx+FreeBaseAddress-NormalCodeStart]
      pop [BaseAddress]
      lea ecx, [BaseAddress]
      push ecx
      push [pi + PROCESS_INFORMATION.hProcess]
      push [hSection]
      call NtMapViewOfSection


Here the problem comes to light. To what mapping shellcode address. After all already
during this moment we should change an input point to the address of ours shellcode (before return from CreateProcess in interceptor NtQuerySection). Let
it will be preliminary chosen address - a constant which under tests does not clash with available projections. But it will be obvious not stably since
conflicts can be and it is necessary to provide their absence. Therefore we do as follows. First time we cause CreateProcess with flag CREATE_SUSPENDED without
hook NtCreateSecion/NtQuerySection, then we do a projection to the address which will be chosen by system and we remember it. After that we destroy process.
Further we create process already with hooks the necessary functions, but already knowing the projection address. After process creation we do a
projection to already known address. Т.о. We do the test of the conflict for the given system. It should minimise coincidence of addresses of a
projection of ours shellcode and other memory allocated for the given moment. After this it is possible to consider bypass ended. It is necessary to renew only
performance of a primary stream (since we created process at which a primary stream is in the suspended condition) further:


      push [pi + PROCESS_INFORMATION.hThread]
      call ResumeThread


NtQueueApcThread
================
bypass is based on a call of this function almost all existing now proactive protection
and firewalls, what powerful they would not seem. Here algorithm of bypass:

1) we Create DLL with a name coinciding last letters with DLL which is in import SVCHOST.EXE,
for example "ERNEL32.DLL". In DLL should be shellcode for execution in context SVCHOST.EXE (this application in rules of all firewalls can show
also activity as well as Internet Explorer).

2) we Search in address space of process SVCHOST.EXE a line "ERNEL32.DLL". It is possible
to do it by scanning by a call of function ReadProcessMemory (for this purpose preliminary it is necessary to open SVCHOST - OpenProcess (PROCESS_VM_READ)).
Other and better way of search of a line - mapping file SVCHOST.EXE to itself in address space - and to find in the table of import a line "ERNEL32.32".
Putting the relative address of a line with the base address of the module by default (ImageBase in optional header) we receive the address of the
necessary line.

3) we Touch streams of process SVCHOST.EXE and we do a call for each of them NtQueueApcThread.
This function adds to stream APC - a call of asynchronous procedure. But function has a restriction - procedure is carried out only in a case
if the stream has passed in mode Alartable. This fact causes a choice of process SVCHOST.EXE as a victim of execution shellcode. At research it became clear,
that in all versions Windows 2000/XP process SVCHOST.EXE has Alertable-streams and thus SVCHOST.EXE is the entrusted application with possible
network activity, that obviously grants the right to choose it as a victim. Also need to tell, that process SVCHOST.EXE exists in system always, otherwise OS
gets in BSOD (if to kill one of SVCHOST.EXE). Here a prototype of function NtQueueApcThread:

proc NtQueueApcThread hThread, FunctionAddress, Par1, Par2, Par3

Function adds in turn of asynchronous procedures new asynchronous procedure with
convention call is STDCALL and with transfer of three parametres Par1, Par2, Par3. Interestingly, but there is a function which is very exact to us approaches
and also accepts three parametres - LoadLibraryEx. Т.о. We simply load DLL into address space of process SVCHOST.EXE.

4) From most DLL it is impossible to do something, since this detection by the control of
components. Therefore that all of us it is done in DLLMain it - it is copied shellcode from the body, and it is kept in a file with known name TID and shellcode
address. Further after done actions DLL it is necessary to remove.

5) we Open a file created inside DllMain - and we put in turn of a known stream (it TID it is written
down in a file) the address of procedure which also is known. After that bypass is finished.

This bypass overcomes already both Comodo Firewall 2.4 and Agnitum Outpost 2008 and all protection
named in the previous section. Remained thus are live Jetico and Tiny - about bypass of these
protection I will speak here nothing since it is separate conversation. Zone Alarm 7 in a paranoid
mode catches this kind of bypass - namely does not allow to open a stream for a parcel in
it APC, but for it bypass which I will describe more low has been made separate.

Zone Alarm
==========
At ZoneAlarm special model - Trusted Application. If to execute something in context
Super Trusted of appendices ZA will not pay to this attention. One of such Super Trusted appendices is EXPLORER.EXE. At ZA special model of protection - she does
not suffer to intercept a heap of functions in SDT concerning streams and processes - it simply does not allow to open process and a stream with kinds of
access which can lead to safety infringement. I.e. if to open process or a stream ZA will swear. But the error which allows to open process all the same
has been found. Here algorithm:

1) we Open process with rights DUP_HANDLE is ZA allows.

2) we List descriptors EXPLORER.EXE in search of a descriptor of one of streams EXPLORER.EXE
in it. We look the rights for a descriptor - if they are maximum, we do call DuplicateHandle.
I.e. We receive a descriptor of a stream with the maximum privileges.

3) Now it is possible to make inject. Transfer control we can by means of function SetThreadContext,
the descriptor of a stream at us is. But that in process to write down data it is necessary used
the separate technics which is popular. About it in following point.

4) At transfer of descriptors we receive a port descriptor. At EXPLORER.EXE in all versions
there is a port. After reception of a descriptor of port we receive his name. After that call
NtConnectPort and section creation in which is we shellcode a projection of a file with
shellcode in the magic image it will appear in address space of process EXPLORER.EXE.

5) It is used SetThreadContext for transfer of management to ours shellcode.

6) Since on behalf of EXPLORER.EXE it is possible to do different system things (but it is
impossible to show network activity) without fear of alarm ZA we use a method with name
CreateProcess described above for definitive bypass ZA on paranoid options.

It is visible, that bypass is based what probably all the same to receive a descriptor
of a stream without detection ZA. Thus to us has carried, that process EXPLORER has in itself the descriptors of streams with maximum privileges,
and also has port, connection to which allows to write down data shellcode in address space of process-victim using earlier publicly an accessible method.
At research ZA also it was revealed, that ZA allows to open process СTFMON.EXE with the maximum privileges without the prevention of the user. It is the fact also
it can easily be used for bypass ZA. But CTFMON.ExE it is not always started (though and it is very frequent - itself Windows registers it in automatic loading
at installation), and has appeared only in Windows XP, therefore this way is not so universal (cannot be used on Windows 2000) though can will be applied with
success in Windows XP. Also on Windows XP SP2 it was revealed, that process EXPLORER.EXE has the descriptor with the maximum privileges, after its
reception probably to do with process any manipulations. But after the further tests it was revealed, that it is error Service Pack 2, and on Service Pack 1
this defect is not found out as well as on usual Windows XP RTM.

POC will not be - burn in a hell a script kiddies!

Greets to Ms-Rem, EP_XOFF, Tyler Durden, deadbody, ntldr

FEEBACK
=======
mail: evilphreak.blog.ru
web: evil_phreak@mail.ru
 
Host头攻击漏洞:从原理到实战检测与修复指南 HTTP协议中的Host请求头是Web通信的基础组件,用于指定客户端访问的服务器域名和端口,尤其在虚拟主机环境中至关重要。其工作原理是服务器根据Host头的值将请求路由到对应的网站或应用。然而,当应用程序过度信任客户端可篡改的Host头值时,便产生了安全风险,攻击者可利用此漏洞实施密码重置毒化、Web缓存投毒等攻击,危害极大。这种漏洞的防御价值在于它触及了Web安全的信任边界核心,是构建纵深防御体系的关键一环。在实际的工程实践中,无论是开发Spring Boot、Django应用,还是运维Nginx集群,都 阅读详情

相关推荐

CRLF注入漏洞:从HTTP协议基础到实战攻防与防御方案

在Web安全领域,输入验证与输出编码是保障应用安全的核心基础。HTTP协议作为Web通信的基石,其报文结构严格依赖回车(CR,`\r`)和换行(LF,`\n`)字符作为分隔符。攻击者通过向用户输入中注入CRLF序列,可篡改HTTP响应头,实现响应拆分、会话劫持或缓存投毒,从而引发严重的安全风险。这种漏洞常出现在重定向参数、Cookie设置点等将用户输入反射至HTTP头部的场景。理解其原理有助于开发者在设计重定向、文件下载等功能时,严格过滤`\r`和`\n`字符,并采用白名单验证等安全编码实践,从根本上杜绝C

weixin_33994429的博客 336

HTTP请求头安全攻防:从SSRF、CRLF注入到代理头滥用实战解析

HTTP协议作为Web通信的基石,其请求头不仅是客户端与服务器交换元数据的载体,更是定义信任边界和安全模型的关键环节。从原理上看,请求头在HTTP/1.1的明文传输到HTTP/2的二进制分帧演进中,其解析和处理方式的差异直接影响安全机制的有效性。在技术价值层面,深入理解请求头的分类(如事实性头、代理头、身份头)及其信任假设,是构建纵深防御体系的前提。应用场景上,无论是常见的Web应用、API接口,还是云原生和Serverless环境,请求头都是渗透测试中寻找逻辑缺陷、配置错误的核心切入点。例如,攻击者常利用

weixin_30619101的博客 441

Tomcat Valve内存马攻防解析:从容器级后门到横向渗透实战

在Java Web安全领域,内存马是一种无文件落地、驻留于服务器内存中的恶意后门,其核心原理是利用中间件或应用容器的运行时机制动态注入恶意组件。以Tomcat为例,其请求处理流水线采用责任链模式,Valve作为容器级别的“阀门”,可拦截并处理流经该容器的所有HTTP请求,这为攻击者提供了从应用层突破到容器层的技术路径。相较于传统的Filter内存马,Valve内存马实现了从单应用到跨应用的横向渗透能力,技术价值在于其隐蔽性更强、影响范围更广,能绕过常规基于文件特征和URL路径的检测。在应用场景上,此类技术常

weixin_30263073的博客 394

Windows的进程创建

漫谈兼容内核之十七:再谈Windows的进程创建毛德操  在漫谈之十中。我根据“Microsoft Windows Internals 4e”一书第六章的叙述介绍了Windows的进程创建和映像装入的过程。但是,由于缺乏源代码的支撑,这样的叙述对于只是想对此有个大致了解的读者固然不无帮助,可是对于需要实际从事研发、特别是兼容内核开发的读者就显得过于抽象笼统了。不幸,Window

tcdddd的专栏 4561

MemShellParty实战指南:Java内存马原理、注入与安全测试

内存马(Memory Shell)是一种驻留在服务器内存中的恶意代码技术,它通过修改Web应用运行时内存中的数据结构(如Servlet Filter、Controller等)来注册恶意端点,从而绕过传统文件检测。其核心原理是利用Java的类加载机制和反射API,在应用运行时动态植入恶意逻辑,实现无文件持久化。这项技术在红队渗透测试和后渗透阶段具有重要价值,常用于权限维持和隐蔽控制。在实际应用场景中,内存马常通过远程代码执行(RCE)漏洞或Java Agent动态附加技术注入,针对Tomcat、Spring等

lizaochengwen的专栏 425

Android恶意软件动态分析实战:环境搭建、工具链与行为捕获指南

动态分析是软件安全领域的核心技术之一,它通过在受控环境中运行程序并监控其运行时行为,来揭示其真实意图。与静态分析关注代码结构不同,动态分析直接观察程序对系统资源(如文件、网络、进程)的实际操作,从而有效对抗代码混淆、加密等规避手段。这项技术的核心价值在于能够捕获恶意软件的活生生行为,例如数据窃取、命令控制(C&C)通信等,对于威胁取证、漏洞挖掘和安全防御至关重要。在移动安全,特别是Android生态中,动态分析常应用于恶意软件检测、应用隐私合规审计等场景。本文聚焦于Android平台,详细阐述了如何系统化地

weixin_34347651的博客 387

修改父进程

extern "C" { #define NTAPI __stdcall typedef struct _PEB *PPEB; #define PAGE_SIZE 0x1000 typedef LONG NTSTATUS; #define DECLSPEC_IMPORT __declspec(dllimport) #define NTSYSAPI DECLSPEC_IMPORT

sx5486510的专栏 3814

HTTP请求走私攻击原理与自动化检测防御实战

HTTP协议作为Web通信的基石,其请求/响应模型定义了客户端与服务器交互的标准方式。在HTTP/1.1中,持久连接和请求体长度定义机制(如Content-Length与Transfer-Encoding头部)是提升性能的关键特性。然而,当前端代理服务器与后端应用服务器对这些头部字段的解析逻辑存在差异时,便可能产生请求边界歧义,导致HTTP请求走私(HTTP Request Smuggling)漏洞。这种漏洞允许攻击者构造一个特殊的歧义请求,使前后端对其结束位置产生不同步(Desync)的理解,从而将恶意请

csdndownload11123的博客 372

修改目标进程的父进程

 来源:http://pjf.blogone.net作者:pjf(jfpan20000@sina.com)  让小师弟测一下1.06的进程规则,他试了试问:“为什么里面有源进程和父进程两项?不就是指创建目标进程的那个进程,它们不是一个意思吗?”  因为很简单,略略回答了一下,因为好多天没在http://pjf.blogone.net上添东西了,敲下来充数,有点不好意思。   windows下的

Richard的专栏 7699

ModHeader实战:5大场景详解HTTP请求头模拟在API测试中的应用

在API开发与测试中,HTTP请求头是客户端与服务器通信的关键契约,承载着用户身份、地域偏好、设备能力等核心信息。通过精确控制请求头,可以模拟千变万化的客户端状态,从而在不改动真实环境的情况下,高效验证业务逻辑的准确性。这一原理在软件工程实践中价值显著,尤其在微服务架构和全球化业务中,能够系统性地进行地域化测试、多租户隔离验证、API版本兼容性检查、设备特性适配及安全边界探测。例如,通过修改User-Agent、Accept-Language或自定义业务头,可以快速复现特定地域、特定设备下的问题,或检验认证

weixin_30561177的博客 559

HTTP响应截断攻击:从CRLF注入原理到实战防御

HTTP协议作为Web通信的基石,其基于文本的请求-响应模式定义了客户端与服务器交互的规范。协议解析的核心在于依赖特定的控制字符(如CRLF)来划分报文结构,这构成了协议信任的基础。然而,当不可信的用户输入被直接输出到HTTP响应头时,攻击者便能注入CRLF等控制字符,操纵解析器的状态,引发协议层面的“信任危机”。这种技术漏洞,常表现为HTTP响应截断或头部注入,其技术价值在于揭示了应用层协议安全对输入验证的绝对依赖。在应用场景中,不安全的URL重定向、Cookie设置或日志信息回显等功能点都可能成为攻击入

weixin_30859423的博客 413

进程及线程创建流程

今天在MuseHero的博客看到的资料,先收藏下来,以后慢慢学习,顺便了解一下WINDOWS的进程机制。;进程创建过程开始 CreateProcessAcall   kernel32!CreateProcessA ;10个参数; BOOL WINAPI CreateProcess(;   __in_opt     LPCTSTR lpApplicationName,;   __inout_op

yaozhu88的专栏 1750

yolov7模型部署流程

yolov7部署流程

算法的猫 1397

漫谈兼容内核之十七:再谈Windows的进程创建

     在漫谈之十中。我根据“Microsoft Windows Internals 4e”一书第六章的叙述介绍了Windows的进程创建和映像装入的过程。但是,由于缺乏源代码的支撑,这样的叙述对于只是想对此有个大致了解的读者固然不无帮助,可是对于需要实际从事研发、特别是兼容内核开发的读者就显得过于抽象笼统了。不幸,Windows内核的代码是不公开的,我们无法通过Windows内核的代码来确切地

周寅的专栏 1600

PostgreSQL隐式类型转换全解析:告别operator does not exist

强类型数据库是现代数据系统的基石,它在带来严谨性的同时,也常常让开发者在类型不匹配报错前束手无策。当一条SQL因bigint与text比较而抛出operator does not exist时,根源往往在于对数据库隐式转换规则的误解。PostgreSQL通过pg_cast系统表将转换划分为隐式、赋值与显式三个级别,并依据操作符解析逻辑决定是否自动提升类型。理解这些机制,不仅能快速定位JOIN、UNION、函数调用等场景下的类型错误,还能帮助开发者合理使用EXPLAIN VERBOSE、pg_typeof等工

weixin_29587015的博客 306

【STM32】IEC60730 Class B软件安全实现 Part2:自检库实战指南

本文是STM32 IEC60730 Class B软件安全实现的实战指南,详细介绍了如何将X-CUBE-CLASSB自检库集成到用户项目中。内容涵盖软件包解构、内存划分、启动与运行时自检的集成步骤、关键代码示例及调试技巧,并阐述了为最终通过安全认证所需的文档与流程准备,帮助开发者高效实现MCU功能安全。

weixin_29185167的博客 92

QIBO /do/jf.php EvilCode Execution Injected By /hack/jfadmin/admin.php

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考   1. 漏洞描述 这个漏洞的成因简单来说可以归纳为如下几点 1. 类似于ECSHOP的的模版代码编译功能,QIBO允许在文章中添加指定格式的模版代码 2. 在显示文章的时候,QIBO会使用: eval("\$rs2[title]=\"$rs...

weixin_33756418的博客 313

初学者入门YOLO目标检测:从懵圈到上手,这篇文章讲透所有核心(附学习路径+避坑指南)

目标:比如训练一个“检测苹果和橘子”的模型,或者“检测人脸”的模型;任务:学会用LabelImg标注数据,制作YOLO格式的数据集,用命令行训练模型;关键:不用追求高精度,能训练出一个能检测出目标的模型就行。很多初学者卡在入门阶段,不是因为智商不够,而是因为“想太多,做太少”——总觉得要把所有原理搞懂才能动手,结果越想越怕,最后放弃。先动手,再动脑。先跑通一个案例,获得成就感;再制作自定义数据集,训练简单模型;最后再回头去理解原理,优化模型。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 691

CRLF注入漏洞:从HTTP协议原理到实战攻防详解

HTTP协议作为Web通信的基础,其报文结构依赖于回车符(CR)和换行符(LF)进行数据分隔。当应用程序未对用户输入进行严格过滤,将可控数据直接拼接到响应头时,攻击者可通过注入CRLF字符序列,欺骗浏览器错误解析响应结构,实现响应头拆分。这种协议层面的漏洞具有重要技术价值,它不仅能直接导致会话固定攻击,还可作为绕过WAF的反射型XSS的跳板,甚至为缓存投毒等高级攻击创造条件。在Web安全测试中,CRLF注入常出现在重定向参数、文件下载等场景,理解其原理有助于开发者实施有效的输入验证与输出编码防御。

csxc65837的博客 336

在 SAP BAS 中扩展标准 SAP Fiori 应用并部署到 ABAP 环境的完整实践指南

SAPUI5 Adaptation Project 摘要(148字) SAPUI5 Adaptation Project 提供了一种高效扩展标准Fiori应用的方式,通过创建应用变体(Application Variant)实现差异化定制。开发者可在SAP BAS中使用可视化编辑器修改UI元素(如隐藏字段、调整表格布局、添加按钮等),而无需重写业务逻辑。变体部署到ABAP环境后,可与标准应用并行使用,且能随原应用升级保持同步。典型应用场景包括为不同用户角色定制简化界面或增强特定功能,既满足个性化需求,又保留

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

【Python爬虫系列】_005.浏览器开发者工具(详解)

Elements(元素)分析当前页面节点,用来辅助书写BS或者XPath这里面的数据与源代码有区别,不一定准确(避坑)Console(控制台)这个除了查看错误信息、打印调试信息(console.log())、写一些测试脚本以外,还可以当作Javascript API查看用例如我想查看console都有哪些方法和属性,我可以直接在Console中输入"console"并执行后续学js逆向的时候需要用到Sources(源代码)与在网页页面,鼠标右键——查看网页源代码 内容一致。

weixin_50296259的博客 423

CTF实战:SSRF+CRLF+Python反序列化组合漏洞利用剖析

服务器端请求伪造(SSRF)是一种允许攻击者诱导服务器向内部或第三方系统发起请求的安全漏洞,常被用作网络边界突破的初始入口。其原理在于应用程序未对用户提供的URL目标进行充分校验,导致攻击者能够利用服务器作为代理,探测或攻击内网资源。CRLF注入则利用了HTTP协议中回车换行符(\r\n)作为分隔符的特性,通过在用户输入中注入这些控制字符,攻击者可以篡改HTTP请求头或构造恶意请求行。Python的pickle反序列化机制因其在还原对象时会自动执行__reduce__方法而存在风险,恶意构造的序列化数据可导

chuanzhuanxian8669的博客 393

【HALCON工业视觉应用探索】08. C#+Halcon视觉引导机器人抓取:从入门到工业级实战(附完整代码+部署指南)

摘要:本文聚焦C#+Halcon在视觉引导机器人抓取领域的落地应用,从新手友好的“二十分钟基础引导系统”切入,逐步深入工业级场景(汽车变速箱壳体抓取)。内容涵盖核心概念(手眼标定原理、坐标转换、机器人通信协议)、完整技术流程(图像采集→目标定位→标定转换→机器人执行→结果反馈)、工业级代码实现(多目标识别、智能抓取策略、实时状态监控),以及现场部署关键技巧(硬件选型、通信配置、精度优化)。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1266

HTTP头部注入漏洞:原理、实战与防御全解析

HTTP协议作为Web通信的基石,其请求与响应的结构由状态行、头部和主体三部分组成,通过特定分隔符界定。当应用程序未对用户输入进行充分验证和净化,直接将其拼接到HTTP响应头时,就可能产生HTTP头部注入漏洞。攻击者通过注入回车换行符(CRLF),可以提前结束当前头部并插入恶意头字段,甚至实现HTTP响应拆分。这一漏洞的技术价值在于其影响范围广,可直接操控客户端行为,且往往能绕过传统WAF的检测。典型的应用场景包括会话劫持、缓存投毒、安全功能绕过以及恶意重定向等。本文以一次由代理服务器错误配置引发的真实线上

weixin_30561425的博客 404

MATLAB基础应用精讲-【数模应用】信用评分模型(附R语言和python代码实现)

信用评分模型是近年来兴起的一种为了保障银行和其他金融部门的金融安全而设立的一种关于人身金融权限的划定模型。该模型指根据客户的信用历史资料,利用一定的信用评分模型,得到不同等级的信用分数,根据客户的信用分数,来决定客户所可以持有的金额权限,从而保证还款等业务的安全性。而随着在现代社会和公司中,贷款,信用卡的作用日渐突出,信用评分模型的发展前景不可估量。信贷风险是指借款人因偿还贷款或履行合同承诺而破产而产生损失的可能性。传统上,它与贷款人无法偿还所欠利息和本金、影响现金流和增加装配成本所产生的风险有关。

qq_36130719的博客 365

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Windows后渗透实战:从Meterpreter会话到系统权限的完整提权路径

在网络安全领域,权限提升是渗透测试与红队行动中的核心环节,其本质在于突破系统安全边界,将有限的初始访问转化为对目标主机的完全控制。其技术原理通常围绕操作系统安全机制的缺陷展开,包括但不限于未修补的系统漏洞、不当的服务配置、以及令牌安全模型中的逻辑问题。掌握权限提升技术对于评估系统真实风险、理解纵深防御体系缺口具有重要价值。典型的应用场景包括内网渗透、红蓝对抗演练及系统安全加固评估。本文聚焦于Windows环境,深入剖析了利用Meterpreter会话进行系统侦察、漏洞利用、服务配置滥用及令牌窃取等关键【热词

weixin_33755557的博客 416

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

上一篇: IPSec over HTTPS
下一篇: A New-Generation Rootkit Detector
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值