如果你在“照片”App 中看到“无法上传”
一直以来都用iCloud来同步照片,今天闲来无事对了一下自己手机本地的照片和iCloud上的照片,发现数量居然对不上。确认照片已经同步到最新状态后,确诊为在“照片”App 中看到“无法上传”。 按照苹果推荐的方法进行操作: 在“照片”App 中,选取“无法上传”相簿。 轻点“选择”>“全选”以选择所有文件。 轻点“共享”按钮 >“存储到‘文件’”。然后从“我的 iPhone 上”选取一个位置,轻点“存储”以将这些文件存储到你的设备上。 打开“文件”App,确认相应文件已导出。 要从“无法上传”相簿中删除文件,请轻点“废纸篓”按钮 >“删除”。接着选取“最近删除”相簿,轻点“选择”,然后轻点“全部删除”>“删除”进行确认。 要重新导入这些文件,请在“文件”App 中选取包含这些文件的文件夹。接着轻点“共享”按钮,然后轻点“存储”。 操作完后发现照片确实可以重新上传iCloud,但原本的实况照片会被转化成普通的静态照片(至少在iOS的相册里无法被识别为实况照片,但体积大小与原照片相同)。 又摸索了很久,最后摸索出一个超越官方的终极解决方案: 直接在“无法上传”相簿中全选文件并复制,然后删除原本“无法上传”相簿中的文件,并重启iPhone,连接电源和Wi-Fi,锁屏,新照片就会开始自动上传了😄 图左上:Mac 图左下:iCloud 图右:iPhone 之前差了数量差了一两千张,现在完全一致了(确信)
在macOS上安装JetBrains全家桶——以Clion为例
最近想找一个在Mac上好用的C/C++ IDE,找来找去好像还是我最爱的JetBrains出品的Clion合适,去官网看了看,发现它居然没有社区版。 尝试使用ja-netfilter来安装Clion。先从官网下一个目前最新版本的Clion,正常安装。 打开/XXX/CLion.app/Contents/bin/clion.vmoptions,准备往里面加点料。 在网上很多教程里,以下配置是必须要添加的: -javaagent:/XXX/ja-netfilter/ja-netfilter.jar 而以下配置是只有Java17才需要添加: --add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED --add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED 一开始我根据教程只添加了第一段,因为我电脑里装的是Java8,结果怎么也激活不了。经过一番了解才知道,由于JetBrains全家桶的所有IDE在2022.2版本(合理推测还有之后的版本,也就包括目前的最新版)默认启用Java17,所以第二段也需要添加。 最后应该在clion.vmoptions里添加: -javaagent:/XXX/ja-netfilter/ja-netfilter.jar --add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED --add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED 同时在ja-netfilter的power.conf中添加: [Result] EQUAL,120506319308405029943033101198259523557651500267734599270782782071425072541184605728867830395125412768750966448411447392137801711908001958831204692561738046570955709184538088569271703484602917023462976408329100293802371486063140115775311907530943821345005598057265747678100463689973450156515895355214983079672467769169324175533323801179755544364921063654340185317077965735659865485150734884110709760680757502730007505995422237875348017761382234951127263548660889969621730944377739766734765769747684457663965611896398862841334032542726392699785677440644859509166466497325071885386505404431787167239320957696896447925472784312642576835792921100239616617639216190447230487878404191838684279341834945197861631446454083984351911070798505031973496634229907567362853550735007045265430703581336189733180744888091740381912913980707537008943084904260746266383019688346709856215660232636334604552145129775009725685598798774376749830567219982166661918408832945395290223853748014160473876195098438959881711585152480525870219408398012002829112863175041709512032251930709608035158747101960447898838942705485214217426612863919268749874079707310181890737049603255938886865558759802593500502795018952114650332765839003032013708006750600413455628536259,65537,860106576952879101192782278876319243486072481962999610484027161162448933268423045647258145695082284265933019120714643752088997312766689988016808929265129401027490891810902278465065056686129972085119605237470899952751915070244375173428976413406363879128531449407795115913715863867259163957682164040613505040314747660800424242248055421184038777878268502955477482203711835548014501087778959157112423823275878824729132393281517778742463067583320091009916141454657614089600126948087954465055321987012989937065785013284988096504657892738536613208311013047138019418152103262155848541574327484510025594166239784429845180875774012229784878903603491426732347994359380330103328705981064044872334790365894924494923595382470094461546336020961505275530597716457288511366082299255537762891238136381924520749228412559219346777184174219999640906007205260040707839706131662149325151230558316068068139406816080119906833578907759960298749494098180107991752250725928647349597506532778539709852254478061194098069801549845163358315116260915270480057699929968468068015735162890213859113563672040630687357054902747438421559817252127187138838514773245413540030800888215961904267348727206110582505606182944023582459006406137831940959195566364811905585377246353->31872219281407242025505148642475109331663948030010491344733687844358944945421064967310388547820970408352359213697487269225694990179009814674781374751323403257628081559561462351695605167675284372388551941279783515209238245831229026662363729380633136520288327292047232179909791526492877475417113579821717193807584807644097527647305469671333646868883650312280989663788656507661713409911267085806708237966730821529702498972114194166091819277582149433578383639532136271637219758962252614390071122773223025154710411681628917523557526099053858210363406122853294409830276270946292893988830514538950951686480580886602618927728470029090747400687617046511462665469446846624685614084264191213318074804549715573780408305977947238915527798680393538207482620648181504876534152430149355791756374642327623133843473947861771150672096834149014464956451480803326284417202116346454345929350148770746553056995922154382822307758515805142704373984019252210715650875853634697920708113806880196144197384637328982263167395073688501517286678083973976140696077590122053014085412828620051470085033364773099146103525313018873319293728800442101520384088109603555959893639842091339193857485407672132882577840295039058621747654642202620767068924079813640067442975 EQUAL,8028659553836119901593655311677865290672387540027895708985570867455842278776015838142490556122515317003830575671206217290165955723210315889275621408086645995280770696135307020454887097794294273869941097888549275028604248332746117479367032100139091095818169444690976206636597409322539276252570779516636180497560345090851316373570301807158645002654208816162902430571101092599540795501152368695431168224953320283502815852695423193526255836776240019085157444254721864134058745605280085897450952937893645487302683006269553010996013513395044612932182772364336368242146044741660443063207438830622376694839772096688572619877,65537,21052260334349247097390263197515551021430500095747078612475171670547647379514624742422155617118382403386162585789957995106937640909858927441120214136124618650916253946431099279059999234690271861285094667690686174087562943995337813383652323725628494261414287817117703355799303086256914782640807165021059760198249458510362432176960683009890989990086614909076853502936665842869163947730574085863127445475967466399017447434906719734480523659879746056728772390182338236187070557277461449143752467418310063647027554915213099799725713708651142505590086828211040619445941301844994775362846837122335522584661592447560060751169->986236757547332986472011617696226561292849812918563355472727826767720188564083584387121625107510786855734801053524719833194566624465665316622563244215340671405971599343902468620306327831715457360719532421388780770165778156818229863337344187575566725786793391480600129482653072861971002459947277805295727097226389568776499707662505334062639449916265137796823793276300221537201727072401742985542559596685092673521228140822200236743113743661549252453726123450722876929538747702356573783116197523966334991563351853851212597377279504828784687920949198341066450537230593608440475006386024448307924665012521692416658191 url.conf中添加: [URL] PREFIX,https://account.jetbrains.com/lservice/rpc/validateKey.action PREFIX,https://dbeaver.com/lmp/checkLicense PREFIX,https://store.smartgit.com/check 然后打开Clion,Activate CLion-License server,在Server address中填入https://jetbra.in 激活完成后就可以愉快地使用了:
云服务器迁移小记
转眼间三年前买的服务器就要到期了,最近阿里云99元可以买2C2G3M的服务器,新老同享,正好可以升级一下。 但旧服务器上有很多杂七杂八的东西,如果能直接原封不动的搬到新服务器上就好了。 最近大模型发展很快,阿里云也有了自己的阿里云AI助理,这次迁移是全程通过它的指导下完成的,总体来说准确率还是非常高的。 可以看到它给出的建议是先创建一个自定义镜像,我便先用老服务器创建了一个镜像。结果过了一个周末,消耗了我仅有的五毛钱额度,镜像的成本还是挺高的 接下来就来买新服务器吧。在活动购买页面的操作系统下拉栏中并没有自定义镜像的选项,可以先随便选一个操作系统购买: 买完以后关机,然后选择更换操作系统: 一开始在自定义镜像里并没有发现我的镜像,搞了半天才发现镜像需要在同一个区域才能使用。我的老服务器在张家口,而新买的在深圳,我现在需要把镜像复制到深圳来: 这一步耗时较久,我大概等了二十分钟,复制完成后就可以正常使用自定义镜像了: 安装完成后配置了安全组,但直接使用ssh却连接不上,用阿里云默认的Workbench连接提示可能是服务器禁用了密码登录。 参考 使用密码无法登录Linux云服务器ECS的原因和解决方案_云服务器 ECS(ECS)-阿里云帮助中心,用VNC登录查看/etc/ssh/sshd_config,发现PasswordAuthentication已经是yes了,遂: service sshd restart 成功登录: 很好,一切都像旧的一样~
Wi-Fi,Wi-Fi(三)——deauth与钓鱼
deauth deauth,全称deauthentication。在无线网络中,“deauthentication(解除认证)“是一个正常的过程,用于断开客户端与无线接入点的连接。例如在关闭计算机或移动设备的无线网卡,或者离开无线网络覆盖范围时,通常会发送一个deauth帧来通知接入点。 然而,deauth也可以被滥用来进行攻击。在一次deauth攻击中,攻击者会冒充无线接入点或者客户端,向另一方发送deauth帧,以强制断开他们的连接。 Evil Twin Evil Twin是一种网络攻击方法,通过这种方法,攻击者创建一个与合法WiFi接入点几乎完全相同的虚假接入点。这个假的接入点具有与实际接入点相同的SSID(无线网络名称)和有时甚至相同的MAC地址。这使得无线客户端设备很难区分哪个是真正的接入点,从而可能错误地连接到攻击者创建的假冒接入点。 Wifiphisher Wifiphisher是一个用于进行红队渗透测试或Wi-Fi安全测试的恶意访问点框架。使用Wifiphisher,渗透测试人员可以通过执行有针对性的Wi-Fi关联攻击,轻松地获得针对无线客户端的中间人位置。此外,Wifiphisher还可以用于对连接的客户端发起定制的网络钓鱼攻击,以捕获凭据(例如来自第三方登录页面或WPA/WPA2预共享密钥)或感染受害者站点的恶意软件。 Wifiphisher被设计在运行与Linux系统,且主要在Kali Linux上进行调试,所以我也打算在Kali中安装。 推荐使用官方安装方法,不然可能会存在各种意想不到的问题: git clone https://github.com/wifiphisher/wifiphisher.git # Download the latest revision cd wifiphisher # Switch to tool's directory sudo python setup.py install # Install any dependencies 实际上,使用官方安装的方法,在后续使用上也会存在各种各样的问题,目前测试下来最稳定的安装方法是: apt install wifiphisher less is more. Wifiphisher自带了四个模版,但都是英文界面。好在它支持自定义模版,将自定义模版文件夹放入以下目录即可应用: /usr/local/lib/python3.11/dist-packages/wifiphisher-1.4-py3.11.egg/wifiphisher/data/phishing-pages 直接运行wifiphisher: wifiphisher 根据提示进行操作即可。 受害者视角: 此时wifiphisher将会受到客户端在钓鱼页面输入的密码: 后记 本次测试一开始用的是小米Wi-Fi,deauth攻击完全失效,根本不会影响客户端和原接入点的连接,后来换成光猫自带的Wi-Fi才实验成功。通过控制变量法不难看出,稍微好一点的无线路由器存在某种防御措施,可以让deauth攻击的效果大打折扣,甚至完全失效。 本来以为客户端在断开与原接入点连接时,由于SSID相同,会自动加入钓鱼接入点,但实际测试下来并没有,猜测可能的原因是mac地址不同,不知道如果修改成一样的mac地址会不会让客户的自动连接钓鱼接入点。 此前曾经听闻江湖传言,可以通过无人机搭载近源渗透设备进行类似攻击,一直对这类手法心驰神往,不过这次实验过后让我对这类无线近源攻击的实用性产生了一些怀疑。 无线攻击对信号的要求非常苛刻,一墙之隔就能让普通设备信号大打折扣。攻击者设备的距离几乎不可能比正常接入点与客户端的距离更近,所以对攻击设备的信号收发是极大的考验,像我的TL-WN722N在实际情况中基本是不可用的。而且随着技术的发展,目前可能除了运营商的光猫,市面上绝大多数Wi-Fi都存在某种防御deauth的措施,这也让deauth在实际环境中的变得非常鸡肋。 不过反过来说,只要你有一个大功率的网卡,目标Wi-Fi又正巧没有防御deauth的措施,通过之前的受害者视角可以看出,deauth的作用是立竿见影的。就算不进行Evil Twin,只是单纯让人上不了网,也挺有意思的😏。
小镇做题家——HackTheBox-Devvortex
User Flag nmap 10.10.11.242 -A 开放了了22和80端口,根据提示添加个配置: echo "10.10.11.242 devvortex.htb" | sudo tee -a /etc/hosts 访问web: 看了一圈,没发现什么特征,网站也没什么功能点,还尝试了爆破常见目录、JS找敏感路径,无果。 这里卡了很久,逃课看了一下一步,居然是爆破子域名,而且要用到vhost爆破: gobuster vhost -u http://devvortex.htb/ -w /Users/fox09/Downloads/subdomains-top1million-5000.txt --append-domain 查了一下,有别于DNS爆破的直接向DNS服务器通信,vhost爆破是通过HTTP请求不同的子域名,再根据响应判断子域名是否存在。 我分别尝试了dns模式和vhost模式: 可以看到只有vhost模式能爆破出dev.devvortex.htb。 但我有点纳闷,/etc/hosts都是我自己配置的,这个子域名并不在配置中,对它进行请求,不也需要先经过DNS服务器查询到相应的IP后才能进行通信吗? 我在hackthebox官方论坛上也看到其他人有着同样的疑惑: I am somewhat confused on enumerating domains. You always have to define any htb domains you find manually in your /etc/hosts file so how exactly does enumerating domains work with an htb box? Great question. Answer is virtual hosts. 有人这样回复: Simplified explanation: Virtual hosts are another website hosted on the same server as the main site....