【渗透-主机发现】从0到1,结合工具,入门渗透中的主机发现技术

渗透测试:主机发现和端口扫描的思路方法总结(nmap+ping命令+nc.traditional+伪设备连接) 本文总结了有关主机发现和端口扫描的常规方法思路。包括使用nmap工具和使用ping命令进行主机发现、使用nc.traditional进行端口扫描、使用伪设备进行端口扫描。本文涉及了许多bash脚本的for循环命令、有关输出重定向>&符号的使用、逻辑运算符&&和||的使用等,希望读者慢慢消化。 阅读详情

要实现一次成功的渗透操作,先要有一些预动作,例如:主机发现、信息收集、漏洞扫描等。主机发现的根本目的就是找到你要进行渗透操作的目标,其中,可以有很多思想方法可以借鉴,有很多工具可以利用。


Table of Contents

基于ARP协议的主机发现

基于ICMP协议的主机发现

基于TCP协议的主机发现

TCP-SYN扫描(又叫隐蔽扫描或半打开扫描)

TCP-ACK扫描

原理:试图与目标主机上的端口进行完整的三次握手。

TCP窗口扫描

TCP-FIN扫描

TCP-Xmas扫描

TCP-null扫描

基于UDP协议

上层网络&路由追踪


在本个专栏《渗透-主机发现》中,我将尽自己所收集到的相关资料和学习笔记进行整理,并分享出来,一起进步成长,抵御可能发生在未来的一些事情。enjoy...

主机发现方式(扫描方式):

  • 主动扫描:主动发送一些数据包进行扫描,以找到网络中活动的主机。例如,主动发送一个ARP请求包,等待目标主机的响应。有响应则说明该机器存活,无响应则说明该机器没存活。
  • 被动扫描:长期监听广播包,来发现某一网络中的活动主机。

PS:为了能对下文所述进行实操,建议搭建靶机环境,如Metasploitable2-Linux、VM中安装不同版本的Windows系统,因为网络上对于这些的文章教程太多了,我也不打算讲述这些。另外,以下的很多操作目标是Metasploitable2-Linux。


基于ARP协议的主机发现

ARP(Address Resolution Protocol)地址解析协议,其核心作用是根据IP获得MAC。

nmap实现ARP协议的主机发现:

nmap -sn -PR 10.253.6.0/24

 

Netdiscover(是一个主动/被动的ARP侦查工具):

  1. 对某一范围进行扫描:netdiscover -r 192.168.0.0/24
  2. 对某个范围进行扫描:netdiscover -r 192.168.3.0/24 -i eth0
  3. 静态扫描:netdiscover -p(表示被动模式,不发送任何数据包) 目标
  • -r:指定IP范围
  • -i:指定扫描的接口

 

arp-scan(ARP扫描工具):

  1. 可以单一扫描,也可以进行批量扫描(CIDR、地址范围、列表文件的方式制定);
  2. 支持定制ARP数据包;
  3. 支持自动解析MAC,返回厂商;

语法:arp-scan <target>

 

arping(基于ARP的ping工具,在局域网内向其他主机发送ARP指令):

语法:arping -c 数据包数量 <target>


基于ICMP协议的主机发现

ICMP(Internet Control Message Protocol)

  1. 因特网控制报文协议,工作在OSI的网络层,向数据通信中的源主机报告目标主机是否可达等信息。
  2. 其核心作用就是让用户能够检测网络的连续状态,也是“错误侦测与回报实施机制”。
  3. 通过ICMP ping扫描,可以发现目标主机是否存活。
  4. 用于在IP主机和路由器之间传递控制消息。控制消息值“网络通不通,主机是否可达,路由是否可用等网络本身的消息”。

 

 

ping(通用于UNIX,Linux,Windows)

语法格式:ping <target>

例:ping hackyle.net

 

nmap(基于ICMP协议)

  1. nmap -PE <target> (-PE:表示发送一个ICMP echo,timestamp和netmask请求)
  2. nmap -PP <target>  (-PP:发送ICMP时间戳扫描存活主机)
  3. nmap -PM <target>  (-PM:试图用备选的ICMP登记ping指定的主机,这种类型的ping可以绕过配置有封锁标准ICMP请求策略的防火墙)

fping(可以定义任意多的IP地址或主机)


基于TCP协议的主机发现

理解TCP3次握手建立连接:

  1. 发送方:你听得到吗(SYN)?
  2. 接收方:我听得到(ACK),你能听得到我吗(SYN)?
  3. 发送方:我听得到(ACK)。
  4. 此时双方都知道彼此具备收发数据的能力!

TCP-SYN扫描(又叫隐蔽扫描或半打开扫描)

原理:向目标主机的指定端口发送SYN数据包。如果源主机收到RST数据包,则说明端口是关闭的;如果源主机收到SYN+ACK数据包,则说明目标端口处理监听状态。

特性:

  1. 由于源主机已经获取了目标主机的端口状态信息,并不需要建立连接,所以传送一个RST数据包给目标主机,从而停止了正常了三次握手连接。
  2. 在SYN扫描中,由于客户端与服务端并没有形成3次握手,所有没有建立一个正常的TCP连接,因此不会被防火墙和日志所记录,也即不会在目标主机上留下任何痕迹。

 

语法:

  1. nmap -PS <target>  (Nmap默认使用的这种方式来扫描,基于TCP ACK和ICMP Echo请求来判断主机是否响应)
  2. nmap -sS <target> (-s:即scan,告诉nmap要运行那种类型的扫描,-S:即SYN,表示要执行的TCP SYN类型的扫描)

 

使用这两种方式扫描Metasploitable2-Linux漏洞主机:

TCP-ACK扫描

原理:

  1. 向目标主机的一个端口发送一个只有ACK标志的TCP数据包,无论目标主机的该端口是否开启,都会返回一个相应的RST数据包,然后通过RST包中的TTL,来判断目标主机的端口是否开启。
  2. 其中TTL<64表示端口开启,TTL>64时表示端口关闭。

 

语法:

  1. nmap -PA <target>  (可以探测阻止了TCP-SYN包和ICMP Echo请求的主机,但有可能会被防火墙阻止)
  2. nmap -sA <target>  (-s:即scan,表明你要使用哪种类型的扫描,-A:即TCP-ACK扫描)

TCP全连接扫描

原理:试图与目标主机上的端口进行完整的三次握手。

特性:

  1. 最基础、最稳定
  2. 速度慢,但准确度搞
  3. 容易被防火墙和IDS(入侵检测系统)发现

 

语法:

nmap -sT <target>  (-s:即scan,-T:TCP)

 

TCP窗口扫描

原理:和ACK扫描一样,它通过检测返回的RST报文的TCP窗口域,来判断目标端口是否开放。当端口关闭,则表明窗口为0;当端口开放,即窗口大于0。

 

语法:nmap -sW <target>

TCP-FIN扫描

诞生背景:

如果目标主机有防火墙,会组织SYN数据包,这是可以考虑使用TCP-FIN扫描。因为TCP FIN标志的数据包,并不需要完成TCP的握手。

原理:

TCP-FIN扫描就是想目标端口发送一个FIN包。如果收到目标主机的响应RST包,则说明端口是关闭的;如果没有收到RST包,则说明端口可能是开放的或是被隐蔽的。

语法:nmap -sF <target>  (-s:即scan;-F:FIN)

TCP-Xmas扫描

原理:又称为圣诞树扫描,它发送带有URG、PSH和FIN标志(注:URG、PSH、FIN是TCP报文中的标识位)的TCP数据包。如果目标主机响应一个RST标志的数据包,则说明目标主机的端口是关闭的。

语法:nmap -sX <target>

 

TCP-null扫描

原理和TCP-Xmas扫描一样,也是通过发送非常规的TCP通信数据包对目标计算机进行探测。在很多情况下,Null扫描和Xmas树扫描正好相反,因为TCP-null扫描向目标主机发送没有任何标记的数据包。如果目标主机的相应端口是关闭的话,则会响应一个RST数据包;如果目标主机的端口是开启的话,则不会响应任何信息。

语法:nmap -sN <target>


基于UDP协议

ping命令的原理就是向目标主机发送UDP数据包,如果数据包及时到达目标主机并做出响应,则认为网络是连通。

 

UDP扫描

原理:专门针对UDP端口。如果目标返回ICMP不可达的错误,则说明端口是关闭的;如果能够得到正确或者适当的响应,则说明目标端口是开启的。

语法:nmap -sU <target>

 

UDP-ping扫描

原理:通过发送UDP数据包到目标主机并等待响应。如果目标返回ICMP不可达的错误,则说明端口是关闭的;如果能够得到正确或者适当的响应,则说明目标端口是开启的。

语法:nmap -PD[端口] <target>  (-P:即ping,使用ping类型扫描;D:即UDP)


上层网络&路由追踪

 

路由追踪(确定自己与该IP/域名需要经过几级路由):

  1. traceroute <IP/域名>  (例如:traceroute hackyle.net)
  2. nmap --traceroute <IP/域名>  (例如:nmap --traceroute )


 

vulnstack红日靶场1,以cs工具进行域渗透 为了方便,我放置在自己的网盘中红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习、视频教程、博客三位一体学习。另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环。后续也会搭建真实APT实战环境,从实战中成长。关于环境可以模拟出各种各样实战路线。该靶场,本人目前以cs为主进行的域渗透,并没有深入学习相关漏洞知识,目前只是以了解流程以及掌握cs工具的使用,后续会发布不借助工具的方式,或者借助其他工具的形式,如msf、viper等目前我个人获取到根域的权限,完全借助的是cs。 阅读详情

相关推荐

渗透测试中的目标扫描:发现网络中的活动主机

ARP(地址解析协议)用于将 IP 地址解析为 MAC 地址,是局域网中通信的基础协议之一。由于其工作机制,ARP 请求可以快速发现本地网络中哪些主机是“在线”的。方法工具优点局限性ARP 扫描快速、轻量、适合本地网段仅限局域网Ping 扫描nmap -sn支持跨网段、云环境可能被防火墙拦截高级发现nmap + 输出处理可脚本化、适合大规模扫描配置稍复杂通过合理组合 ARP 和 Nmap 扫描技术,我们可以高效地识别目标网络中的活动主机,为后续渗透测试打下坚实基础。标签。

idlecloud0105的博客 828

信息收集之主机发现

信息收集之主机发现

weixin_63154145的博客 1078

51单片机IAP技术详解:从原理到实战,实现远程程序自更新

在嵌入式系统开发中,程序更新是产品维护和功能迭代的核心需求。传统方式依赖外部烧录器,操作繁琐且无法远程进行。IAP(在应用中编程)技术则从原理层面解决了这一难题,它允许单片机在运行过程中通过特定接口(如串口)动态修改自身的Flash程序存储器。这项技术的核心价值在于赋予设备远程升级和自主维护的能力,极大地延长了产品生命周期并降低了维护成本。其典型应用场景包括智能家居控制器、工业数据采集模块和远程仪表等部署后不便拆卸的设备。本文以经典的51单片机(如STC89C52)为例,深入剖析IAP的实现,其中Bootl

weixin_29161719的博客 404

网络安全实验2 信息搜集与主机发现

赞赏码 & 联系方式 & 个人闲话 【实验名称】信息搜集与主机发现 【实验目的】 1.了解信息搜集的一般步骤; 2.学会熟练使用ping命令,学会利用Nmap等工具进行信息搜集; 3.了解IP助手函数,掌握SendARP函数的使用方法; 4.理解利用ARP协议实现主机发现的原理 【实验原理】 ping命令探测技巧:使用ping可以测试目标主机名称和IP地...

一半西瓜的博客 6794

重装系统后,恢复Oracle的.ORA文件

前几天,系统莫名奇妙产生很多宏病毒,进而感染整个C盘,不得已,格式化后重装了系统。 重装系统之后,突然想到D盘中的oracle中很多数据没导出来备份,安装文件下有很多有用的.ORA文件,抱着死马当活马医的态度,居然成功了。 1、将原来D盘(D:\oracle\product\10.2.0\oradata\orcl)下的数据文件备份下其他盘,将D盘的oracle目录名改成oracle1。安装数据

zhanggnol的blog 5551

晶圆测试(wafer sort)全流程解析:从探针卡到良率统计的实战指南

本文详细解析了晶圆测试(wafer sort)的全流程,从探针卡选型到良率统计的实战指南。涵盖了12英寸先进制程产线的关键技术,包括探针卡系统、测试程序开发、产线自动化集成及数据分析,特别聚焦多站点并行测试的时序优化和接触阻抗异常排查,帮助工程师提升测试效率与准确性。

weixin_29279153的博客 731

信息收集--主机发现

信息收集之主机发现 主机发现信息收集之主机发现前言一、主机发现是什么?二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 一、主机发现是什么? 网络探测任务的最初几个步骤之一就是把一组IP范围(有时该范围是巨大的)缩小为 一列活动的或者您感兴趣的主机。一个外部入侵测试人员则可能绞尽脑汁用各种方法试图

qq_44555676的博客 1893

基于Simulink的防空导弹六自由度弹道建模与仿真实战

本文详细介绍了基于Simulink的防空导弹六自由度弹道建模与仿真方法。通过分析导弹动力学原理、Simulink环境配置、气动力建模、推进与控制系统设计等关键环节,提供了一套完整的实战指南。文章特别强调了六自由度模型在防空导弹仿真中的重要性,并分享了常见问题排查与优化建议,为相关领域工程师提供实用参考。

apple5的专栏 867

Nmap之主机发现

文章目录0x00 主机发现原理0x01 基本扫描0x02 Ping扫描0x03 无Ping扫描0x04 TCP SYN Ping扫描0x05 TCP ACK Ping扫描0x06 UDP Ping扫描0x07 ICMP Ping Types扫描0x08 ARP Ping扫描0x09 列表扫描0x10 禁止反向域名解析0x11 反向域名解析0x12 使用系统域名解析器0x13 扫描一个IPv6地址0x14 路由跟踪0x15 SCTP INIT Ping扫描 0x00 主机发现原理 ​ 主机发现发现的原理与P

Hugu 7922

lidar点云比赛-Southlidar软件使用入门

lidar点云比赛-Southlidar软件使用入门 广西高校重点实验室培训基地 系统控制与信息处理重点实验室 本篇博客来自河池学院: 智控无人机小组 写作时间:2020.09.29 一、软件资源及安装 1.下载地址: https://pan.baidu.com/s/1jN1pynmAZOqj5mMx774pVg 提取码:gkvv (资源来自南方测绘) 2.安装 进入链接,找到软件文件夹, 内含文件即为安装包 3.下载成功后按提示安装即可 4.安装成功后桌面自动创建一个快捷方式 二、界面布

qq_49621416的博客 4891

MPU6050 加速度计和陀螺仪传感器与 Arduino 的接口

虽然该模型并不能准确代表现实世界中加速度计传感器的构建方式,但它通常有助于理解为什么加速度计的输出信号通常以 ±g 为单位指定,或者为什么加速度计在静止时在 z 轴上的读数为 1g,或者在不同方向上您可以期望得到什么样的加速度计读数。该模块的核心是低功耗、低成本的 6 轴运动跟踪芯片 MPU6050,它将 3 轴陀螺仪、3 轴加速度计和数字运动处理器 (DMP) 集成到一个 4mm x 4mm 的微型芯片中。小时候,科学博览会上的陀螺仪总是让我们感到惊讶,因为它们以奇怪的方式移动,甚至似乎违背了重力。

sxstj的博客 9932

主机发现原理及工具使用 - 安全工具篇

OSI及TCP/IP模型 互联网的本质就是一系列的网络协议,这个协议就叫OSI协议(即开放式系统互联) OSI协议 按照功能不同,分工不同,人为的分层七层。实际上还有人把它划成五层、四层。 ...

chiqiao5151的博客 1962

Python爬虫:招聘网站岗位要求、薪资与求职者数据爬取与分析

通过本文的教程,我们学习了如何通过 Python 编写招聘数据爬虫,爬取招聘网站上的岗位要求、薪资和求职者数据,并通过数据存储、清洗、分析和可视化,获取有价值的信息。网站如智联招聘、猎云网、前程无忧等,都提供了大量的招聘信息,包括岗位要求、薪资范围、工作经验、学位要求、招聘公司等。本文将介绍如何通过 Python 编写爬虫,爬取招聘网站上的岗位要求、薪资、求职者数据,并通过数据存储、分析和可视化等手段,为求职者或招聘者提供实用的信息和决策支持。通过循环抓取多个页面的数据,可以获取不同岗位的信息。

2201_76125261的博客 720

信息收集:主机发现

是指攻击者利用各种技术和工具来识别目标网络中的主机。攻击者可能会使用网络扫描工具来发现目标网络中的活动主机,也可能会利用DNS查询、ARP扫描、SNMP查询等技术来获取主机的信息。一旦攻击者获取了目标网络中主机的信息,就可以进一步进行攻击,比如选择特定的主机作为攻击目标,或者利用已知的漏洞对主机进行攻击。 在ATT&CK框架中,信息收集:主机发现是一个横向移动的技术,攻击者可以利用这个技术来在目标网络中发现和识别主机,从而为后续的攻击活动做准备。为了防范信息收集:主机发现的攻击,组织可以采取一系列措施

qq_68163788的博客 3188

Python全栈入门到实战【进阶篇 2】面向对象之封装:私有属性、私有方法与@property优雅访问

_属性名真正私有方法:双下划线开头(__方法名()),Python自动名字改写,外部无法访问;约定私有方法:单下划线开头(_方法名()),仅为编程约定,外部可访问但不推荐。实战中优先使用“真正私有方法”,隐藏核心辅助逻辑。封装的本质:隐藏对象的核心数据(私有属性)和内部逻辑(私有方法),仅对外提供规范、安全的访问接口,实现数据安全与可维护性;私有属性真正私有:双下划线开头(__属性名),Python名字改写,外部无法直接访问,仅类内部可用;约定私有:单下划线开头(_属性名。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 2913

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【内网安全】——内网主机发现

在内网渗透中,为了扩大战果,往往需要寻找更多主机并且对这些主机进行安全检测或帐号密码测试,所以主机发现这个步骤必不可少。那主机发现都有哪些方法呢?

Demo不是emo的博客 9755

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

【内网渗透】基于ICMP协议的内网存活主机发现

ICMP主机发现作为基础网络探测技术,在渗透测试和网络维护中具有重要价值。方法速度隐蔽性复杂度适用场景Nmap快低中专业扫描CMD慢中低应急检测PowerShell中中高深度扫描TCPing快高低严格环境安全研究人员应根据实际环境选择合适的技术组合,同时建议企业网络管理员定期审查ICMP策略,平衡运维需求与安全风险。

KP_0x01的博客 938

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

渗透测试:主机发现和端口扫描的方法总结_nmap扫描会被发现吗?

信息搜集是渗透测试的第一步,而主机发现和端口扫描则是信息搜集的关键步骤。后续的渗透测试都是基于开始搜集侦察的信息进行测试的。这一步一定要保证把信息搜集完整齐全,否则一旦后续渗透过程出现了思路不畅,就会返工完全重做,非常浪费时间。哪怕是扫描不到有效的信息,也要及时记录

fly_enum的博客 1021

内网渗透主机发现的技巧

在内网渗透中,为了扩大战果,往往需要寻找更多主机并且对这些主机进行安全检测或帐号密码测试,所以主机发现这个步骤必不可少。我们如何在不实用扫描器的情况下发现更多主机呢? 确定IP段 通常内网地址分三段:10.0.0.0/8、172.16.0.0/12以及192.168.0.0/16。在没有做任何操作之前,我们可以大概知道内网的IP地址段,不过也有些公司,在内网又会有公网IP的情况,也就是说在内网中可以访问到的IP段有很多。 下面就主要介绍一下收集IP段的方式。 查看本机的IP地址 Window.

hl1293348082的专栏 605

渗透测试:主机发现和端口扫描的方法总结

​ 信息搜集是渗透测试的第一步,而主机发现和端口扫描则是信息搜集的关键步骤。后续的渗透测试都是基于开始搜集侦察的信息进行测试的。这一步一定要保证把信息搜集完整齐全,否则一旦后续渗透过程出现了思路不畅,就会返工完全重做,非常浪费时间。哪怕是扫描不到有效的信息,也要及时记录

fly_enum的博客 2216

渗透测试:主机发现和端口扫描的方法总结_nmap扫描会被发现吗

信息搜集是渗透测试的第一步,而主机发现和端口扫描则是信息搜集的关键步骤。后续的渗透测试都是基于开始搜集侦察的信息进行测试的。这一步一定要保证把信息搜集完整齐全,否则一旦后续渗透过程出现了思路不畅,就会返工完全重做,非常浪费时间。哪怕是扫描不到有效的信息,也要及时记录

2301_77472496的博客 909

hacker入门——最好用的渗透测试工具

前言: 本博客所有的黑客方面知识交流讨论仅供学习,请勿用于从事非法勾当! 苟利国家生死已,岂因福祸避趋之! 渗透测试,是专业安全人员为找出系统中的漏洞而进行的操作,这也是进行攻击前的第一个环节。 当然,是在恶意黑客找到这些漏洞之前,而这些业内安全专家各自钟爱的工具各种各样,一些工具是公开免费的,另一些则需要支付费用,但这篇文章向你保证,值得一看。 下面列举17个常用的渗透工具供大家参考。...

华农老林的博客 2万+

web渗透--主机发现

一、OSI分层 1、OSI(Open System Interconnect),开放式系统互联,他将网络分为七层,每一层发送信息都是单进行。具体模型如下图(下图为网络中寻找,如有侵权,请告知) 二、二层主机发现 1、二层主机发现主要是利用的OSI中链路层进行主机发现。链路层发送对应的帧,主要利用的是arp协议(地址解析协议)。二层主机优点(局域网中通通信使用ARP协议,利用MAC地址作为对应的识别地址): 速度快、可靠性高。但是无法扫描经过路由的主机。 ...

朝阳似锦 晖映山河 465

渗透测试一外部主机发现

本章将简要介绍如何查找来自互联网的响应 IP。在这种情况下,你有一些IP 范围(甚至可能是几个范围),你只需查找哪些 IP 正在响应。

K 1405

Kali渗透局域网机器

一、实验环境: 靶 机:windows10台式机(可以自己搭一个虚拟机,我这里用物理机做靶机):192.168.1.114攻击机:kali虚拟机:192.168.1.116 二、msf工具基本用法: msfconsole #进入msf框架 search 相关漏洞(如search ms17_010) # 使用search命令查找相关漏洞 use exploit...

追风筝的孩子 1万+

web渗透—主机发现

arping、fping、hping3、nmap

m0_50992624的博客 285
上一篇: 【Servlet】ServletConfig和ServletContext的功能概述
下一篇: 【数据库原理】快速入门关系型数据库
ALGO阿狗
博客等级 码龄9年 64粉丝 149原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值