<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Selukwe的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/Selukwe</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; Selukwe]]></copyright><item><title><![CDATA[[解决方法] 连接深信服Easyconnect之后无法代理抓包]]></title><link>https://blog.csdn.net/Selukwe/article/details/106137196</link><guid>https://blog.csdn.net/Selukwe/article/details/106137196</guid><author>Selukwe</author><pubDate>Fri, 15 May 2020 11:08:33 +0800</pubDate><description><![CDATA[问题描述：

    在物理机中使用深信服 Easyconnect 连接了VPN之后，使用 burpsutie 等工具，开了HTTP代理便无法访问到内网网站，关闭代理之后就可以，造成无法使用bp抓包。



解决方法：

    1、使用物理机，连接上Easyconnect客户端；

    2、使用虚拟机，将网络设置成NAT模式；

    3、在虚拟机中使用burpsuite等工具，就可以正常设置代理和抓包，可以抓到内网网站的数据包。
...]]></description><category></category></item><item><title><![CDATA[[hackme] helloworld]]></title><link>https://blog.csdn.net/Selukwe/article/details/104627688</link><guid>https://blog.csdn.net/Selukwe/article/details/104627688</guid><author>Selukwe</author><pubDate>Tue, 03 Mar 2020 10:59:17 +0800</pubDate><description><![CDATA[下载地址：https://hackme.inndy.tw/static/helloworld



解题过程

方法一：

1、拖进IDA，F5看代码。



2、从代码很容易就可以看到，有个if进行判断，如果n是314159265，就可以输出flag。





方法二：

1、从汇编里面，分析flag初始时的值是什么。





2、从代码里面可以看到，flag的每一位与n进行异或运算...]]></description><category></category></item><item><title><![CDATA[[hackme] login as admin 1 && login as admin 1.2]]></title><link>https://blog.csdn.net/Selukwe/article/details/104613777</link><guid>https://blog.csdn.net/Selukwe/article/details/104613777</guid><author>Selukwe</author><pubDate>Mon, 02 Mar 2020 16:15:33 +0800</pubDate><description><![CDATA[题目链接：

https://hackme.inndy.tw/login1/



代码分析

1、过滤了空格，但可以用/**/绕过





2、题目不再提供表名。





3、从数据库查询之后，不会回显数据库中的内容（也就是无法用union select回显出来）



但跟上一题一样，构造出SQL查询之后，只要isadmin值为1，认为是admin，即获得flag1值。



解题...]]></description><category></category></item><item><title><![CDATA[[hackme] login as admin 0 && login as admin 0.1]]></title><link>https://blog.csdn.net/Selukwe/article/details/104607688</link><guid>https://blog.csdn.net/Selukwe/article/details/104607688</guid><author>Selukwe</author><pubDate>Mon, 02 Mar 2020 11:21:37 +0800</pubDate><description><![CDATA[题目链接：

https://hackme.inndy.tw/login0/





前期思路：

提示漏洞是SQL注入，还有一个guest/guest账号可以登录，要用admin（或者说admin权限）来登录。



解题过程：

1、尝试了单引号注入，发现前端可以将sql语句输出，并且字符转义了。





2、一波尝试注入之后，直接去看了代码。发现后端并没有用addslashes对所...]]></description><category></category></item><item><title><![CDATA[[Jarvis OJ] FindKey]]></title><link>https://blog.csdn.net/Selukwe/article/details/89510556</link><guid>https://blog.csdn.net/Selukwe/article/details/89510556</guid><author>Selukwe</author><pubDate>Thu, 25 Apr 2019 10:29:37 +0800</pubDate><description><![CDATA[题目链接：findkey.31a509f4006ba41368dcf963762388bb

解题思路：

1、不是ELF文件，放到Linux下也跑不动，之后查了资料发现有个“斯托夫文件分析器”可以用来判断文件格式，结果发现是个python编译的程序。





2、扩展名改为 .pyc，百度一个python反编译，我用的是https://tool.lu/pyc/，直接把文件上传上去就能看到反...]]></description><category></category></item><item><title><![CDATA[[61dctf] stheasy]]></title><link>https://blog.csdn.net/Selukwe/article/details/89502314</link><guid>https://blog.csdn.net/Selukwe/article/details/89502314</guid><author>Selukwe</author><pubDate>Wed, 24 Apr 2019 20:43:03 +0800</pubDate><description><![CDATA[题目下载：ctf2.b93676be23733b2fcda3988c1133c1c1

解题思路：

是个 Linux 下的 ELF 文件，拖到 IDA 中分析，定位 main 函数，F5 看代码。



逻辑很简单，先输入 flag，然后重点在 if 语句的判断，也就是 sub_8048630 函数是对 flag 进行检查，双击进去。



s 就是输入的 flag，v1 显然是 flag 的长...]]></description><category></category></item><item><title><![CDATA[[BugkuCTF] 入门逆向]]></title><link>https://blog.csdn.net/Selukwe/article/details/88429093</link><guid>https://blog.csdn.net/Selukwe/article/details/88429093</guid><author>Selukwe</author><pubDate>Tue, 12 Mar 2019 21:11:00 +0800</pubDate><description><![CDATA[题目链接：入门逆向

解题方法：

1、拖入 IDA 中，定位 main 函数，发现有许多 mov 指令，66H 是 'f'，6CH 是 'l'，推测这就是 flag 的 ASCII 码值。





2、有空的同学可以直接翻 ASCII 码表，翻译出 flag，懒的同学可以继续看。

3、不想查表的话也可以直接到系统栈里面去看，这就需要用到 OD。先下一个断点，然后单步运行，看看栈中的变化。
...]]></description><category></category></item><item><title><![CDATA[[LeetCode] 905. Sort Array By Parity]]></title><link>https://blog.csdn.net/Selukwe/article/details/88383188</link><guid>https://blog.csdn.net/Selukwe/article/details/88383188</guid><author>Selukwe</author><pubDate>Sun, 10 Mar 2019 20:19:44 +0800</pubDate><description><![CDATA[题目链接：Sort Array By Parity

解题思路：偶数放在左边，奇数放在后边


class Solution {
public:
    vector&amp;lt;int&amp;gt; sortArrayByParity(vector&amp;lt;int&amp;gt;&amp;amp; A) {
        vector&amp;lt;int&amp;gt; relt(A.size(), 0);
        int l ...]]></description><category></category></item><item><title><![CDATA[[LeetCode] 977. Squares of a Sorted Array]]></title><link>https://blog.csdn.net/Selukwe/article/details/88383017</link><guid>https://blog.csdn.net/Selukwe/article/details/88383017</guid><author>Selukwe</author><pubDate>Sun, 10 Mar 2019 20:08:47 +0800</pubDate><description><![CDATA[题目链接：Squares of a Sorted Array

解题思路：

两种方法，一种是暴力，先求平方再排序；另一种稍微改进，每次从两边找绝对值较大的那个数，求平方。



法一：


class Solution {
public:
    vector&amp;lt;int&amp;gt; sortedSquares(vector&amp;lt;int&amp;gt;&amp;amp; A) {
        for (i...]]></description><category></category></item><item><title><![CDATA[[LeetCode] 7. Reverse Integer]]></title><link>https://blog.csdn.net/Selukwe/article/details/88256109</link><guid>https://blog.csdn.net/Selukwe/article/details/88256109</guid><author>Selukwe</author><pubDate>Wed, 06 Mar 2019 21:03:51 +0800</pubDate><description><![CDATA[题目链接：7. Reverse Integer

解题思路：

首先要知道 int 类型的范围是： -2^31~ 2^31- 1。也就是： -2147483648 ~ +2147483647，超出这个范围可以直接放回 0；
	后续对数字取绝对值，所以用 flag 来记录这是正数还是负数；
	在乘以 10 之前先判断会不会溢出了，会的话返回 0；

class Solution {
public...]]></description><category></category></item><item><title><![CDATA[[LeetCode] 595. Big Countries（SQL）]]></title><link>https://blog.csdn.net/Selukwe/article/details/88240795</link><guid>https://blog.csdn.net/Selukwe/article/details/88240795</guid><author>Selukwe</author><pubDate>Wed, 06 Mar 2019 16:18:14 +0800</pubDate><description><![CDATA[题目链接：595. Big Countries




# Write your MySQL query statement below
SELECT name, population, area FROM World WHERE area&amp;gt;=3000000 OR population&amp;gt;=25000000;


]]></description><category></category></item><item><title><![CDATA[[LeetCode] 961. N-Repeated Element in Size 2N Array]]></title><link>https://blog.csdn.net/Selukwe/article/details/88226108</link><guid>https://blog.csdn.net/Selukwe/article/details/88226108</guid><author>Selukwe</author><pubDate>Wed, 06 Mar 2019 11:30:32 +0800</pubDate><description><![CDATA[题目链接：N-Repeated Element in Size 2N Array

解题思路：插入前判断是否已经存在，存在的话马上可以跳出循环，输出结果。


class Solution {
public:
    int repeatedNTimes(vector&amp;lt;int&amp;gt;&amp;amp; A) {
        unordered_set&amp;lt;int&amp;gt; table;
    ...]]></description><category></category></item><item><title><![CDATA[[LeetCode] 804. Unique Morse Code Words（map）]]></title><link>https://blog.csdn.net/Selukwe/article/details/88194100</link><guid>https://blog.csdn.net/Selukwe/article/details/88194100</guid><author>Selukwe</author><pubDate>Tue, 05 Mar 2019 18:08:27 +0800</pubDate><description><![CDATA[题目链接：804. Unique Morse Code Words

解题思路：没什么技巧，构造 map 作为密码字典，生成的摩斯密码插入到一个 unordered_set 中，因为元素具有唯一性，所以可以直接求个数。


class Solution {
public:
    int uniqueMorseRepresentations(vector&amp;lt;string&amp;gt;&amp;amp; wo...]]></description><category></category></item><item><title><![CDATA[[LeetCode] 929. Unique Email Addresses]]></title><link>https://blog.csdn.net/Selukwe/article/details/88184599</link><guid>https://blog.csdn.net/Selukwe/article/details/88184599</guid><author>Selukwe</author><pubDate>Tue, 05 Mar 2019 16:02:33 +0800</pubDate><description><![CDATA[题目链接：929. Unique Email Addresses



解题思路：

对 C++ STL 还是菜鸟级别，直接看了 Discuss大佬们的操作，发现了个不错的代码，拿来学一下。



笔记：

1、unordered_set 是一种无序哈希表，键值不可修改，但可以删除和插入；

2、关于 string::find，返回的是第一个匹配到的字符位置，类型是 size_t（一种无符...]]></description><category></category></item><item><title><![CDATA[C++ STL unordered_set]]></title><link>https://blog.csdn.net/Selukwe/article/details/88121664</link><guid>https://blog.csdn.net/Selukwe/article/details/88121664</guid><author>Selukwe</author><pubDate>Mon, 04 Mar 2019 16:09:39 +0800</pubDate><description><![CDATA[template &amp;amp;amp;lt; class Key,                              // unordered_set::key_type/value_type
		   class Hash = hash&amp;amp;amp;lt;Key&amp;amp;amp;gt;,                 // unordered_set::hasher
		   class Pred = equal_to&amp;amp;amp;lt;Ke...]]></description><category></category></item><item><title><![CDATA[[C/C++] 算法训练 阶乘末尾]]></title><link>https://blog.csdn.net/Selukwe/article/details/78821647</link><guid>https://blog.csdn.net/Selukwe/article/details/78821647</guid><author>Selukwe</author><pubDate>Sat, 16 Dec 2017 19:50:17 +0800</pubDate><description><![CDATA[问题描述
　　给定n和len，输出n!末尾len位。
输入格式
　　一行两个正整数n和len。
输出格式
　　一行一个字符串，表示答案。长度不足用前置零补全。
样例输入
6 5
样例输出
00720
数据规模和约定
　　n<=30, len<=10。#include <iostream>
#include <string.h>
using namespace std;int main ()
{]]></description><category></category></item><item><title><![CDATA[[C/C++] 算法提高 5-3日历]]></title><link>https://blog.csdn.net/Selukwe/article/details/78579985</link><guid>https://blog.csdn.net/Selukwe/article/details/78579985</guid><author>Selukwe</author><pubDate>Mon, 20 Nov 2017 10:43:51 +0800</pubDate><description><![CDATA[问题描述
　　已知2007年1月1日为星期一。设计一函数按照下述格式打印2007年以后（含）某年某月的日历，2007年以前的拒绝打印。为完成此函数，设计必要的辅助函数也是必要的。
样例输入
一个满足题目要求的输入范例。
例：2050 3
样例输出
与上面的样例输入对应的输出。
例：思路： 
主要就是找出那个月1号是星期几，就可以输出日历了。#include <iostream>
#include <]]></description><category></category></item><item><title><![CDATA[[C/C++] 算法训练 字串统计]]></title><link>https://blog.csdn.net/Selukwe/article/details/78579684</link><guid>https://blog.csdn.net/Selukwe/article/details/78579684</guid><author>Selukwe</author><pubDate>Mon, 20 Nov 2017 10:19:15 +0800</pubDate><description><![CDATA[问题描述
　　给定一个长度为n的字符串S，还有一个数字L，统计长度大于等于L的出现次数最多的子串（不同的出现可以相交），如果有多个，输出最长的，如果仍然有多个，输出第一次出现最早的。
输入格式
　　第一行一个数字L。
　　第二行是字符串S。
　　L大于0，且不超过S的长度。
输出格式
　　一行，题目要求的字符串。　　输入样例1：
　　4
　　bbaabbaaaaa　　输出样例1：
　　bbaa　　输]]></description><category></category></item><item><title><![CDATA[[C/C++] 算法提高 不同单词个数统计]]></title><link>https://blog.csdn.net/Selukwe/article/details/78577929</link><guid>https://blog.csdn.net/Selukwe/article/details/78577929</guid><author>Selukwe</author><pubDate>Sun, 19 Nov 2017 22:34:06 +0800</pubDate><description><![CDATA[问题描述
　　编写一个程序，输入一个句子，然后统计出这个句子当中不同的单词个数。例如：对于句子“one little two little three little boys”，总共有5个不同的单词：one, little, two, three, boys。
　　说明：
　　（1）由于句子当中包含有空格，所以应该用gets函数来输入这个句子；
　　（2）输入的句子当中只包含英文字符和空格，单词之间]]></description><category></category></item><item><title><![CDATA[[C/C++] 算法提高 质因数]]></title><link>https://blog.csdn.net/Selukwe/article/details/78546279</link><guid>https://blog.csdn.net/Selukwe/article/details/78546279</guid><author>Selukwe</author><pubDate>Wed, 15 Nov 2017 23:23:40 +0800</pubDate><description><![CDATA[将一个正整数N(1#include <iostream>
using namespace std;int main ()
{
    int a;
    int sum = 1;
    int i = 1;    // 设置一个标志，判断是不是第一个数字。是的话不用输出*号。 
    int flag = 1;    cin >> a;
    cout << a << "=";    int]]></description><category></category></item></channel></rss>