小专栏地址sass
公司每一年的6月份会举办一场夺旗大赛,做为读书会的小组成员。我就负责出了一份比较简单的iOS题bash
base64解码获得2383214142
经过手机键盘-九宫格获得
答案 CVAGH
复制代码
@interface MyAccount : NSObject
@property (nonatomic, copy) NSString *flag;
@end
@implementation MyAccount
@end
复制代码
一、.m文件实现NSCoding协议,补充代码以下
#import "MyAccount.h"
@interface MyAccount()<NSCoding>
@end
@implementation MyAccount
- (void)encodeWithCoder:(NSCoder *)aCoder{
[aCoder encodeObject:self.flag forKey:@"flag"];
}
- (id)initWithCoder:(NSCoder *)decoder {
if (self = [super init]) {
_flag = [decoder decodeObjectForKey:@"flag"];
}
return self;
}
@end
二、导入data包,NSKeyedUnarchiver解档对象,获得flag: c2h1aXJ1aWtlamljdGY=
NSString *dataFile = [[NSBundle mainBundle]pathForResource:@"data" ofType:@"asd"];
MyAccount *model = [NSKeyedUnarchiver unarchiveObjectWithFile:dataFile];
NSLog(@"dataFile = %@",model.flag);
三、使用base64解码获得
答案: shuiruikejictf
复制代码
使用Hopper Disassembler工具反编译
以下图读取到
flag = U2FsdGVkX18wjamzHeMlywW3nE/EPSImPYlN25ihcf0=
decode = shurui
使用AES 解密(密钥shurui)
答案:flag = asdxczcsa
复制代码