PTH 即Pass-The-Hash,首先我们来说下为什么要使用HASH传递,一是再目标机>=win server 2012时,lsass.exe进程中是抓不到明文密码的,二是随着信息安全意识的提高,弱口令情况逐渐降低 PTH攻击最酷的地方并不是hash传递利用的过程,而是hash的获取过程,所以接下来90%的篇幅为hash获取的内容,开工!
假设我有一个训练好的模型名叫net1,则:torch.save(net1, ‘7-net.pth’) # 保存整个神经网络的结构和模型参数torch.save(net1, ‘7-net.pkl’) # 同上torch.save(net1.state_dict(), ‘7-net_params.pth’) # 只保存神经网络的模型参数torch.save(net1.state_dict(), ‘7-net_params.pkl ’) # 同上如果你是使用torch.save方法来进行模型参数的保存,那保存文件的后缀其实没有任何影响,结果都是一样的,很多.pkl的文件也是用torch.save保存下来的,和.pth文件一模一样的 而.pth文件则有不同的应用,Python在遍历已知的库文件目录过程中,如果见到一个.pth 文件,就会将文件中所记录的路径加入到 sys.path 设置中,于是 .pth 文件指明的库也就可以被 Python 但其实不管pkl文件还是pth文件,都是以二进制形式存储的,没有本质上的区别,你用pickle这个库去加载pkl文件或pth文件,效果都是一样的。
MSF进行哈希传递攻击PtH(工作组) 有些时候,当我们获取到了某台主机的 administrator 用户的密码哈希值 ,并且该主机的445端口打开着。 privilege::debug #先提权 #使用administrator用户的NTLM哈希值进行攻击 sekurlsa::pth /user:用户名 /domain:目标机器IP /ntlm Server 2003 本地管理员: administrator xie Windows Server 2008 本地管理员: administrator xie mimikatz进行哈希传递攻击PtH #获取kerberos加密凭证 利用获得到的AES256或AES128进行Key攻击 privilege::debug #使用AES-256进行Key传递攻击 sekurlsa::pth KB2871997针对PTH攻击,而 KB2928120 针对GPP(Group Policy Preference)。
0x02 为什么要进行hash传递 PTH,即Pass The Hash,首先我们来说下为什么要使用HASH传递,一是目标主机在win server 2012之后,lsass.exe进程中是抓不到明文密码的 0x03 使用hash传递查看域控文件目录 (1):进行hash传递 sekurlsa::pth /user:administrator /domain:域名或者域控IP /ntlm:afffeba176210fad4628f0524bfe1942 CurrentControlSet\Control\Lsa" | findstr "DisableRestrictedAdmin" ③使用hash登录域控RDP privilege::debug sekurlsa::pth 当我们有了凭证的时候,我们就可以执行pth攻击来通过身份认证了。 Impacket有一个脚本可以利用WMI来获得靶机的会话并执行各种任务。执行这些任务需要用户的凭证。 因为需要认证,所以我们将会通过pth攻击来获取端点信息,参数设置:域,用户名,IP地址及hash值。
.pth 有个饱受争议的点,就是它允许执行任意代码(参考 site 文档).pth 是干嘛的.pth 文件是一类文本文件,如果放在 site-packages 目录下,python 解释器在启动阶段,会读取并解释其内容 一个坑开发过程中往往会在虚拟环境中开发,但是将虚拟环境的 site-packages 添加到 sys.path 中的逻辑本身也是通过一个 .pth 文件实现的,它叫 _virtualenv.pth,而 python 执行 .pth 是按字典序执行的,所以如果你的 .pth 文件以 _ 开头,就很可能没法 import 一个在虚拟环境中安装了的包,因为这时候虚拟环境可以说还没别“激活”—— 激活虚拟环境的 .pth 还没执行呢。 而且我认为这个东西并没有被人开发得很完全,我想我可能未来也会开发更多基于 .pth 的有意思的库。
IPC,WMI,SMB,PTH,PTK,PTT,SPN,WinRM,WinRS,RDP,Plink,DCOM,SSH;Exchange,LLMNR投毒,Plink,DCOM,Kerberos_TGS,GPO pass the ticket(票据传递攻击,简称ptt) pass the key(密钥传递攻击,简称ptk) PTH(pass the hash) #利用的lm或ntlm的值进行的渗透测试(NTLM &NTLM 概述 PTH = Pass The Hash PTH在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过LM Hash和NTLM Hash访问远程主机或服务,而不用提供明文密码。 对于8.1/2012r2,安装补丁kb2871997的Win 7/2008r2/8/2012等,可以使用AES keys代替NT hash来实现ptk攻击, 总结:KB2871997补丁后的影响 PTH :https://www.freebuf.com/column/220740.html 1、Mimikatz mimikatz privilege::debug mimikatz sekurlsa::pth
一.前言 PTH(Pass The Hash,哈希传递)攻击是一种很典型的内网渗透攻击方式。 哈希传递(Pass The Hash) PTH(Pass The Hash,哈希传递)攻击是一种很典型的内网渗透攻击方式。 2.通过wmiexec对WMI进行PTH PTH攻击除了通过SMB进行以外,还可以使用WMI进行。下面我们使用Impacket中的wmiexec进行PTH攻击。 3.防御PTH攻击 对PTH攻击很难做到彻底防御,因为这个攻击方式本身利用了NTLM认证的特性,我们所做的只是降低PTH攻击的成功率,具体方法列举如下。 安装杀毒软件:通过安装杀毒软件防止攻击者用一些常规工具进行PTH攻击以及盗取哈希。 开启防火墙:通过开启防火墙的方式,禁止从445、135等端口进行通信。
SiamMask 模型 cd $SiamMask/experiments/siammask wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pth 运行 demo.py cd $SiamMask/experiments/siammask /tools/demo.py --resume SiamMask_DAVIS.pth --config config_davis.json ? SiamMask_VOT.pth VOT2016 0 bash test_mask_refine.sh config_vot.json SiamMask_VOT.pth VOT2018 0 python ) bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth ytb_vos 0 结果 以下是在本项目仓库复制的结果。
= 'c:\new_books\python' # (10) >>> print(pth) c: ew_books\python print(pth) 的结果则是被分割为两行,且路径名称有误, 为此,修改为: >>> pth = 'c:\\new_books\python' # (11) >>> print(pth) c:\new_books\python 比较注释(11)和(10)的差异 此外,还有一种方法: >>> pth = r'c:\new_books\python' # (12) >>> print(pth) c:\new_books\python >>> pth 'c:\ 但是,原始字符串并非总能实现上面的效果,例如: >>> pth = r'c:\new_books\python\' # (13) File "<stdin>", line 1 pth >>> pth = 'c:\\new_books\\python\\' # (14) >>> print(pth) c:\new_books\python\ >>> pth = r'c:\
SiamMask 模型 cd $SiamMask/experiments/siammask wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pth 运行 demo.py cd $SiamMask/experiments/siammask /tools/demo.py --resume SiamMask_DAVIS.pth --config config_davis.json ? SiamMask_VOT.pth VOT2016 0 bash test_mask_refine.sh config_vot.json SiamMask_VOT.pth VOT2018 0 python ) bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth ytb_vos 0 结果 以下是在本项目仓库复制的结果。
t7 / pth -> onnx pytorch任意形式的model(.t7、.pth等等)转.onnx全都可以采用固定格式。 完整实现: def pth2onnx(self, simplify_onnx_sw=True): import torch os.environ['KMP_DUPLICATE_LIB_OK '] = 'True' model = torch.nn.DataParallel(self.model) _state_dict = torch.load(pth_path, map_location : print('\n Pure onnx has been save to {}\n'.format(pure_onnx_path)) 实验举例: model_dir = './' pth_path = model_dir + 'A.pth' onnx_path = model_dir + 'A.onnx' batch_size = 1 input_shape = (3, 112, 112) cfg
PTHREAD_COND_INITIALIZER; pthread_mutex_t cond_mutex = PTHREAD_MUTEX_INITIALIZER; int main() { pthread_t pth [2]; char c; if(pthread_create(&pth[0],NULL,print_a,NULL) ==-1) { printf("----pth[0]error------ --\n"); exit(-1); } if(pthread_create(&pth[1],NULL,print_b,NULL) ==-1) { printf("----pth[1]error = 0; printf("----end----------\n"); pthread_cond_signal(&cond); if(pthread_join(pth t0"); exit(1); } pthread_cond_signal(&cond); if(pthread_join(pth
public: char buffer[1024]; pthread_t id; }; void *get_ticket(void *args) { pthread *pth =new pthread(); snprintf(new_pth->buffer,sizeof (new_pth->buffer),"thread-%d",i+1); int n=pthread_create(&(new_pth->id),nullptr,get_ticket,new_pth); assert(n==0); (void =new pthread(); snprintf(new_pth->buffer,sizeof (new_pth->buffer),"user-%d",i+1); int n=pthread_create(&(new_pth->id),nullptr,get_ticket,new_pth); assert(n==0); (void
=y(3);%角动量1 pth2=y(4);%角动量2 %利用拉格朗日法得到的方程 M=l^2*m*(-16 + 9*cos(th1 - th2)^2); dth1 = -6*(2*pth1 - 3*pth2 (1)+9*cos(2*(th(2)-th(3)))*pth(1)+27*cos(th(1)-th(2))*pth(2)-9*cos(th(1)+th(2)-2*th(3))*pth(2)+21*cos (th(1)-th(3))*pth(3)-27*cos(th(1)-2*th(2)+th(3))*pth(3)))/M; dth2=(6*(27*cos(th(1)-th(2))*pth(1)-9*cos (th(1)+th(2)-2*th(3))*pth(1)-47*pth(2)+9*cos(2*(th(1)-th(3)))*pth(2)-27*cos(2*th(1)-th(2)-th(3))*pth( (1)-27*cos(2*th(1)-th(2)-th(3))*pth(2)+57*cos(th(2)-th(3))*pth(2)-143*pth(3)+81*cos(2*(th(1)-th(2)))*
字符串'%s/netG_epoch_%d.pth' % (self.model_dir, epoch) 中,%s表示第一个字符串占位符将被替换为self.model_dir(即保存.pth文件的目录路径 这样就可以在每一轮训练结束后将当前的网络模型参数保存到一个新的.pth文件中,文件名中包含轮数以便于后续的查看和比较。 二、DFGAN20版本在DFGAN20版本当中,模型保存在DFGAN/code/models当中,其中netG_300.pth就是代表生成器第300轮的模型netD_300.pth也就是代表鉴别器第300 这样,就成功读取了所选文件夹目录下的netG_300.pth和netD_300.pth,如果要在这个epoch下进行采样,只需要把code/cfg/bird.yml下B_VALIDATION改为 True DFGAN22版本在保存模型时并没有单独保存netG, netD, netC, optG, optD等模型,而且将他们的模型都保存为一个.pth文件,如名为state_epoch_940.pth代表的就是第
│ ├── latest.pth -> epoch_20.pth │ ├── log.eval.fastbev_m0_r18_s256x704 │ ├── latest.pth -> epoch_20.pth │ ├── log.eval.fastbev_m1_r18_s320x880 │ ├── latest.pth -> epoch_20.pth │ ├── log.eval.fastbev_m2_r34_s256x704 │ ├── latest.pth -> epoch_20.pth │ ├── log.eval.fastbev_m4_r50_s320x880 ├── latest.pth -> epoch_20.pth ├── log.eval.fastbev_m5_r50_s512x1408
有三种方式添加,均验证通过: 1 临时添加,在一个shell窗口中 import sys sys.path sys.path.append(path) 但退出该shell窗口,即失效 2 使用pth文件永久添加 使用pth文件,在 site-packages 文件中创建 .pth文件,将模块的路径写进去,一行一个路径,以下是一个示例,pth文件也可以使用注释: # .pth file for the my
└── det_10g.onnx ├── liveportrait │ ├── base_models │ │ ├── appearance_feature_extractor.pth │ │ ├── motion_extractor.pth │ │ ├── spade_generator.pth │ │ └── warping_module.pth │ ├── base_models │ ├── appearance_feature_extractor.pth │ ├── motion_extractor.pth │ ├── spade_generator.pth │ └── warping_module.pth ├── retargeting_models │ └── stitching_retargeting_module.pth └── xpose.pth 三、使用教程 快速上手(人类模型) 运行以下命令即可生成默认示例: # 对于Linux和Windows用户 python inference.py # 对于搭载
在此,南方医科大学于梦和喻志强开发了一种包含Fe(III)-聚多巴胺(FeP)核和HA交联的CDDP(PtH)壳的可降解金属络合物(PtH @ FeP),通过CDDP和Fe(III)的协同作用放大了ROS 合理设计的PtH @ FeP提供了一种新的策略,通过自增强协同化学疗法/铁死亡/光热疗法(PTT)抗肿瘤减低了药物剂量,保证了临床应用的安全性。 本文设计了一种可降解的金属配合物,包括FeP核和PtH壳,可通过自增强的铁死亡和CDDP依赖的细胞凋亡来实现多功能协同治疗。 PtH @ FeP对酸性或还原性肿瘤微环境高度敏感,导致纳米颗粒在肿瘤部位膨胀并降解,实现CDDP和Fe3+的连续释放。 由于PtH @ FeP具有FeP核,因此具有良好的光热性能,可以促进Fenton反应并起PTT治疗的作用。这项工作显示出可降解金属络合物在介导高效协同肿瘤治疗和降低全身毒性方面的巨大潜力。
看下面的坑,一般人都不知道 第一,demo.py测试yolov4.weights才有效果,你测试作者yolov4.pth什么也检测不出来!而且评估coco数据集必须得用yolov4.weights! 第二,训练的时候,预训练模型是yolov4.pth不是yolov4.conv.137。我亲自尝试用yolov4.conv.137训练的模型有问题,而且不能用,推理的结果全是nan! 至于是yolov4.pth还没有测试,不过按照issues/75。确定无疑了 第三,github的问题作者都不带回的,问了等于白问,遇到问题还得靠自己了 第四,那到底怎么测试自己训练的pth模型呢? 目前还没找到办法,希望有大佬出来解释一下原因 第二次更新: 作者yolov4.pth可以通过models.py中的案例检测出来,目前经过2次训练,得出结论,这个项目训练的模型不能用。 因此建议不要使用Tianxiaomo的pytorch-YOLOv4模型进行训练,测试使用还可以 第三次更新: demo.py测试yolov4.weights才有效果,你测试作者yolov4.pth什么也检测不出来原因已被找到