• 同分异构,D/L,R/S,相对构型,绝对构型,到底是什么?

    缘起

    自学真的很麻烦。最近在自学有机化学同分异构,发现网上中文资料能找得到的零零碎碎。而个别能找得到的文章亦有不通之处。查了很多资料(文末列出)并整理出这个笔记。

    强烈推荐阅读 参考引用 内容,讲的很清楚。

    并且我要指出:这里这个豆瓣文章没讲清楚,读着甚是矛盾。在我对各种概念不清楚的时候让我走了弯路。

    当然本人不是化学专业学生,不是食品医疗相关学生,甚至不是大学生。没有系统学习,有谬误之处希望指出。

    (诶?这不是一个搞计算机的学渣的博客么?

    D/L 相对构型

    “相对构型好比知道张三李四是一男一女(而非两个男的或两个女的)但不知谁是男谁是女;绝对构型好比知道张三是男,李四是女。”

    ——SBC123 (原贴见参考引用)

    说到相对构型, 就不得不提甘油醛费歇尔投影式。(如图)

    这个规矩简单粗暴,就是尽可能把最高化合价的碳放在上面画出一个规范的费歇尔投影式。再看手性碳原子,如果羟基在右边那就是D,在左边就是L。如上图甘油醛的费歇尔式:

    1.醛基碳氧化价最高,画出规范费歇尔式。

    2.横向羟基在左侧为L-甘油醛,羟基在右侧则为D-甘油醛。

    所以这个和旋光的没有关系↓图中都是D,但是旋光不同。

    那个时候并没有能力直接测定其真实构型能力,其它分子都是以D- L- 甘油醛为标准,人为规定的。直到后来20世纪50年代才有了能力通过X射线了解真正的构型。因此这里的也称为相对构型。然而这也就带来了局限:并不是所有分子都可以以甘油醛为标准,DL构型标准对于多个手性碳也会很麻烦。例如 R-环戊烯-3-甲酸

    那么我们拓展到果糖:

    如图,我们已经有费歇尔投影式了,C-2是一个羰基,氧化价最高,放上面。然后关注距离羰基最远的那个羟基,确定它的构型。

     

    R/S 绝对构型

    在20世纪人们有能力通过X射线衍射技术直接确定分子中原子和基团空间位置后,才得到了绝对构型。

    至于绝对构型的R/S判定,则必须要了解序列法则我认为wiki讲的比我好,简而言之就是对比原子序数就越优先,遇到相同的就“递归”相同的那个(向下一层),双键嘛就当连了两个。四面体嘛,把优先级最低的放后面,正面就三个原子,优先级从大到小顺时针就是R逆时针就是S。

    这也和旋光性没有直接联系。

    旋光性是它对于偏振光的偏转,左偏还是右偏。而构型一定要用X射线衍射确定。

    参考引用

    https://chem.libretexts.org/Courses/Purdue/Purdue%3A_Chem_26200%3A_Organic_Chemistry_II_(Wenthold)/Chapter_22._Carbohydrates/22.03%3A_The_D_and_L_Notation

    ↑英文,讲的很好了。我相信看完这个应该足够。

    http://class.ibucm.com/yjhx/3/right5_32.htm

    http://class.ibucm.com/yjhx/3/right5_31.htm

    ↑北京中医药大学的……不知道是什么,挺有用的。

    https://zh.wikipedia.org/wiki/%E8%B4%B9%E6%AD%87%E5%B0%94%E6%8A%95%E5%BD%B1%E5%BC%8F

    https://zh.wikipedia.org/wiki/%E7%94%98%E6%B2%B9%E9%86%9B

    ↑wiki

    https://share.zjuqsc.com/Files/201210/b68a86e3c0ccf0d2cabfb5c1a05b523d

    ↑貌似是浙江大学某处的课件ppt

    https://www.dxy.cn/bbs/newweb/pc/post/14779993

    ↑丁香园某帖子

  • Via浏览器插件小漏洞以及利用

    缘起

    Via浏览器大概是我最喜欢的浏览器,也一直是我一直用着,用了几年的一个浏览器。曾经也用过夸克等等号称轻量的浏览器,功能是不错,然而简约的外表背后谁知道还留了一(几)道。

    至于Via小脚本一直很有特色,到2019年5月份才动手打算自己写一点什么。但是开发过程中发现任何站点是可以直接安装插件,这个过程不需要用户参与太多,仅仅提示安装上了。插件js可以在任何页面执行,这造成了一些安全隐患。比如表单咱可以做点手脚,劫持登录信息,装js矿机,或者上个beef之类的。

    可以说这个文章没有什么溢出,没有什么二进制,没有怎么逆向,全程简单web,没有解密,只能水坑,没有什么价值。写着玩玩。

    过程

    首先,分析了一下官方安装插件的站点页面,没什么东西,审查元素,安装按下后执行operate()函数,还有一些一眼就能看出是base64的东西,核心部分也就一个JS,关键的js。

    格式化后如下:

    至于base64可以不看了。捋了一下:

    大概就是把一个插件json字符串base64一下,丢给window.via.addon(),检查状态,就这样。至于json,主要是code,是已经base64的js,还有url,指定了工作的域名,* Bedeutet alles。

    咱们来照猫画虎,按瓢画葫芦

    写一个html,里面就运行一js:(也是点开看完整)

    直接复制过来,base64代码

    如图,直接访问地址就装上了,顺道还已经执行了。

    这里还有一个beef:

    解决方案

    我能想的到的,大概就是给插件加开关。默认禁用,除非用户手动打开。不知道实现是否困难?

  • 宿舍两则

    (一)

    深夜;海潮褪去了,露出的肥沃草地在远处有所谓悠扬的马头琴嗡嗡作响。我立在海边的石头上,是一座不发光的灯塔,闭着眼安静的醒着; 他却立在山峰,是雕像,在雪中亘古不变。
    地铁经过的声音是有刺的,鞭打,劈头盖脸的撞向海涯,侵入我的皮肤,肌肉。血液流入大海,皮肉在哭泣;隔壁人群不知为何突然哄笑,又像蟑螂破音狂笑哈哈哈着四散逃窜,扑棱,奔腾在呼伦贝尔大草原上带着风呼啸疾驰而过。悬停的直升机的白噪音让我安宁,而对面他的卤素灯却让大海一直亢奋不眠。风打碎波浪,略快又不失节奏拍打着海崖,偶尔发出短促的呻吟。
    仿佛,也能闻到海的腥味。

    (二)

    凌晨三点的寝室,那是什么?
    那,悠长,
    悠长,又有哨声般尖锐高亢,
    高亢,高高举起,狠狠向下刺透纸一般的楼板。
    哦,哦,是谁?是谁那香甜的梦?
    又是谁,在那梦和星夜的迷途搁浅,
    伏在那小小的床里,张着充血通红的大眼,
    却依旧找不到那条去梦里的路呢?
    (Oct.19 凌晨3点

  • PHP请不要再用这个函数获取真实IP

    我已经有很长一阵子没有写过技术文章了,但是今天既然遇到了还是写了吧。

    有很多人遇到过PHP获取IP的问题,然后就查找相关函数。无奈有些函数,虽然想法是好的,但是存在非常严重的问题

    这个函数流传之广至于我在实习单位就见过不少次;流毒之久已经见了好几年;而毒害之深已经不是只言片语能说明白。

    废话不多说,请看:

    这是最经典的版本(还有好多变体万变不离其宗,不挂了)。各位觉得这没有问题?或许获取这些可以做到获取代理后面的用户IP,但是各位也要知道X-Forwarded-For等等这个东西是在Header里的,这势必就有一个问题:可以被轻轻松松伪造。

    这会有什么问题?

    1. 有人可以用来伪造自己的地址,常用投票刷票。开发者以为用了这个就能获取真实IP避免刷票,万万没想到居然成为了刷票漏洞
    2. 有PHPer用这个函数获取IP限制访问频率,大家也知道这样根本没有意义。个别场景这种方式可以把正常IP丢进黑名单,做到不打瘫服务器正常用户就无法访问
    3. 最可怕的:有人用这个函数获取IP然后直接放进日志。但是过滤SQL注入字符的脚本只检查POST和GET,结果被IP注入。同时有一部分waf凑巧也不查Header……导致被注入,攻击者拿到了数据库重要数据

    所以各位PHPer注意,这个函数有缺陷。

    正常情况下使用代理访问的用户少之又少,甚至可以忽略。而真正想用代理隐藏自己的,也会想办法让你获取不到。投票系统最好做到依靠别的平台确定参与者身份;限制访问频率最重要是到你服务器的最后的IP和代理也无关。

    建议直接获取REMOTE_ADDR。如果真的要获取X-FORWARDED-FOR,也请过滤,并且考虑被伪造可能。

  • 黑灯漫谈

      空气是如此的通透,就像空气一样。清亮的月光也毫不散射,却又被庭院里那些带刺的野生枝蔓打的支离破碎,散落满窗满地。
      记得歌德改编过一首《Heidenröslein》(野玫瑰,开心也可以叫“荒野小玫瑰”),而后被舒伯特了改成了一首歌。而内容我曾一开始以为是“略有不妥”的爱情故事,而后才慢慢觉得这是一场暗红色的悲剧:男孩要采它,野玫瑰说:“我要刺你,让你常会想起我,不许轻举妄为。”——男孩到底还是很暴力的采了。结果是悲剧,双方都要承受痛苦。
      倒是好几年前某个IT群里半夜偏题聊到女人,某个人插科打诨了一句“学校里的女孩就像银行里的钱”。现在想想这话虽然没品的很,但是想表达的意思大约和歌德有几分相似。只不过少了花香,多了铜臭。当然也不能奢求他们,996为了钱,21点以后街头他们能搭上话的女人也很有限。
      按阶级说,我算是一屌丝,卡在中产和底层之间;按文凭说,我还是一屌丝,这种“任人唯贤”的模式混不下去了,可见不贤;按生活状态说,我就是一屌丝,每天从床上翻下来就要考虑早饭,午饭,晚饭,还要上学,写作业。有人说:“你该找个女朋友”,这位朋友,我生活已经如此水深火热,找个能“赴汤蹈火”的女孩是不是痴人说梦?嗯?
      我原来喜欢一个人独自出去散步的,听听行道树的交头接耳,走路灯光下的一次次的漂洗,听江浪拍打岸边的混凝土,这对于我来说都是一种幸福。但是我听不懂外邦树的语言,灯光也太让人犯困,就连池塘腥味也很难闻到。好在这里有风,有铁路,有鸟,有老鼠,有飞不完的蒲公英,墓地里也有讲外语的猫(或许因为文化差异甚至看猫打架架势也有所不同)所以这里,还是很热闹。
      我们叫这里本地人外国人,本地人叫我们外国人。总之,所有人都是外国人,所有人都是流浪者,而把暂时的容身之所称为家。
      2019年5月3日凌晨。(因为各种原因,本文一年没发出.经过修改.) 

  • 在城里的路灯下

    路灯下的闲人

     路灯杆的皮上贴着各种各样的小广告,所以它不孤独。为什么?因为每天晚上都会有人贴,所以每天晚上也都会有人刷上油漆。一天轮两班,轮着给他加厚皮。冬天要来了,贴小广告和刷油漆的斗争便是一种美德,一种温情。对于不知道如何过冬的人,这听着就赚。
      当然不只是他们,每天晚上我都会陪它一会,说说话,听听白天城市的声音。看着他高耸的灯头埋在树里。即便是冬天,他们也会和树交头接耳地,把一个个城市里的八卦传的满城风雨。
      好了,今晚就在他的灯光下。看着头顶一个个梧桐树枝叶中通往城市白天的洞,洞里时不时传出人们的窃窃私语,汽车路过,或是吱嘎作响的自行车的声音。
      而我,则是路灯下的一摊积水。提着一个空的塑料饮料瓶,挂着早已经没电的耳机。坐在路灯下白天的喧闹里,怎么晒也晒不干。(休止千鹤 2018.12)

    路灯下的幽灵

    冬天,雨沥沥下着。
      那些骑着自行车电动车的黑影就这样,从黑漆漆路的尽头出现,从灯光下经过,又从远处的黑影中消失。
      路灯则用钢管支撑的头颅,用炽热的心,在雨水中安静的照着,把一个个黑影照亮,照成或红或紫,穿着雨披的一个个彩色的幽灵。
      阳光不属于这些人们。他们吃着糊弄的外卖,喝高糖的饮料,肺里是致癌的空气,看着垃圾网络信息,住着昂贵的空中楼阁,每天熬夜到下半夜,心里总渴望着发财——每个人每天都很累,每个人活的却又糟糕。他们喜欢荧光灯,荧光灯里不是有工作的安抚就是家的温暖。
      穿过一个又一个明亮气派的房产中介和培训机构广告牌下,忙忙碌碌的他们没有人知道他们从哪里来,又要到哪里去。
    (休止千鹤 2019)

    路灯下的水泥

    一样的沉默,一样的寡言。
      在每个夏天深夜里,他繁茂的枝叶轻柔的搂抱着路灯。似乎爱恋,却又贪婪。等着风来,听着雨落,望着那一排一排的树木和电灯。窃窃私语,任时光如细沙,一点一点漏进了钟表,溺过了机芯。
      然而转眼却又已到了冬天,他拥抱着树,树也静静地感受着他37摄氏度的体温,像老朋友一般静听着他怀里的故事。它送走了一个夏天浓密的风云,于是他们沉浸在了冬日的雾霭中。棉絮一样,塞满了他的肺。
      他再也没说一句话。天亮的时候,人们发现他成了一块水泥墩,裂缝里的草上结着一层白霜。每当风吹过的时候,人们总能听到那冰冷凄惨的回声。(休止千鹤 2019)

    路灯下的路人

    ………他坐在马路牙子上,熄灭了手里的烟,随手丢进了路边路灯灯光照不到的窨井。“你知道吗,你让我想起我两年前的样子。”他说“看你这样,一个人在一个城市,野心大又迷茫。”他掏出了皱巴巴的烟盒,熟练的掏出一根。“你要吗?”他问道。“不了,我不抽烟。”我说。他又笑了:“真巧,我两年前也不抽烟。和你一样酒吧,网吧都没去过,我连酒都不敢喝。你看我现在呢?去酒吧,一晚消费几万,找个女的,再过一晚上。”
    说完。他深深的吸了一口不知什么时候点上的烟。“嘿呀,我在上学的时候还喜欢过那么一个…”他话匣子聊到感情便关不上了,我只能在昏黄的路灯光下听他叙旧。他染黄的头发已经开始掉色,在路灯光下闲的十分不自然。“你谈过恋爱吗?”这一问很突然。
    “有过。”
    “现在呢?”
    “没了。”
    “为什么啊?”
    “没为什么。”
    他笑了一下
    “那你追回来啊?”
    “算了。”
    “你会遗憾一辈子的。”
    “不在一个城市,我也不想耽误到别人…”
    “你以后就会知道,女人是明码标价的。只要你有钱,就自然会有女人。任你选。”
    “我不想那样。我只想要我想要的那个。”
    “那你现在就是没事就在家看x片打FeiJi吧?”
    “……”
    “我能理解,但是她们以后会变得明码标价,这个鬼屌社会你没钱才是耽误别人,也耽误你自己。就算她们自己不明码标价,社会也会让她们明码标价。你要珍惜那些还没有明码标价的时候,花钱买不来的。”
    “但是我……”
    “我也不想这样,但是没办法。”说完,他猛的吸了一口烟,红色的火光像受了刺激一样猛然一亮,然后带着小半截没烧尽的烟一起又扔进了下水道。
    ……………
    (2018.11.18凌晨两点。场景虚构,聊天内容真实。观点并非我的观点。——休止千鹤)
    《路灯下的路人》

  • xiunoBBS出现 Server Response Empty! 错误捉虫记

    很有没有写文章了。感觉也没啥好写的。博客偶尔出故障上来看看折腾下,故障拖久了bai度居然还把我删了。 最近在布置论坛的问题。在服务器上布置的很好,一点问题都没有。xiuno4就跑起来了。 但是这几天我想在自己的Manjaro上(打肿脸充Arch(其实这是祸根))部署xiunobbs,在设置数据库时却遇到了Server Response Empty! 诶这就很讨厌……但是貌似不止我一个人这么倒霉,去搜了一下。别人建议换服务商,,诶大兄弟我自己开发环境您要我换电脑?好吧,开始干活。 等不及的,请直接去最后看解决方案。

    正文开始

    机器也没有xdebug。手动进去,进install/index.php打断点。发现 install_sql_file() 这里断了。跟进去,这个函数是拆分install.sql导入数据库建立表结构的。

    手打断点。

    到了这句。

    很明显,只有db_exec返回bool(false)才会触发。于是我试了一下子,诶?返回的int(0)然而不能触发。折腾了半天,突然想起这是一个循环。

    跟进db_exec函数,看看它怎么写的:

    哦?继续打断点,当即对$n进行输出。

    最后一个……我,看见你了。鬼头鬼脑的东西。

    这里的false触发了message函数,然而message函数在参数为-1情况下会exit。然而并没有$errno, $errstr。所以返回empty。

    这很可能是出错但是没有返回任何错误信息!!

    带着返回值和$sql一起输出看看,,很容易就发现了这句:

    这里反回错误。明显,建立表bbs_forum失败了。赶快去mysql看看。

    果然这样!没有bbs_forum!!

    于是拖进mysql执行试试。

    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘rank tinyint(3) unsigned NOT NULL default ‘0’,

    threads mediumint(8) unsigned N’ at line 5

    发现错误。rank关键字污染。

    原因找到了:

    因为我用的Arch,Arch特性是软件都是最新版本。结果我安装的就是:

    Server version: 8.0.12 MySQL Community Server (GPL)

    这个版本和前面的版本有很多变化。

    估计是rank成了关键字

    那么解决方法也简单,用区别就行,把rank改成rank.

    所以解决方案:

    进install/install.sql,修改bbs_forum表结构如下:

    其实就是rank加了两个点…

     

  • 2017.7.14 Restkhz一周年

    今天,先给法国的革命者发一个贺电。其次,学校补课。于是我用一个kindle写下了这一篇文章。这篇文章只是随便说说,不仅可能存在错别字,病句,而且并没有什么技术价值。不喜欢的就不要浪费时间了。

    这个时候,又不知道说什么了。一周年,一周年经历了什么,我不知道。因为它们都淹没在了单调的生活中。但是这个博客,从芝加哥回到中国。理应欢迎,就在那几分钟后,站点就封禁了。

    工信部要求我备案。

    备案?好,我去做就是了!谁知道,手续一堆.当然,无论是从年龄还是收入,我都不行。年龄不够,没有公章,没有收入,内容不合适。

    于是我的整站代码和数据告别了它的祖国。去了地球上另一个地方。并且,为了躲开我祖国的各个ISP用一些不太好的无耻手段(我好奇在六一法颁布后怎么还这么嚣张,国企不受法律管控么?)插入一些花花绿绿的流氓广告,加上了SSL。

    回头生活,面对我的是高三生活。

    如果我选择职校,或许我是一个学霸。毕竟一进来就会写一些小程序,会建站,操作Linux做做运维,写写PHP做一些网站,还能弄弄CTF题目什么的,甚至能做一些简单的安全审计。打个比赛让领导脸上有光也是绰绰有余.并且,我的中考分数在这个城市里不算低,至少,我还能挑几个高中上而不至于就那两个不得不上。

    没有如果。

    就是因为中考分数,我选择了高中。对,只是因为分数。我成了它的奴隶。我在其中选择了高中的痛苦。而在痛苦和挫败中,我选择了继续。继续——活着。我习惯了倒数,习惯了批评(从小学开始)。我知道这个制度是失败的,同时,我在这个失败的制度中是失败的。我选择了更加失败的对策:屈服,来成为知道失败的人。我很无奈。

    国家制度只是一种为了自己服务的东西。就像《1984》中的,党只为自己服务。其实不管是那个国家哪个制度(这里面肯定没有可爱而民主的中国)都只是为了自己的运转和生产。超生命体就是这种东西(《失控》的一个论述点)。国家在意的和百姓的幸福指数恐怕关系不大。你只听过GDP,然而没有幸福感的指数。一切的利民的政策更多是为了社会发展和稳定,个人的自我价值几乎是没有的。“个人的价值体现于对社会的贡献”这句话是社会说的。就像刘鹏说你的价值是对刘鹏好一样。我也可以告诉你,这一切只是为了生存,你也是为了这个,在出卖自己的灵魂。活在一个谎言的世界,心甘情愿的被剥削。

    所以不要骂这里的(号称民主的)教育是怎么样的没个性,它本来目的就不是这个。只是为了把人口压力变成优势,你的个性不是优势,反而会破坏它的稳定。

    所有的谎言破了,你知道你是什么了。不,你知道你在这里,什么都不是。你是生物进化的一个棋子,金融生态中的一个贫穷无力的单元,社会的肠上皮细胞,政策的试验品。而且,没谁尊重你。

    这就是人。蚂蚁一般。

    于是,这个博客的主人,碰碎了这个谎言和梦境,却跌进了空虚的地方,内心惶恐,无药可救。继续靠着倒数的排名,存在在一个谎言做的天花板的笼子里,靠着自己所谓的优势,继续麻痹自己。

  • Orange Pi的开坑及简单的zero芯片温度测试

    入手OPI

    在几个月之前我买了两个Opi。价格相当便宜,适合穷逼学生党,是Rpi良好的替代品,一个lite,另一个是zero。系统支持不太多,然而自己编译也是可以的。

    其中还是又坑的。lite的电源线是他们设计的,不是那根OTG。要特地买一条他们的电源线。然而zero又是OTG(搞不懂为什么这样???)

    另一方面的坑就是这玩意发热也远高于Rpi所以必须要一个散热片,官方的散热片,别买,没用。H2+,H3的芯片简直就是电炉。没散热一会飙到75℃。官方散热片就一个平的石墨片。

    顺便提醒,建议买一个USB转TTL的板子,尤其是Lite。没有有线网口的。

    买东西,一定要看它还没有什么

    Orange Pi Lite: 4核1.6Ghz,512M内存。2USB,板载wifi,红外,麦克风,OTG。(无有线网口)。带TTL。69¥

    [Read More…]

  • 2017.7.7的一些杂碎记录

    很久没写博客了。这篇文章打算在7.14(一周年)发的。然而想想还是算了。马上学校开始补课了。

    服务器换了,也必须换了。原来的服务器在西雅图,丢包已经到百分之六十几。根本打不开了。不知道这个”国域网”怎么想的。买回阿里的服务器吧,域名要备案。一些原因,我没这个条件。于是国内的阿里服务器买了也就泡了。脑洞一开,弄了一个新的vps。好了,现在一穷二白。几乎是最低配的服务器。我也不想说什么了。alipay现在空荡荡的是个位数了。

    好了,我(和谐某个语气词)高三了。以后博客更新频率不可避免的更低。今天过来维护了一下,前几天做了一个全站SSL。避免某些偷窥的机器吧。顺手改了改很久以前的错误。树莓派NAS可以有11.5MB/s的速度。

     

    这几天做了一个大玩意。开始构建一个PHP框架(其实MVC已经做完了)。由于代码乱风格丑,于是它有一个亲切的名字:Ugly PHP Framwork。简称UGPF.

    下图是首页。缺陷问题一堆一堆。

    打算把它耗完。URL风格是学CI的(类似ugly/index.php/Controller/Action/P1_name/P1/P2_name/P2)。这很要命。而且处理的很差。比如遇到根目录不是该框架又没有index.php就完全无法处理了。此时正在考虑在入口文件中获取根目录和URL做一个对比。然而这又有缺陷……明显这个index.php是不好省了……

    好吧,这个框架我会打磨完,然后推翻重构。=_=

    剩下的时间我应该去写作业。

    没几天就要报道交作业了。正如我的知乎签名所说:

         “这个人很懒,什么作业都没有写”

    ——休止千鹤